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の出力結果は以下です。