Pythonについて詳しく解説します
一次元配列をサクッとCSVに保存していきたいので、そのスクリプトをサクッと教えて下さい!
…という方のために、備忘録を残しておきます。
ということで、こんにちは!
Pythonで扱った一次元配列をそのままシンプルにCSVに放り込んで保存したいというタイミングが時々あります。
このような感じで、一次元配列を改行ありでCSVに保存する方法をまとめました。
この手のデータをCSVに保存したい場合にPandasを使う方法もあるようですが、ここではPandasなし、CSVのみで実現する方法を解説しています。
【コード】一次元配列をCSVに改行入りで保存する方法
ということで、そのコードがこちら。
import csv with open(csvpath, "w", encoding="utf_8_sig") as f: writer = csv.writer(f, lineterminator='\n') for i in data: writer.writerow([i])
「csvpath」に保存する先のCSVパスとファイル名を、
「data」には一次元配列を入れています。
【解説】どういう処理をしているか
それほど難しい処理ではないですが、一応解説します。
import csv
CSVに書き込むので、まずは「import csv」が必要です。
with open(csvpath, "w", encoding="utf_8_sig") as f: writer = csv.writer(f, lineterminator='\n') for i in data: writer.writerow([i])
for文を使って、data配列の中のデータを一行ずつ「writerow」で書き込んでます。
ここの値の指定がwriterow(i)ではなくwriterow([i])にしておく必要があります。
CSVに書き込む場合、通常は二次元配列の形でデータを書き込む必要があるため、[i]と指定することで、擬似的(?)に二次元配列扱いで、CSVに1行ずつ書き込んでいくという動きをしています。
ちなみにwriterow(i)と記述した場合、こんな感じで1文字ごとにカンマがついてしまう、摩訶不思議な出力結果になってしまいます。
PythonでCSVを扱う際に、指定を間違えるとよく出てくる出力結果ですね。
まとめ
以上、Pythonで一次元配列をCSVに保存する簡単な方法でした。
基本コピペでOKですが、もちろん変数名は差し替えて下さい。
また、これを関数化しておけば、CSV保存を気軽に行えるようになるので、便利かもしれません。
以上、ご参考までに!
それでは!