pythonでexcel,csvファイルを読み込む
まずはエクセルファイル名を取得
以下を参考にしました。
Python: 指定したパスのディレクトリ中のファイル一覧を出力 | Yukun's Blog
import os # osモジュールのインポート # os.listdir('パス') # 指定したパス内の全てのファイルとディレクトリを要素とするリストを返す files = os.listdir('ディレクトリのpath') for file in files: print(file)
ファイル名だけじゃなくて、フルパスを取得した場合は以下、
import glob # パス内の全ての"指定パス+ファイル名"と"指定パス+ディレクトリ名"を要素とするリストを返す files = glob.glob('ディレクトリのpath') # ワイルドカードが使用可能、今回はcsvファイルを取得、 for file in files: print file
excel,csvファイルからデータを取得してデータフレーム化
ファイル名を取得したら、
そこからデータを引っ張って、データフレーム にします。
以下参考、
pandasでcsv/tsvファイル読み込み(read_csv, read_table) | note.nkmk.me
Pandas で CSV ファイルやテキストファイルを読み込む – Python でデータサイエンス
csvファイルのうち、
i行スキップして読み込み、
そこからn行読み込むとします。
j列目のデータだけ取得、
ヘッダーはなし、
尚、globモジュールでパスリストをfileに格納したとします。
import pandas as pd for file in files csv_df = pd.read_csv(file,sep=",",skiprows=i,nrows=n,header=None, usecols=[j]) csv_df_all = pd.concat([csv_df_all,csv_df],axis = 1 )
読み込むファイルがエクセルならば以下、
import pandas as pd for file in files excel_df = pd.read_excel("excelのpath",sheetname= "sheet名を指定",skiprows =飛ばす行数 ,skipcols = 飛ばす列数) excel_df_all = pd.concat([excel_df_all,excel_df],axis = 1)