私の場合もっともよく使うcsvの読み込み
サンプルcsvの準備
下記のデータを"data.csv"として保存。
これを読み込むことを想定しています。
,col0,col1,col2,col3,col4,col5,col6,col7,col8,col9
row0,0,1,2,3,4,5,6,7,8,9
row1,10,11,12,13,14,15,16,17,18,19
row2,20,21,22,23,24,25,26,27,28,29
row3,30,31,32,33,34,35,36,37,38,39
row4,40,41,42,43,44,45,46,47,48,49
row5,50,51,52,53,54,55,56,57,58,59
row6,60,61,62,63,64,65,66,67,68,69
row7,70,71,72,73,74,75,76,77,78,79
row8,80,81,82,83,84,85,86,87,88,89
row9,90,91,92,93,94,95,96,97,98,99
row0,0,1,2,3,4,5,6,7,8,9
row1,10,11,12,13,14,15,16,17,18,19
row2,20,21,22,23,24,25,26,27,28,29
row3,30,31,32,33,34,35,36,37,38,39
row4,40,41,42,43,44,45,46,47,48,49
row5,50,51,52,53,54,55,56,57,58,59
row6,60,61,62,63,64,65,66,67,68,69
row7,70,71,72,73,74,75,76,77,78,79
row8,80,81,82,83,84,85,86,87,88,89
row9,90,91,92,93,94,95,96,97,98,99
他のタイプのcsvデータについては下記を参照。
detailed-balance.hatenablog.com
csvモジュールを利用してcsvファイルを読み込む方法
import csv #csvモジュールのインポート f = open('data.csv', 'r') #data.csvを開く data = f.read().splitlines()#改行区切りで読み込む array = [[] for i in range(len(data))]#空の2次元配列を用意 #2次元配列に","区切りでデータを入れる for i in range(len(data)): array[i] = data[i].split(",") f.close()#ファイルを閉じる
ひとまずこの方法でできることはできるのですが、より適切な方法があるのではないかと思ってしまいます。
2次元配列に読み込んだ後には(上のコードではarray)、pandasのデータフレームに入れて数値に変換することが必要ですね。
上記コードでは文字列のままですので。
pandasを利用してcsvファイルを読み込む方法
個人的にはこの方法を頻繁に利用しています。import pandas as pd #pandasのインポート df = pd.read_csv("data.csv",index_col = 0) #data.csvの読み込み。左端の列をindex名として使用(pythonでは0列目)