前提・実現したいこと
複数のcsvファイルを一括で一つのcsvファイルに結合させたいと思っているのですが、次のようなエラーが発生しています。
発生している問題・エラーメッセージ
ソースコードのこの部分でエラーが出ているようです。
df_next = pd.read_csv(file, engine='python', names=col_names) #ファイル読み込み
UnicodeDecodeError:'utf-8'codec can't decode byte 0x81 in position 11:invalid start byte
該当のソースコード
import pandas as pd import glob #カラムサイズを一定にさせる col_names = [ 'c{0:02d}'.format(i) for i in range(14213) ] #複数ファイルを選択する files = glob.glob('*.csv') #まとめて処理するファイルのディレクトリを指定 files.sort() #csvファイルを合成していく df_list = [] for file in files: df_next = pd.read_csv(file, engine='python', names=col_names) #ファイル読み込み df_next = df_next.drop([0,1,2,3,4,5,6,7,8,9,10,11,12], axis=0) #不要な行の消去 df_next = df_next.fillna(0) #NaNに0を代入 df_next.iat[0, 14212] = 3 #ラベルを付与させる df_list.append(df_next) #次に返す df = pd.concat(df_list, ignore_index=True) df.to_csv('total/pototal.csv', index=False, header=False) #合成したファイルを保存 #print(df)
試したこと
今扱っているcsvファイルのデータサイズが14212です。
ファイルは420個あります。
補足情報(FW/ツールのバージョンなど)
anaconda3を使用しています
回答1件
あなたの回答
tips
プレビュー