Importieren Sie CSV-Daten mit Pandas.read_csv ()

Inhaltsverzeichnis:

Anonim

In diesem Tutorial lernen Sie:

  • CSV importieren
  • Gruppiere nach

CSV importieren

Während des TensorFlow-Tutorials verwenden Sie den Datensatz für Erwachsene. Es wird häufig bei Klassifizierungsaufgaben verwendet. Es ist unter dieser URL https://archive.ics.uci.edu/ml/machine-learning-databases/adult/adult.data verfügbar

Die Daten werden in einem CSV-Format gespeichert. Dieser Datensatz enthält acht kategoriale Variablen:

Dieser Datensatz enthält acht kategoriale Variablen:

  • Arbeiterklasse
  • Bildung
  • ehelich
  • Besetzung
  • Beziehung
  • Rennen
  • Sex
  • Heimatland

Darüber hinaus sechs kontinuierliche Variablen:

  • Alter
  • fnlwgt
  • education_num
  • Wertzuwachs
  • Kapitalverlust

Stunden_Woche

Zum Importieren eines CSV-Datasets können Sie das Objekt pd.read_csv () verwenden. Das grundlegende Argument darin ist:

Syntax:

pandas.read_csv(filepath_or_buffer,sep=', ',`names=None`,`index_col=None`,`skipinitialspace=False`)
  • filepath_or_buffer: Pfad oder URL mit den Daten
  • sep = ',': Definieren Sie das zu verwendende Trennzeichen
  • `names = None`: Benennen Sie die Spalten. Wenn das Dataset zehn Spalten enthält, müssen Sie zehn Namen übergeben
  • `index_col = None`: Wenn ja, wird die erste Spalte als Zeilenindex verwendet
  • `skipinitialspace = False`: Leerzeichen nach dem Trennzeichen überspringen.

Weitere Informationen zu readcsv () finden Sie in der offiziellen Dokumentation

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

Betrachten Sie das folgende Beispiel

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

Ausgabe:

(32561, 15)

Gruppiere nach

Eine einfache Möglichkeit, die Daten anzuzeigen, ist die Verwendung der groupby-Methode. Diese Methode kann Ihnen helfen, die Daten nach Gruppen zusammenzufassen. Unten finden Sie eine Liste der mit groupby verfügbaren Methoden:

  • count: count
  • min: min
  • max: max
  • Mittelwert: Mittelwert
  • Median: Median
  • Standardabweichung: sdt
  • usw

In groupby () können Sie die Spalte verwenden, in der Sie die Methode anwenden möchten.

Schauen wir uns eine einzelne Gruppierung mit dem Datensatz für Erwachsene an. Sie erhalten den Mittelwert aller kontinuierlichen Variablen nach Umsatzart, dh über 50.000 oder unter 50.000

df_train.groupby(['label']).mean() 
Alter fnlwgt education_num Wertzuwachs Kapitalverlust Stunden_Woche
Etikette
<= 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

Sie können das Mindestalter nach Haushaltstyp ermitteln

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

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

Sie können auch nach mehreren Spalten gruppieren. Zum Beispiel können Sie den maximalen Kapitalgewinn je nach Haushaltstyp und Familienstand erzielen.

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

Sie können nach groupby ein Diagramm erstellen. Eine Möglichkeit besteht darin, nach der Gruppierung ein Diagramm zu verwenden.

Um ein besseres Diagramm zu erstellen, verwenden Sie unstack () nach mean (), sodass Sie denselben mehrstufigen Index haben, oder Sie verbinden die Werte mit Einnahmen von weniger als 50.000 und mehr als 50.000. In diesem Fall hat der Plot zwei Gruppen anstelle von 14 (2 * 7).

Wenn Sie Jupyter Notebook verwenden, stellen Sie sicher, dass Sie% matplotlib inline hinzufügen. Andernfalls wird kein Plot angezeigt

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