Pythonのデータ分析ライブラリであるpandasを使うと、データの加工、集計、可視化などを効率的に実行することができます。特に、加工したSeriesやDataFrameを文字列に変換して出力したいこともあります。
DataFrameを文字列に変換する方法
pandasのDataFrameを文字列に変換するには、to_string()
メソッドを使用します。このメソッドでは、引数を使って出力形式をカスタマイズすることもできます。
import pandas as pd
df = pd.DataFrame({
"Ind": ["Data1", "Data2", "Data3"],
'A': [1, 2, 3],
'B': [4, 5, 6],
'C': [7, 8, 9]
}).set_index("Ind")
# .to_string()でDataFrameを文字列に変換
s = df.to_string()
# 型の確認
print(type(s)) # str
# sの中身の確認
print(s)
上記のコードを実行すると、DataFrameが文字列に変換されます。改行は改行コード\n
として格納されています。print()
関数で出力したり、テキストファイルとして出力したりすると、改行コードは展開されて改行になります。
出力形式のカスタマイズ
to_string()
メソッドの引数を設定して出力形式をカスタマイズできます。主な引数は次の通りです。
- ヘッダー(列名)の出力:
header=True
- インデックス(行名)の出力:
index=True
- インデックス名の出力:
index_names=True
- 出力する列の指定:
columns=[列名のリスト]
- 出力する最大行数:
max_rows=数値
- 出力する最大列数:
max_cols=数値
- 列の最大幅:
max_colwidth=数値
- 列の最小幅:
col_space=数値
- 列の表示位置:
justify='right', 'left', "center"
- 欠損値の表記:
na_rep='NaN'
- データのフォーマット変更:
formatters=フォーマット関数
- 浮動小数点数の出力形式:
float_format=書式指定子
これらの引数を使って、DataFrameから生成される文字列の出力形式をカスタマイズすることができます。
以上、Pythonとpandasを使ってDataFrameを文字列に変換する方法について解説しました。この方法を使えば、DataFrameを文字列に変換して加工したいときに便利です。.