PandasのDataframeとSeriesの先頭と最後尾を取得する方法|headやtailを使う方法を解説

スポンサーリンク

このPythonチュートリアルでは、pandasのDataFrameやSeriesオブジェクトのheadとtailを取得するための様々なメソッドについて説明する予定です。

それでは、始めましょう。

スポンサーリンク

なぜpandasのDataFrameやSeriesの先頭と最後尾を取得するのですか?

Pandasはデータ分析に広く使われているPythonの必須ライブラリであることは周知の通りです。

そして、データ分析が非常に大きなデータセットを扱うことはよく知られた事実です。

したがって、大規模なサンプルデータセット(pandas DataFrameやSeriesオブジェクトの形で読み込まれます)の概要を知るためには、pandas DataFrameやSeriesの先頭と最後尾が必要です。

pandas DataFrameクラスの DataFrame.head()DataFrame.tail() 関数を使用して、pandas DataFrameやSeriesの最初の行と最後の行(デフォルトではこのN = 5)をそれぞれ取得するのが一般的です。

pandas DataFrame のヘッドとテール

では、pandas DataFrameオブジェクトのheadとtailの議論を進める前に、サンプルのpandas DataFrameオブジェクトを作成してみましょう。

サンプルpandas DataFrameオブジェクトの作成

# Import pandas Python module
import pandas as pd
 
# Create a large pandas DataFrame object
df = pd.DataFrame({'RegNo': [111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125],
                   'Dept': ['ECE', 'ICE', 'IT', 'CSE', 'CHE', 'EE', 'ME', 'CSE', 'ICE', 'TT', 'ECE', 'IT', 'ME', 'BT', 'EE']})
 
# Print the created pandas DataFrame
print('Sample pandas DataFrame:
'
)
print(df)

結果を出力すると、以下の様になります。

Sample pandas DataFrame:
 
    RegNo Dept
0     111  ECE
1     112  ICE
2     113   IT
3     114  CSE
4     115  CHE
5     116   EE
6     117   ME
7     118  CSE
8     119  ICE
9     120   TT
10    121  ECE
11    122   IT
12    123   ME
13    124   BT
14    125   EE

pandasのDataFrameのheadを取得する: pandas.DataFrame.head()

# Get the head of the sample pandas Series
print('First 10 rows of the sample pandas DataFrame:
'
)
temp_df = df.head(10)
print(temp_df)

結果は以下の通りです。

First 10 rows of the sample pandas DataFrame:
 
   RegNo Dept
0    111  ECE
1    112  ICE
2    113   IT
3    114  CSE
4    115  CHE
5    116   EE
6    117   ME
7    118  CSE
8    119  ICE
9    120   TT

pandasのDataFrameの末尾を取得する: pandas.DataFrame.tail()

# Get the tail of the sample pandas Series
print('Last 10 rows of the sample pandas DataFrame:
'
)
temp_df = df.tail(10)
print(temp_df)

結果は以下の通りです。

Last 10 rows of the sample pandas DataFrame:
 
    RegNo Dept
5     116   EE
6     117   ME
7     118  CSE
8     119  ICE
9     120   TT
10    121  ECE
11    122   IT
12    123   ME
13    124   BT
14    125   EE

pandasのDataFrameの先頭と最後尾を一緒に取得する: pandas.option_context()

# Get the head and tail of the sample pandas DataFrame
# Using the pd.option_context() function in Pandas
print('First and Last 5 rows of the sample pandas DataFrame:
'
)
with pd.option_context('display.max_rows',10):
    print(df)

結果は、以下の通りになります。

First and Last 5 rows of the sample pandas DataFrame:
 
    RegNo Dept
0     111  ECE
1     112  ICE
2     113   IT
3     114  CSE
4     115  CHE
..    ...  ...
10    121  ECE
11    122   IT
12    123   ME
13    124   BT
14    125   EE
 
[15 rows x 2 columns]

パンダの頭と尻尾 シリーズ

では、pandas Seriesオブジェクトのheadとtailの話を進める前に、サンプルのpandas Seriesオブジェクトを作成してみましょう。

サンプルpandas Seriesオブジェクトの作成

# Import pandas Python module
import pandas as pd
# Import NumPy Python module
import numpy as np
 
# Create a pandas Series
sr = pd.Series(np.random.randn(1000))
 
# Print the created pandas Series
print('Sample pandas Series:
'
)
print(sr)

結果を出力すると、以下の様になります。

Sample pandas Series:
 
0     -0.157775
1     -0.108095
2     -0.876501
3     -0.591994
4     -0.435755
         ...  
995    1.186127
996   -0.898278
997   -0.267392
998    1.295608
999   -2.024564
Length: 1000, dtype: float64

pandas Seriesのheadを取得:pandas.Series.head()

# Get the head of the sample pandas Series
print('First 10 values of the sample pandas Series:
'
)
temp_sr = sr.head(10)
print(temp_sr)

結果を出力すると、以下の様になります。

First 10 values of the sample pandas Series:
 
0   -0.157775
1   -0.108095
2   -0.876501
3   -0.591994
4   -0.435755
5   -1.204434
6   -0.035977
7    0.015345
8   -0.453117
9   -0.695302
dtype: float64

pandas Seriesの末尾を取得する: pandas.Series.tail()

# Get the tail of the sample pandas Series
print('Last 10 values of the sample pandas Series:
'
)
temp_sr = sr.tail(10)
print(temp_sr)

結果を出力すると、以下の様になります。

Last 10 values of the sample pandas Series:
 
990   -0.239336
991   -1.475996
992   -0.162860
993    0.405505
994    0.458872
995    1.186127
996   -0.898278
997   -0.267392
998    1.295608
999   -2.024564
dtype: float64

まとめ

この Python チュートリアルでは、 head()tail() 関数を用いて、pandas の DataFrame や Series の head と tail を取得する方法を学びました。

また、Pandasの pandas.option_context() 関数を使用して、pandas DataFrameのheadとtailを同時に取得する方法も見てきました。

上記の内容を理解し、pandasの関数を使って大きなpandas DataFrameの概要を把握することにわくわくしていただけたと思います。

お読みいただきありがとうございました。

Pythonプログラミングの学習リソースをもっと見るために私たちにご期待ください。

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