
はじめに
データ分析の分野でよく使われるPythonライブラリの一つであるPandasは、表形式のデータを扱う際に非常に便利です。しかし、データフレームが大きくなると、表示が見にくくなることがあります。そこで、本記事では、Pandasを使ってデータフレームを見やすくプリント(print)する方法を紹介します。
Pandasとは:簡単な説明と主な機能の紹介
Pandasは、表形式のデータを扱うためのPythonライブラリです。Pandasを使うことで、データフレームを簡単に操作することができます。Pandasの主な機能としては、以下のものがあります。
- データフレームの作成・読み込み
- データフレームの操作(列の追加・削除、行の選択・フィルタリング、結合など)
- データのグループ化、集約、変換
- データの可視化
- データの入出力(CSV、Excel、SQLデータベースなど)
データフレーム表示のデフォルト設定
Pandasには、データフレームの表示方法を調整するための設定があります。データフレームの表示設定には、以下のようなものがあります。
- 表示幅
- 表示する行数
- 小数点以下の桁数
データフレームの表示設定は、Pandasのデフォルト設定である場合があります。デフォルト設定では、表示幅が80文字、表示する行数が10行、小数点以下の桁数が2桁に設定されています。
以下のように、データフレームを表示するときに、デフォルト設定を使用することができます。
1 2 3 4 5 6 7 8 9 10 | import pandas as pd df = pd.DataFrame({ 'name' : [ 'Alice' , 'Bob' , 'Charlie' , 'David' , 'Eva' ], 'age' : [ 25 , 32 , 18 , 47 , 22 ], 'gender' : [ 'F' , 'M' , 'M' , 'M' , 'F' ], 'height' : [ 165.2 , 180.1 , 175.0 , 182.0 , 160.5 ], 'weight' : [ 57.0 , 80.5 , 68.0 , 90.2 , 52.3 ], 'score' : [ 80.5 , 92.3 , 73.0 , 65.8 , 88.0 ] }) print (df) |
上記のコードを実行すると、以下のようにデータフレームが表示されます。
1 2 3 4 5 6 | name age gender height weight score 0 Alice 25 F 165.2 57.0 80.5 1 Bob 32 M 180.1 80.5 92.3 2 Charlie 18 M 175.0 68.0 73.0 3 David 47 M 182.0 90.2 65.8 4 Eva 22 F 160.5 52.3 88.0 |
表示設定変更方法1:データフレームの表示幅や行数を調整する方法
データフレームの表示幅や行数を調整するには、Pandasの設定を変更する必要があります。以下のように、pandas.set_option()関数を使用して、表示幅や行数を設定することができます。
1 2 3 4 5 6 7 8 9 10 11 12 | import pandas as pd pd.set_option( 'display.width' , 1000 ) pd.set_option( 'display.max_rows' , 20 ) df = pd.DataFrame({ 'name' : [ 'Alice' , 'Bob' , 'Charlie' , 'David' , 'Eva' ] * 100 , 'age' : [ 25 , 32 , 18 , 47 , 22 ] * 100 , 'gender' : [ 'F' , 'M' , 'M' , 'M' , 'F' ] * 100 , 'height' : [ 165.2 , 180.1 , 175.0 , 182.0 , 160.5 ] * 100 , 'weight' : [ 57.0 , 80.5 , 68.0 , 90.2 , 52.3 ] * 100 , 'score' : [ 80.5 , 92.3 , 73.0 , 65.8 , 88.0 ] * 100 }) print (df) |
上記のコードを実行すると、以下のようにデータフレームが表示されます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | name age gender height weight score 0 Alice 25 F 165.2 57.0 80.5 1 Bob 32 M 180.1 80.5 92.3 2 Charlie 18 M 175.0 68.0 73.0 3 David 47 M 182.0 90.2 65.8 4 Eva 22 F 160.5 52.3 88.0 .. ... ... ... ... ... ... 495 Alice 25 F 165.2 57.0 80.5 496 Bob 32 M 180.1 80.5 92.3 497 Charlie 18 M 175.0 68.0 73.0 498 David 47 M 182.0 90.2 65.8 499 Eva 22 F 160.5 52.3 88.0 [ 500 rows x 6 columns] Process finished with exit code 0 |
上記の例では、表示幅を1000に、表示する行数を20行に設定しています。このように、pandas.set_option()関数を使用することで、データフレームの表示方法を調整することができます。
表示設定変更方法2:小数点以下の桁数を制御する方法
データフレームに含まれる数値データの小数点以下の桁数を制御する方法もあります。以下のように、pandas.set_option()関数を使用して、小数点以下の桁数を設定することができます。
1 2 3 4 5 6 7 8 9 10 11 12 | import pandas as pd pd.set_option( 'display.float_format' , '{:.2f}' . format ) df = pd.DataFrame({ 'name' : [ 'Alice' , 'Bob' , 'Charlie' , 'David' , 'Eva' ], 'age' : [ 25 , 32 , 18 , 47 , 22 ], 'gender' : [ 'F' , 'M' , 'M' , 'M' , 'F' ], 'height' : [ 165.2 , 180.1 , 175.0 , 182.0 , 160.5 ], 'weight' : [ 57.0 , 80.5 , 68.0 , 90.2 , 52.3 ], 'score' : [ 80.5 , 92.3 , 73.0 , 65.8 , 88.0 ] }) print (df) |
上記のコードを実行すると、以下のようにデータフレームが表示されます。
1 2 3 4 5 6 | name age gender height weight score 0 Alice 25 F 165.20 57.00 80.50 1 Bob 32 M 180.10 80.50 92.30 2 Charlie 18 M 175.00 68.00 73.00 3 David 47 M 182.00 90.20 65.80 4 Eva 22 F 160.50 52.30 88.00 |
上記の例では、'{:.2f}’.formatによって小数点以下の桁数を2桁に制御しています。
表示設定変更方法3:データフレームを複数ページに分けて表示する方法
# その場合には、データフレームを複数ページに分けて表示する方法があります。以下のように、pandas.set_option()関数を使用して、データフレームを表示するページ数を設定することができます。
1 2 3 4 5 6 7 8 9 10 11 12 13 | import pandas as pd pd.set_option( 'display.max_rows' , 10 ) df = pd.DataFrame({ 'name' : [ 'Alice' , 'Bob' , 'Charlie' , 'David' , 'Eva' ] * 10 , 'age' : [ 25 , 32 , 18 , 47 , 22 ] * 10 , 'gender' : [ 'F' , 'M' , 'M' , 'M' , 'F' ] * 10 , 'height' : [ 165.2 , 180.1 , 175.0 , 182.0 , 160.5 ] * 10 , 'weight' : [ 57.0 , 80.5 , 68.0 , 90.2 , 52.3 ] * 10 , 'score' : [ 80.5 , 92.3 , 73.0 , 65.8 , 88.0 ] * 10 }) print (df) |
データフレームが長くなった場合には、1ページに表示しきれないことがあります。
上記のコードを実行すると、以下のようにデータフレームが表示されます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | name age gender height weight score 0 Alice 25 F 165.2 57.0 80.5 1 Bob 32 M 180.1 80.5 92.3 2 Charlie 18 M 175.0 68.0 73.0 3 David 47 M 182.0 90.2 65.8 4 Eva 22 F 160.5 52.3 88.0 .. ... ... ... ... ... ... 45 Alice 25 F 165.2 57.0 80.5 46 Bob 32 M 180.1 80.5 92.3 47 Charlie 18 M 175.0 68.0 73.0 48 David 47 M 182.0 90.2 65.8 49 Eva 22 F 160.5 52.3 88.0 [ 50 rows x 6 columns] Process finished with exit code 0 |
上記の例では、表示する行数を10行に設定しています。このように、pandas.set_option()関数を使用することで、データフレームを複数ページに分けて表示することができます。
まとめ
Pandasでは、pandas.set_option()関数を使用して、データフレームの表示方法を調整することができます。以下のような方法があります。
- データフレームの表示幅や行数を調整する方法
- 小数点以下の桁数を制御する方法
- データフレームを複数ページに分けて表示する方法
これらの方法を活用することで、データフレームを見やすく表示することができます。