Tuo CSV-tietoja käyttämällä Pandas.read_csv ()

Sisällysluettelo:

Anonim

Tässä opetusohjelmassa opit:

  • Tuo CSV
  • Groupby

Tuo CSV

TensorFlow-opetusohjelman aikana käytät aikuisten tietojoukkoa. Sitä käytetään usein luokitustehtävissä. Se on saatavilla tästä URL-osoitteesta https://archive.ics.uci.edu/ml/machine-learning-databases/adult/adult.data

Tiedot tallennetaan CSV-muodossa. Tämä tietojoukko sisältää kahdeksan kategorista muuttujaa:

Tämä tietojoukko sisältää kahdeksan kategorista muuttujaa:

  • työluokka
  • koulutus
  • avioliitto
  • ammatti
  • suhde
  • rotu
  • sukupuoli
  • Kotimaa

lisäksi kuusi jatkuvaa muuttujaa:

  • ikä
  • fnlwgt
  • koulutus_num
  • myyntivoitto
  • pääoman menetys

tuntia viikkoa

Voit tuoda CSV-tietojoukon käyttämällä objektia pd.read_csv (). Perusargumentti sisällä on:

Syntaksi:

pandas.read_csv(filepath_or_buffer,sep=', ',`names=None`,`index_col=None`,`skipinitialspace=False`)
  • filepath_or_buffer: Polku tai URL-osoite tietojen kanssa
  • sep = ',': Määritä käytettävä erotin
  • `nimet = Ei mitään: Nimeä sarakkeet. Jos tietojoukossa on kymmenen saraketta, sinun on annettava kymmenen nimeä
  • `index_col = Ei mitään: Jos kyllä, ensimmäistä saraketta käytetään riviindeksinä
  • `skipinitialspace = False`: Ohita välilyönnit erotimen jälkeen.

Lisätietoja readcsv: stä () on virallisissa asiakirjoissa

https://pandas.pydata.org/pandas-docs/stable/generated/pandas.read_csv.html.

Harkitse seuraavaa esimerkkiä

## Import csvimport pandas as pd## Define path dataCOLUMNS = ['age','workclass', 'fnlwgt', 'education', 'education_num', 'marital','occupation', 'relationship', 'race', 'sex', 'capital_gain', 'capital_loss','hours_week', 'native_country', 'label']PATH = "https://archive.ics.uci.edu/ml/machine-learning-databases/adult/adult.data"df_train = pd.read_csv(PATH,skipinitialspace=True,names = COLUMNS,index_col=False)df_train.shape

Tuotos:

(32561, 15)

Groupby

Helppo tapa nähdä tiedot on käyttää ryhmätapa-menetelmää. Tämä menetelmä voi auttaa sinua tiivistämään tiedot ryhmittäin. Alla on luettelo ryhmätyön käytettävissä olevista menetelmistä:

  • count: count
  • min: min
  • max: max
  • tarkoittaa: tarkoittaa
  • mediaani: mediaani
  • keskihajonta: sdt
  • jne

Groupby (): n sisällä voit käyttää saraketta, johon haluat soveltaa menetelmää.

Katsotaanpa yksi ryhmittely aikuisten tietojoukon kanssa. Saat kaikkien jatkuvien muuttujien keskiarvon tulotyypin mukaan, eli yli 50 000 tai alle 50 000

df_train.groupby(['label']).mean() 
ikä fnlwgt koulutus_num myyntivoitto pääoman menetys tuntia viikkoa
etiketti
<= 50 kt 36,783738 190340,86517 9,595065 148,752468 53.142921 38,840210
> 50 kt 44.249841 188005,00000 11.611657 4006.142456 195,001530 45,473026

Voit saada ikärajan kotitalouden tyypin mukaan

df_train.groupby (['label']) ['ikä']. min ()

label<=50K 17>50K 19Name: age, dtype: int64 

Voit myös ryhmitellä useita sarakkeita. Voit esimerkiksi saada suurimman pääoman voiton kotitalouden tyypin ja siviilisäädyn mukaan.

df_train.groupby(['label', 'marital'])['capital_gain'].max()label marital<=50K Divorced 34095Married-AF-spouse 2653Married-civ-spouse 41310Married-spouse-absent 6849Never-married 34095Separated 7443Widowed 6849>50K Divorced 99999Married-AF-spouse 7298Married-civ-spouse 99999Married-spouse-absent 99999Never-married 99999Separated 99999Widowed 99999Name: capital_gain, dtype: int64

Voit luoda juoni ryhmäkohtaisesti. Yksi tapa tehdä se on käyttää juoni ryhmittelyn jälkeen.

Erinomaisen kuvaajan luomiseksi käytetään unstackia () keskiarvon () jälkeen, jotta sinulla on sama monitasoinen indeksi, tai liität arvot tuloilla, jotka ovat alle 50 kt ja yli 50 000. Tässä tapauksessa juonessa on kaksi ryhmää 14: n (2 * 7) sijaan.

Jos käytät Jupyter Notebookia, muista lisätä% matplotlib inline, muuten juonia ei näytetä

%matplotlib inlinedf_plot = df_train.groupby(['label', 'marital'])['capital_gain'].mean().unstack()df_plot