Skip to content

Pandas: Die ersten/letzten n Zeilen eines DataFrame mit head(), tail(), slice ermitteln

Python

Um die Daten von pandas.DataFrame und pandas.Series mit vielen Zeilen zu überprüfen, sind die Methoden head() und tail() nützlich, sterben die ersten und letzten n Zeilen zurückgeben.

Dieser Artikel hat folgenden Inhalt.

  • Holen Sie sich die ersten n Zeilen von DataFrame:head()
  • Holen Sie sich die letzten n Zeilen von DataFrame:tail()
  • Rufen Sie Zeilen ab, indem Sie Zeilennummern angeben: Slice
  • Holen Sie sich die Werte der ersten/letzten Zeile

Beachten Sie, dass eine andere Methode, sterben SIE verwenden can, um große pandas.DataFrame und pandas.Series zu überprüfen, sample() für Zufallsstichproben ist.

Verwenden Sie als Beispiel den Iris-Datensatz, der als Beispiel in Seaborn enthalten ist.

import pandas as pd
import seaborn as sns

df = sns.load_dataset("iris")
print(df.shape)
# (150, 5)

Das Beispiel gilt für pandas.DataFrame, aber pandas.Series hat auch head() und tail(). Die Verwendung ist für beide gleich.

Holen Sie sich die ersten n Zeilen von DataFrame:head()

Die Methode head() gibt die ersten n Zeilen zurück.

Standardmäßig werden die ersten 5 Zeilen zurückgegeben.

print(df.head())
#    sepal_length  sepal_width  petal_length  petal_width species
# 0           5.1          3.5           1.4          0.2  setosa
# 1           4.9          3.0           1.4          0.2  setosa
# 2           4.7          3.2           1.3          0.2  setosa
# 3           4.6          3.1           1.5          0.2  setosa
# 4           5.0          3.6           1.4          0.2  setosa

SIE KÖNNEN sterben Anzahl der Zeilen angeben.

print(df.head(3))
#    sepal_length  sepal_width  petal_length  petal_width species
# 0           5.1          3.5           1.4          0.2  setosa
# 1           4.9          3.0           1.4          0.2  setosa
# 2           4.7          3.2           1.3          0.2  setosa

Holen Sie sich die letzten n Zeilen von DataFrame:tail()

Die Methode tail() gibt die letzten n Zeilen zurück.

Standardmäßig werden die letzten 5 Zeilen zurückgegeben.

print(df.tail())
#      sepal_length  sepal_width  petal_length  petal_width    species
# 145           6.7          3.0           5.2          2.3  virginica
# 146           6.3          2.5           5.0          1.9  virginica
# 147           6.5          3.0           5.2          2.0  virginica
# 148           6.2          3.4           5.4          2.3  virginica
# 149           5.9          3.0           5.1          1.8  virginica

SIE KÖNNEN sterben Anzahl der Zeilen angeben.

print(df.tail(3))
#      sepal_length  sepal_width  petal_length  petal_width    species
# 147           6.5          3.0           5.2          2.0  virginica
# 148           6.2          3.4           5.4          2.3  virginica
# 149           5.9          3.0           5.1          1.8  virginica

Rufen Sie Zeilen ab, indem Sie Zeilennummern angeben: Slice

Es ist auch möglich, Zeilen mit Slice zu erhalten.

print(df[50:55])
#     sepal_length  sepal_width  petal_length  petal_width     species
# 50           7.0          3.2           4.7          1.4  versicolor
# 51           6.4          3.2           4.5          1.5  versicolor
# 52           6.9          3.1           4.9          1.5  versicolor
# 53           5.5          2.3           4.0          1.3  versicolor
# 54           6.5          2.8           4.6          1.5  versicolor

Sie können Slices verwenden, um dasselbe zu tun wie head() und tail().

print(df[:5])
#    sepal_length  sepal_width  petal_length  petal_width species
# 0           5.1          3.5           1.4          0.2  setosa
# 1           4.9          3.0           1.4          0.2  setosa
# 2           4.7          3.2           1.3          0.2  setosa
# 3           4.6          3.1           1.5          0.2  setosa
# 4           5.0          3.6           1.4          0.2  setosa

print(df[-5:])
#      sepal_length  sepal_width  petal_length  petal_width    species
# 145           6.7          3.0           5.2          2.3  virginica
# 146           6.3          2.5           5.0          1.9  virginica
# 147           6.5          3.0           5.2          2.0  virginica
# 148           6.2          3.4           5.4          2.3  virginica
# 149           5.9          3.0           5.1          1.8  virginica

Holen Sie sich die Werte der ersten/letzten Zeile

Wenn Sie n=1 in head() oder tail() angeben, can SIE sterben erste oder letzte Zeile aufrufen, aber selbst Wenn es sich nur um eine Zeile handelt, ist der Typ pandas.DataFrame.

print(df.head(1))
#    sepal_length  sepal_width  petal_length  petal_width species
# 0           5.1          3.5           1.4          0.2  setosa

print(type(df.head(1)))
# <class 'pandas.core.frame.DataFrame'>

Wenn Sie mit iloc nur eine Zeile angeben, erhalten Sie die Zeile als pandas.Series. pandas.Series ist einfacher, den Wert zu erhalten. Sie können die erste Zeile mit iloc[0] und die letzte Zeile mit iloc[-1] erhalten.

Wenn Sie den Wert des Elements erhalten möchten, können Sie dies mit iloc[0][‚column_name‘], iloc[-1][‚column_name‘] tun.

print(df.iloc[0])
# sepal_length       5.1
# sepal_width        3.5
# petal_length       1.4
# petal_width        0.2
# species         setosa
# Name: 0, dtype: object

print(type(df.iloc[0]))
# <class 'pandas.core.series.Series'>

print(df.iloc[0]['sepal_length'])
# 5.1
print(df.iloc[-1])
# sepal_length          5.9
# sepal_width             3
# petal_length          5.1
# petal_width           1.8
# species         virginica
# Name: 149, dtype: object

print(type(df.iloc[-1]))
# <class 'pandas.core.series.Series'>

print(df.iloc[-1]['sepal_length'])
# 5.9

Beachten Sie, dass ohne .iloc ein Fehler ausgelöst WIRD.

# print(df[0])
# KeyError: 0

# print(df[-1])
# KeyError: -1

Weitere Informationen zu at, iat, loc, iloc und zum Auswählen von Zeilen und Spalten durch Indizieren von [] finden Sie im following Artikel.