Heim >Backend-Entwicklung >Python-Tutorial >pandas+dataframe implementiert Zeilen- und Spaltenauswahl- und Slicing-Vorgänge

pandas+dataframe implementiert Zeilen- und Spaltenauswahl- und Slicing-Vorgänge

php中世界最好的语言
php中世界最好的语言Original
2018-04-12 09:57:354632Durchsuche

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 der

Position (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 &#39;pandas.indexes.base.Index&#39;> with these indexers [tip] of <type &#39;str&#39;>
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
Ich glaube dir Ich habe es gemeistert, nachdem ich den Fall in diesem Artikel gelesen habe. Weitere spannende Methoden finden Sie in anderen verwandten Artikeln auf der chinesischen PHP-Website!
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]
Empfohlene Lektüre:
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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn