DataFrame von Pandas ist gut für den Umgang mit strukturierten Daten! (Ich habe es tatsächlich in einem datenwissenschaftlichen Buch gelesen, das ich in einem Buchladen durchgesehen habe). Ich möchte ein Memo als Memorandum für Super-Anfänger hinterlassen.
Python3.6.10 pandas-1.0.1 Jupyter notebook
Es gab nichts Schwieriges ...
pip install pandas
Da die Daten, die ich dieses Mal verarbeiten möchte, im CSV-Format vorliegen, lese ich die CSV-Datei. Nach ein wenig Recherche fand ich heraus, dass Pandas zwei Datenstrukturen hat, Series und DataFrame, und es scheint, dass Series eindimensionalen Daten und DataFrame zweidimensionalen Daten entspricht (da Series und DataFrame nicht gut verstanden werden). Ich wünschte, ich könnte wieder studieren und einen weiteren Artikel schreiben.
Vorerst möchte ich die CSV-Daten als DataFrame lesen.
python
import pandas as pd
pd.read_csv('Datenweg',header = None)
Ich habe read_csv () verwendet, weil ich eine CSV-Datei mit einem Komma-Trennzeichen lesen wollte. Wenn das Trennzeichen eine Registerkarte (\ t) ist, kann stattdessen read_table () verwendet werden.
Da die zu lesende CSV-Datei keine Überschriftenzeile enthält, wird für den Header "Keine" angegeben.
Die tatsächlich gelesenen Daten wurden auf dem Jupiter angezeigt (siehe Abbildung unten ↓)
Formatieren Sie die gelesenen Daten wie folgt ・ Die 0. Spalte ist nicht erforderlich. Löschen Sie sie daher. ・ Legen Sie die erste Spalte als Index fest (Überschriftenspalte)
Schneiden Sie nur die 0. Spalte in der Scheibe ab.
In Series und DataFrame können Sie eine Zeichenfolge im Index oder einen (beliebigen) numerischen Wert angeben. Um Verwirrung bei der Angabe eines numerischen Werts für einen Index zu vermeiden, greifen Sie insbesondere mit Indexattributen wie iloc und loc auf die Daten zu.
Dieses Mal (vorerst) stimmt der DataFrame-Index sowohl in Zeilen als auch in Spalten mit dem Python-Index überein, sodass Sie mit iloc oder loc dasselbe Ergebnis erzielen können. Die 0. Zeile der Daten wurde wie folgt abgeschnitten (nur die 1. und nachfolgende Zeile wurden extrahiert)
python
#Laden Sie csv
df = pd.read_csv('Data/test231.csv',header = None)
#Scheibe
df.iloc[:,1:]
Tatsächliche Ausgabe ↓
Im Vergleich zum vorherigen Bild hat sich die Anzahl der Spalten von 170 auf 169 geändert, und es kann bestätigt werden, dass nur die erste Spalte reduziert wird.
In pandas DataFrame werden Zeilenüberschriften anscheinend als Indizes und Spaltenüberschriften als Spalten bezeichnet.
Auf diese Weise kann die Spalte "1" in der obigen Abbildung für den Index angegeben werden.
python
#Scheibe
sliced_df = df.iloc[:,1:]
#Name ist"1"Geben Sie die Spalte von an
sliced_df.set_index(1)
Ich konnte wie folgt ausführen
Als nächstes möchte ich einen Artikel als Memorandum of Record erstellen, in dem der Name der Spalte geändert und diese Tabelle als hierarchische Daten verarbeitet wird.
Recommended Posts