In [ ]:
Dies ist mein Lerndokument zur Erkundung der Möglichkeiten, welche mir mit der Hilfe von Python zur Erkundung von Datensätzen zur verfühung steht. Dabei nutzen wir pandas und numpy als unsere hauptsächlichen Werkzeuge.
Hierbei importieren wir diese Librarys und geben ihnen Abkürzungen, damit wir sie später wieder aufrufen können.
In [1]:
import pandas as pd
import numpy as np
In [2]:
raw_data = {'first_name': ['Jason','Molly','Tina'],
'last_name': ['Miller','Jacobsen','.'],
'age':['42','23','79'],
'score':['104','108','120']}
Nun müssen wir die verschieden Spalten der Tabelle beschriften. Dies erreichen wir mit den nachfolgenden Befehl. Dabei erstellen wir eine List mit verschiedenen Strings, welche in der Reihenfolge der Spalten angegeben wird.
In [3]:
df = pd.DataFrame(raw_data, columns = ['first_name','last_name','age','score'])
df
Out[3]:
Dieses DataFrame müssen wir nun in ein CSV Dokument umwandeln und speicher. Dafür nutzen wir den Befehl df.to_csv Dadurch speichern wir die Tabelle in eine Dokument und exportieren es in den angegebenen Dateipfad.
In [4]:
df.to_csv('/Users/kay/Downloads/pandas-cookbook-master-2/data/test.csv')
In [5]:
df = pd.read_csv('/Users/kay/Downloads/pandas-cookbook-master-2/data/test.csv')
df
Out[5]:
Wollen wir nun den Header entfallen lassen, so ist dies ohne weiteres möglich, dazu müssen wir nur das Argument header=None anhängen. Dadurch wird die oberste Zeile aber mit entsprechenden Kennziffern der Spalten ersetzt, welches eine eindeutige Identifikation einer jeden Zelle ermöglicht.
In [6]:
df = pd.read_csv('/Users/kay/Downloads/pandas-cookbook-master-2/data/test.csv', header=None)
df
Out[6]:
Wollen wir nun unsere eigene Spaltenbezeichnung nutzen, so müssen wir den befehl weiter modifizieren. Dafür nutzen wir das Argument names=['stringa','stringb'] um die verschiedenen Strings als Namen zu übergeben. Dabei kann das Attribut zum wegfallen des Headers ausgelassen werden, da wir ja einen Header nutzen, dieses aber mit eigenen Werten ersetzen.
In [7]:
df = pd.read_csv('/Users/kay/Downloads/pandas-cookbook-master-2/data/test.csv' ,names=['UID','First Name','Last Name','Age','Score'])
df
Out[7]:
Nun wollen wir vielleicht die eingefügten Zahlen in der ersten Spalte der Tabelle ersetzen, und einen anderen Index nutzen. Dies ist möglich, wenn wir die index collumn nutzen. Das entsprechende Attribut dazu ist index_col='index'
In [8]:
df = pd.read_csv('/Users/kay/Downloads/pandas-cookbook-master-2/data/test.csv',index_col='UID' ,names=['UID','First Name','Last Name','Age','Score'])
df
Out[8]:
Nun erkennen wir, dass die eigentliche Indexspalte durch die UID ersetzt wurde. Es können aber auch mehrere Indexe genutzt werden. Dafür übergeben wir statt eines einzelnen Strings eine Liste von Strings. Wichtig dabei ist aber, dass wir die selbstbestimmten Namen nutzen, und nicht die eigentlichen Namen der Spalte, welche in der CSV Datei genutzt wurde.
In [9]:
df = pd.read_csv('/Users/kay/Downloads/pandas-cookbook-master-2/data/test.csv',index_col=['First Name','Last Name'] ,names=['UID','First Name','Last Name','Age','Score'])
df
Out[9]:
In [13]:
Out[13]:
In [ ]: