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中世界最好的语言
Freigeben: 2018-04-12 09:57:35
Original
4599 Leute haben es durchsucht

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
Nach dem Login kopieren
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
Nach dem Login kopieren
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]
Nach dem Login kopieren
  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
Nach dem Login kopieren

print df.loc[1:3, [2, 3]]#.loc仅支持列名操作
Nach dem Login kopieren
KeyError: 'None of [[2, 3]] are in the [columns]'
Nach dem Login kopieren
print df.loc[[2, 3]]#.loc可以不加列名,则是行选择
Nach dem Login kopieren
  sex  tip total_bill
2 Male 3.50    23.68
3 Male 3.31    23.68
Nach dem Login kopieren
print df.iloc[1:3]#.iloc可以不加第几列,则是行选择
Nach dem Login kopieren
sex  tip total_bill
1 Male 1.66    10.34
2 Male 3.50    23.68
Nach dem Login kopieren
print df.iloc[1:3, 'tip': 'total_bill']
Nach dem Login kopieren
TypeError: cannot do slice indexing on <class &#39;pandas.indexes.base.Index&#39;> with these indexers [tip] of <type &#39;str&#39;>
Nach dem Login kopieren
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']]
Nach dem Login kopieren
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
Nach dem Login kopieren
print df.ix[[1, 2]]#行选择
Nach dem Login kopieren
  sex  tip total_bill
1 Male 1.66    10.34
2 Male 3.50    23.68
Nach dem Login kopieren
print df[1: 3]
print df[['total_bill', 'tip']]
# print df[1:2, ['total_bill', 'tip']] # TypeError: unhashable type
Nach dem Login kopieren
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
Nach dem Login kopieren
print df[1:3,1:2]
Nach dem Login kopieren
Empfohlene Lektüre:
TypeError: unhashable type
Nach dem Login kopieren

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!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage