DataFrameの先頭行と末尾の確認を行うhead, tail

head、tail関数 pandas

【宣伝】pandasのオススメの本の紹介

このブログでも詳しくpandasの使い方を紹介していますが、体系的に学びたい方や、本の方が良いという方には以下の本をオススメしておきます。

pandasライブラリ活用入門[第2版]

準備

pd.read_csv関数などで読み込んだDataFrameをパッと確認するためにhead関数tail関数を覚えておくと良い。

説明のために以下のDataFrameを用意する。「コードでDataFrameを用意する方法」についても別の記事で説明している。

import pandas as pd # ※以降のコードでは省略する

df = pd.DataFrame({
    "student_id": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
    "name": ["taro", "hanako", "jiro", "fuyumi", "sigeru", "satoshi", "misuzu", "taro", "saburo", "ichiro"],
    "math": [50, 68, 90, 35, 49, 77, 88, 91, 80, 100],
    "english": [10, 99, 55, 54, 30, 29, 67, 45, 46, 88]
})
df
サンプルDataFrame

head関数

DataFrameの先頭行を確認するにはhead関数を使う。引数無しで呼び出すと先頭5行が抽出される。

df.head()

引数として数値を指定すると、その行数抽出される。

df.head(7) # 先頭から7行抽出

tail関数

DataFrameの末尾の行もtail関数で簡単に抽出できる。引数無しで呼び出すと末尾5行が抽出される。

df.tail()

head関数同様、引数として数値を指定すると、その行数抽出される。

df.tail(8) # 末尾8行抽出

DataFrameを行を省略させずに表示する

以下のように、headやtail関数で多くの行を表示しようとすると「…」と省略されてしまいます。

import random

df_long = pd.DataFrame({
    "id": range(100),
    "grade": [random.choice(["A", "B", "C"]) for _ in range(100)]
})
df_long.head(80)

これを防ぐためにはimport pandas as pdの後に次のように指定します。

import random

import pandas as pd

# ↓100行までは省略せずに表示する。101行以上は省略する
pd.set_option("display.max_rows", 100)
# ↓常に省略せずに表示する場合
# pd.set_option("display.max_rows", None)

df_long = pd.DataFrame({
    "id": range(100),
    "grade": [random.choice(["A", "B", "C"]) for _ in range(100)]
})
df_long.head(80)

pd.set_option(“display.max_rows”, 100) で100行まで省略せずに表示できます。

pd.set_option(“display.max_rows”, None) で常に省略せず表示します。

Python入門【pandas編】

このブログでは「Python入門【pandas編】」の記事群を整備中です。興味のある方は下のリンク先をチェックしてみてください。

コメント

タイトルとURLをコピーしました