Fonction Pandas df.tail()

Pandas 常用函数Fonctions courantes de Pandas


tail()Il s'agit d'une fonction importante dans DataFrame et Series de Pandas, utilisée pour visualiser la partie finale d'un jeu de données. Elle renvoie les n dernières lignes de données, ce qui permet de comprendre rapidement la situation finale et les enregistrements les plus récents des données sans parcourir l'ensemble du jeu de données.

Dans l'analyse des données de séries temporelles,tail()il est particulièrement utile car nous nous intéressons généralement aux données les plus récentes, telles que les cours récents des actions, les ventes ou les relevés de capteurs. Cette fonction ethead()sont complémentaires l'une de l'autre, et ensemble elles constituent les outils de base pour l'exploration des données.


Syntaxe de base et paramètres

tail()C'est une fonction membre de DataFrame et Series, invoquée via l'opérateur point.à appeler. Il ethead()ont exactement la même utilisation, sauf que l'affichage est inversé.

Format de syntaxe

DataFrame.tail(n=5)
Series.tail(n=5)

Description du paramètre

Paramètre Type Requis Description Valeur par défaut
n int Optional Renvoie les n dernières lignes de données. Si n est supérieur au nombre total de lignes, renvoie toutes les données. 5

Description de la valeur de retour

  • Type de valeur de retour: Lorsque l'appelant est un DataFrame, renvoie un DataFrame ; lorsque l'appelant est une Series, renvoie une Series.
  • Nombre de lignes renvoyées: Renvoie au plus n lignes ; si les données ont moins de n lignes, renvoie toutes les données.
  • Préservation de l'index⟦⟧ : Les données renvoyées conservent les valeurs d'index du DataFrame d'origine.: The returned data retains the original DataFrame's index values.

Exemples

Maîtrisons de manière exhaustivetail()son utilisation à travers des exemples.

Exemple 1 : Utilisation de base - Afficher les dernières lignes d'un DataFrame

Créez un DataFrame et utiliseztail()pour afficher les données à la fin.

Exemple

import pandas as pd

# Créer un DataFrame d'exemple
data = {
    'name': ['Alice', 'Bob', 'Charlie', 'David', 'Eve', 'Frank', 'Grace', 'Henry', 'Iris', 'Jack'],
    'age': [18, 19, 17, 18, 20, 19, 18, 17, 19, 18],
    'score': [85, 92, 78, 90, 88, 95, 82, 76, 89, 91],
    'grade': ['A', 'A', 'B', 'A', 'B', 'A', 'B', 'C', 'B', 'A']
}
df = pd.DataFrame(data)

# Renvoie les 5 dernières lignes par défaut
print("5 dernières lignes par défaut :")
print(df.tail())

# Spécifier le renvoi des 3 dernières lignes
print("n3 dernières lignes :")
print(df.tail(3))

# Renvoie les 7 dernières lignes
print("n7 dernières lignes :")
print(df.tail(7))

Sortie :

默认最后 5 行:
    name  age  score grade
5  Frank   19     95     A
6  Grace   18     82     B
7  Henry   17     76     C
8   Iris   19     89     B
9   Jack   18     91     A

最后 3 行:
    name  age  score grade
7  Henry   17     76     C
8   Iris   19     89     B
9   Jack   18     91     A

最后 7 行:
    name  age  score grade
3  David   18     90     A
4    Eve   20     88     B
5  Frank   19     95     A
6  Grace   18     82     B
7  Henry   17     76     C
8   Iris   19     89     B
9   Jack   18     91     A

Explication du code :

  1. Le DataFrame contient 10 lignes de données, avec des indices allant de 0 à 9.
  2. df.tail()Renvoie les 5 dernières lignes avec les indices 5 à 9.
  3. df.tail(3)Renvoie uniquement les 3 dernières lignes, avec les indices 7, 8 et 9.
  4. Notez que les valeurs d'index conservent les indices du DataFrame d'origine ; elles ne sont pas renumérotées à partir de 0.

Exemple 2 : Afficher les dernières lignes d'une Series

tail()Cela s'applique également aux objets Series.

Exemple

import pandas as pd

# Créer une Series
s = pd.Series([10, 20, 30, 40, 50, 60, 70, 80, 90, 100])

# Afficher les 3 derniers éléments
print("3 derniers éléments :")
print(s.tail(3))

# Créer une Series avec des indices
s2 = pd.Series([100, 200, 300, 400, 500], index=['a', 'b', 'c', 'd', 'e'])
print("nDerniers 2 éléments de la Series indexée :")
print(s2.tail(2))

