Importer CSV-data ved hjelp av Pandas.read_csv ()

Innholdsfortegnelse:

Anonim

I denne opplæringen lærer du:

  • Importer CSV
  • Gruppe av

Importer CSV

Under TensorFlow-opplæringen vil du bruke voksendatasettet. Det brukes ofte med klassifiseringsoppgave. Den er tilgjengelig i denne URL-en https://archive.ics.uci.edu/ml/machine-learning-databases/adult/adult.data

Dataene lagres i CSV-format. Dette datasettet inneholder åtte kategoriske variabler:

Dette datasettet inneholder åtte kategoriske variabler:

  • arbeidsklasse
  • utdanning
  • ekteskapelig
  • okkupasjon
  • forhold
  • løp
  • kjønn
  • hjemland

dessuten seks kontinuerlige variabler:

  • alder
  • fnlwgt
  • utdanning_nummer
  • kapital_gevinst
  • kapital_tap

times_uke

For å importere et CSV-datasett, kan du bruke objektet pd.read_csv (). Det grunnleggende argumentet inni er:

Syntaks:

pandas.read_csv(filepath_or_buffer,sep=', ',`names=None`,`index_col=None`,`skipinitialspace=False`)
  • filepath_or_buffer: Sti eller URL med dataene
  • sep = ',': Definer avgrenseren som skal brukes
  • `names = None ': Navngi kolonnene. Hvis datasettet har ti kolonner, må du sende ti navn
  • `index_col = Ingen ': Hvis ja, brukes den første kolonnen som en radindeks
  • `skipinitialspace = False`: Hopp mellomrom etter skilletegn.

For mer informasjon om readcsv (), vennligst sjekk den offisielle dokumentasjonen

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

Tenk på følgende eksempel

## 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

Produksjon:

(32561, 15)

Gruppe av

En enkel måte å se dataene på er å bruke groupby-metoden. Denne metoden kan hjelpe deg med å oppsummere dataene etter gruppe. Nedenfor er en liste over metoder som er tilgjengelige med groupby:

  • telle: telle
  • min: min
  • maks: maks
  • mener: mener
  • median: median
  • standardavvik: sdt
  • etc

Inside groupby () kan du bruke kolonnen du vil bruke metoden.

La oss ta en titt på en enkelt gruppering med datasettet for voksne. Du får gjennomsnittet av alle kontinuerlige variabler etter inntektstype, dvs. over 50 000 eller under 50 000

df_train.groupby(['label']).mean() 
alder fnlwgt utdanning_nummer kapital_gevinst kapital_tap times_uke
merkelapp
<= 50K 36,783738 190340.86517 9.595065 148,752468 53,142921 38.840210
> 50K 44.249841 188005.00000 11.611657 4006.142456 195.001530 45.473026

Du kan oppnå minimumsalderen etter husstandstype

df_train.groupby (['label']) ['age']. min ()

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

Du kan også gruppere etter flere kolonner. For eksempel kan du få maksimal gevinst i henhold til husholdningstype og sivilstand.

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

Du kan opprette et plot etter groupby. En måte å gjøre det på er å bruke et plott etter grupperingen.

For å lage et mer utmerket plot, vil du bruke unstack () etter middel () slik at du har samme flernivåindeks, eller du slutter deg til verdiene ved inntekt lavere enn 50k og over 50k. I dette tilfellet vil plottet ha to grupper i stedet for 14 (2 * 7).

Hvis du bruker Jupyter Notebook, må du sørge for å legge til% matplotlib inline, ellers vil ingen plott vises

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