Gelegentlich ist der Inhalt des Schreibens von Code richtig. Es hat viel Zeit gekostet, bei der Angabe des Datenrahmens in Pandas verwirrt zu werden. Ich würde es gerne organisieren. Es ist eine Zusammenstellung von Pandas-Anfängern. Wenn Sie also einen Fehler machen oder eine bessere Zusammenfassung haben, geben Sie mir bitte einen Rat.
Klicken Sie hier für den Blog, der betrieben wird: Aufwand 1 mm
Jede Version ist wie folgt.
pandas (0.18.1)
numpy (1.11.0)
Python 2.7.10
Es gibt drei Möglichkeiten, Elemente in Pandas DataFrame anzugeben.
Der vorausgesetzte DataFrame wurde mit dem folgenden Code unter Bezugnahme auf 10minites to pandas erstellt.
dates = pd.date_range('20130101', periods=6) df = pd.DataFrame(np.random.randn(6,4), index=dates, columns=list('ABCD'))
Der resultierende DataFrame sieht folgendermaßen aus.
A B C D
2013-01-01 -0.682002 1.977886 0.348623 0.405755
2013-01-02 0.085698 2.067378 -0.356269 1.349520
2013-01-03 0.058207 -0.539280 0.023205 1.154293
2013-01-04 -0.319075 1.174168 -1.282305 0.359333
2013-01-05 -2.557677 0.922672 0.202042 0.171645
2013-01-06 1.039422 0.300340 0.701594 -0.229087
Es scheint, dass es mit der angegebenen Methode in Zeilen- oder Spaltenrichtung verarbeitet werden kann.
#Geben Sie eine einzelne Spalte an
df[‘A’] #Spaltenname=Geben Sie A an
df.A #Das gleiche wie oben
#Zeilenrichtungsscheibe: df[ 0:3 ]
df[0:3] #Geben Sie von Zeile 0 bis Zeile 3 an
df[‘20130102’:’20130104’] #Index ist 2013-01-02~2013-01-Geben Sie bis 04 an
Das erste der angegebenen Argumente (darf ich es nennen?) Ist die Operation für den Index und das zweite die Operation für die Spalte.
#Holen Sie sich den entsprechenden Index
# A 0.469112
# B -0.282863
# C -1.509059
# D -1.135632
# Name: 2013-01-01 00:00:00, dtype: float64
df.loc[dates[0]]
#Geben Sie gleichzeitig die Indexspalte an.
# A B
# 2013-01-01 0.469112 -0.282863
# 2013-01-02 1.212112 -0.173215
# 2013-01-03 -0.861849 -2.104569
# 2013-01-04 0.721555 -0.706771
# 2013-01-05 -0.424972 0.567020
# 2013-01-06 -0.673690 0.113648
df.loc[:, [‘A’, ‘B’]]
#Index nach Indexname abrufen
# A B
# 2013-01-02 1.212112 -0.173215
# 2013-01-03 -0.861849 -2.104569
# 2013-01-04 0.721555 -0.706771
df.loc[‘20130102’:’20130104’, [‘A’, ‘B’]] #Wenn Sie mehrere Spalten angeben, übergeben Sie diese als Liste
#Wenn Sie nur eine angeben möchten, ist die Verwendung bei at schneller als bei loc
#0.46911229990718628
df.at[dates[0],'A']
Festlegen der Position des Elements beim Ersetzen durch eine Matrix. Natürlich können Sie mehrere auswählen.
#Angegeben durch Indexposition (diesmal 3. Zeile)
# A 0.721555
# B -0.706771
# C -1.039575
# D 0.271860
# Name: 2013-01-04 00:00:00, dtype: float64
df.iloc[3]
#Index/Gleichzeitige Angabe von Spalten(Hier 3. bis 4. Zeile, 0. bis 1. Spalte)
# A B
#2013-01-04 0.721555 -0.706771
#2013-01-05 -0.424972 0.567020
df.iloc[3:5,0:2]
#Geben Sie bestimmte Elemente an, die übersprungen werden
# A C
# 2013-01-02 1.212112 0.119209
# 2013-01-03 -0.861849 -0.494929
# 2013-01-05 -0.424972 0.276232
df.iloc[[1,2,4],[0,2]]
Ich habe keine andere Wahl, als mich daran zu gewöhnen!
Klicken Sie hier für den Blog, der betrieben wird: Aufwand 1 mm
Recommended Posts