Pythonでのcsvの扱い方
pythonでのcsvの読み込みをいつも忘れてしまうのでメモ.
csv libraryの場合
読み込み
1import csv
2
3with open("file.csv", "r") as f:
4 reader = csv.reader(f)
5 header = next(reader) # headerを飛ばす場合(headerがない場合は最初の行が飛ばされるので注意)
6 for row in reader:
7 print(row)
書き込み
1import csv
2
3with open("file.csv", "w") as f: # ファイルに追記したい場合は"w"の部分を"a"にする
4 writer = csv.writer(f, lineterminator=",")
5 header = next(reader) # headerを飛ばしたい場合(headerがない場合は最初の行が飛ばされるので注意)
6 for row in reader:
7 print(row)
numpyの場合
読み込み
1import numpy as np
2
3# csvファイルの場合
4data = np.loadtxt("file.csv", delimiter=",")
5
6# tsvファイルの場合
7data = np.loadtxt("file.tsv", delimiter="\t")
書き込み
1import numpy as np
2
3# csvファイルの保存
4np.savetxt("file.csv", x, delimiter=',') # x is an array
pandasの場合
読み込み
1import pandas as pd
2
3df = pd.read_csv("file.csv")
書き込み
1import pandas as pd
2
3df.to_csv("file.csv") # df is a DataFrame