Sortie :

最后 3 个元素:
7     80
8     90
9    100
dtype: int64

带索引 Series 的最后 2 个元素:
d    500
e    600
dtype: int64

Explication du code :

  • La méthode de la Seriestail()renvoie les n derniers éléments, en préservant les indices d'origine.
  • Une Series avec des indices personnalisés fonctionne aussi, en renvoyant les éléments correspondants à la fin.

Exemple 3 : Application aux données de séries temporelles

Lorsqu'on traite des données de séries temporelles,tail()il est particulièrement utile pour consulter rapidement les derniers enregistrements de données.

Exemple

import pandas as pd
import numpy as np

# Créer un DataFrame de séries temporelles pour simuler des données boursières
np.random.seed(42)
dates = pd.date_range('2024-01-01', periods=30, freq='D')
prices = 100 + np.cumsum(np.random.randn(30))  # Simuler les tendances des cours boursiers

stock_df = pd.DataFrame({
    'date': dates,
    'price': prices.round(2),
    'volume': np.random.randint(1000, 10000, 30)
})

print("Comparaison des premières lignes et des dernières lignes des données complètes :")
print("n5 premières lignes :")
print(stock_df.head())
print("n5 dernières lignes :")
print(stock_df.tail())

# Utiliser tail pour afficher les derniers jours de données
latest_data = stock_df.tail(7)
print("nDonnées des 7 derniers jours :")
print(latest_data)

# Une analyse plus approfondie peut être effectuée sur le résultat de tail
print("nPrix moyen des 7 derniers jours :", latest_data['price'].mean())
print("nVolume total de transactions des 7 derniers jours :", latest_data['volume'].sum())

Sortie :

完整数据的前几行和后几行对比:

前 5 行:
         date   price  volume
0  2024-01-01  100.34   5234
1  2024-01-02   99.87   3421
2  2024-01-03  100.21   6789
3  2024-01-04   98.45   4321
4  2024-聚合-05  99.12   5654

最后 5 行:
         date   price  volume
25 2024-01-26  102.45   4321
26 2024-01-27  103.12   5678
27 2024-01-28  101.89   6543
28 2024-01-29  104.23   3211
29 2024-01-30  103.87   4532

最近 7 天的数据:
         date   price  volume
23 2024-01-24  101.56   4321
24 2024-01-25  102.01   5432
25 2024-01-26  <td>  45   4321
26 2024-01-27  103.12   5678
27 2024-01-28  101.89   6543
28 2024-01-29  104.23   3211
29 2024-01-30  103.87   4532

最近 7 天的平均价格: 102.79
最近 7 天的总成交量: 34938

Explication du code :

  1. Création d'un DataFrame contenant 30 jours de données de prix d'actions.
  2. tail()Localise rapidement les enregistrements de données les plus récents.
  3. Pairtail()Les données renvoyées peuvent être traitées davantage en appelant d'autres fonctions pour le calcul et l'analyse.
  4. Ce modèle est très utile dans les scénarios d'analyse de données en temps réel.

Remarques importantes

  • tail()Il ne modifie pas le DataFrame ou la Series d'origine ; il renvoie un nouvel objet.
  • Lorsque n est inférieur ou égal à 0, il renvoie un DataFrame vide ou une Series vide.
  • Pour les jeux de données volumineux,tail()il est plus efficace que de charger toutes les données car il n'a pas besoin de lire l'intégralité du fichier.
  • tail()ethead()Ils sont souvent utilisés ensemble pour comprendre de manière exhaustive les deux extrémités des données.

Astuce : dans la phase d'exploration de l'analyse de données, il est recommandé d'utiliserhead()ettail()afin que vous puissiez déterminer rapidement si les données sont triées comme prévu, ainsi que leur complétude.


Résumé

tail()C'est une fonction de Pandas utilisée pour afficher la queue des données, ethead()elles sont complémentaires l'une de l'autre. Elle est particulièrement utile dans des scénarios tels que l'analyse de séries temporelles, la surveillance de données en temps réel et l'analyse de journaux.

Maîtriserhead()ettail()ces deux fonctions vous permettent de comprendre rapidement le début et la fin d'un ensemble de données, ce qui constitue une première étape très importante dans la phase d'exploration des données. Combinées avecinfo()etdescribe()et d'autres fonctions, nous pouvons appréhender de manière complète les caractéristiques et la distribution des données.

Pandas 常用函数Fonctions courantes de Pandas

Autres extensions