Dieses Mal werde ich Ihnen Pandas + Dataframe vorstellen, um Zeilen- und Spaltenauswahl- und Slicing-Operationen zu implementieren. Was sind die Vorsichtsmaßnahmen für Pandas + Dataframe, um Zeilen- und Spaltenauswahl- und Slicing-Operationen zu implementieren? Praktischer Fall, werfen wir einen Blick darauf.
Die Auswahl in SQL basiert auf dem Namen der Spalte; Pandas ist flexibler. Sie kann nicht nur basierend auf dem Spaltennamen, sondern auch basierend auf derPosition (Nummer) ausgewählt werden , in welcher Position Zeile und Spalte, bitte beachten Sie, dass die Position der Pandas-Zeilen und -Spalten bei 0 beginnt). Die zugehörigen -Funktionen lauten wie folgt:
1) loc, basierend auf der Spaltenbezeichnung, bestimmte Zeilen können ausgewählt werden (basierend auf dem Zeilenindex); 2) iloc, basierend auf der Zeilen-/Spaltenposition ;3) at, schnell die Elemente von DataFrame entsprechend dem angegebenen Zeilenindex und der Spaltenbezeichnung finden 4) iat, ähnlich wie at, außer dass es wird entsprechend der Position positioniert; 5) ix, eine Mischung aus loc und iloc, unterstützt sowohl Label als auch Position; >Falsche Darstellung:
import pandas as pd import numpy as np df = pd.DataFrame({'total_bill': [16.99, 10.34, 23.68, 23.68, 24.59], 'tip': [1.01, 1.66, 3.50, 3.31, 3.61], 'sex': ['Female', 'Male', 'Male', 'Male', 'Female']}) # data type of columns print df.dtypes # indexes print df.index # return pandas.Index print df.columns # each row, return array[array] print df.values print df
sex object tip float64 total_bill float64 dtype: object RangeIndex(start=0, stop=5, step=1) Index([u'sex', u'tip', u'total_bill'], dtype='object') [['Female' 1.01 16.99] ['Male' 1.66 10.34] ['Male' 3.5 23.68] ['Male' 3.31 23.68] ['Female' 3.61 24.59]] sex tip total_bill 0 Female 1.01 16.99 1 Male 1.66 10.34 2 Male 3.50 23.68 3 Male 3.31 23.68 4 Female 3.61 24.59
print df.loc[1:3, ['total_bill', 'tip']] print df.loc[1:3, 'tip': 'total_bill'] print df.iloc[1:3, [1, 2]] print df.iloc[1:3, 1: 3]
total_bill tip 1 10.34 1.66 2 23.68 3.50 3 23.68 3.31 tip total_bill 1 1.66 10.34 2 3.50 23.68 3 3.31 23.68 tip total_bill 1 1.66 10.34 2 3.50 23.68 tip total_bill 1 1.66 10.34 2 3.50 23.68
print df.loc[1:3, [2, 3]]#.loc仅支持列名操作
KeyError: 'None of [[2, 3]] are in the [columns]'
print df.loc[[2, 3]]#.loc可以不加列名,则是行选择
sex tip total_bill 2 Male 3.50 23.68 3 Male 3.31 23.68
print df.iloc[1:3]#.iloc可以不加第几列,则是行选择
sex tip total_bill 1 Male 1.66 10.34 2 Male 3.50 23.68
print df.iloc[1:3, 'tip': 'total_bill']
TypeError: cannot do slice indexing on <class 'pandas.indexes.base.Index'> with these indexers [tip] of <type 'str'>
print df.at[3, 'tip'] print df.iat[3, 1] print df.ix[1:3, [1, 2]] print df.ix[1:3, ['total_bill', 'tip']]
3.31 3.31 tip total_bill 1 1.66 10.34 2 3.50 23.68 3 3.31 23.68 total_bill tip 1 10.34 1.66 2 23.68 3.50 3 23.68 3.31
print df.ix[[1, 2]]#行选择
sex tip total_bill 1 Male 1.66 10.34 2 Male 3.50 23.68
print df[1: 3] print df[['total_bill', 'tip']] # print df[1:2, ['total_bill', 'tip']] # TypeError: unhashable type
sex tip total_bill 1 Male 1.66 10.34 2 Male 3.50 23.68 total_bill tip 0 16.99 1.01 1 10.34 1.66 2 23.68 3.50 3 23.68 3.31 4 24.59 3.61
print df[1:3,1:2]
TypeError: unhashable type
Was sind die Methoden der Dataframe-Abfrage in Pandas?
Selenium+Cookie überspringt die Implementierung des Bestätigungscodes Detaillierte Erklärung der Schritte
Das obige ist der detaillierte Inhalt vonpandas+dataframe implementiert Zeilen- und Spaltenauswahl- und Slicing-Vorgänge. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!