■python備忘録 #1 「リストをcsvに保存するには『辞書型→Dataframeからcsv保存』する」

スポンサーリンク
tech系(python)
スポンサーリンク

pythonで何かしら処理をしてリストにまとめたデータをcsvに出力したい時に使う方法です。

この記事のゴール

リストをcsvに出力するムーブをキメる。

リストをcsvに出力

リストからcsvへの保存はできません。(調べたけど見つけられませんでした。)

リストは「リスト→辞書型→Dataframe→csv」の流れでcsvに出力します。

実はこの記事でもその処理は行っています。

今回のプログラムはjupyter notebookで行っていきます。

以下のような例で見てみます。

list_name = ['Bob', 'Alice', 'Taro', 'Max']
list_age = ['20', '23', '30', '25']
list_from_country = ['America', 'Canada', 'Japan', 'Australia']

3つのリストを用意しました。

list_nameは名前の情報が入っています。

list_ageは年齢の情報が入っています。

list_from_countryは出身国の情報が入っています。

これらのリストをcsvファイルに出力したいとします。

リスト→csvとしたいのですが、できないので、この時は

リスト→辞書型→Dataframe→csvとします。以下のようになります。

import pandas as pd

list_name = ['Bob', 'Alice', 'Taro', 'Max']
list_age = ['20', '23', '30', '25']
list_from_country = ['America', 'Canada', 'Japan', 'Australia']

test_dict = {'name': list_name, \
             'age': list_age, \
             'country': list_from_country}

print("test_dict:\n", test_dict)

test_df = pd.DataFrame(test_dict)

print("test_df:\n", test_df)

test_df.to_csv('test_output.csv')

上記プログラムを実行した際のprint文による出力は以下のようになります。

test_dict:
 {'name': ['Bob', 'Alice', 'Taro', 'Max'], 'age': ['20', '23', '30', '25'], 'country': ['America', 'Canada', 'Japan', 'Australia']}
test_df:
     name age    country
0    Bob  20    America
1  Alice  23     Canada
2   Taro  30      Japan
3    Max  25  Australia

プログラムの7~9行目で辞書としてリストの値を保存しています。

次に13行目で辞書をDataframeに変えています。

最後17行目でcsvファイルに出力しています。

csvの出力結果は以下です。


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