for file in csv_files:
list.append(pd.read_csv(file))
list.appendではデータフレームが横一列のリストになるのでは?
pandasのデータフレームに直接読み込んで、データフレームを追記する方が良いと思います。
df = pd.DataFrame()
for file in csv_files:
df += pd.read_csv(file)
のような記述ができた? うろ覚えですみません。サイトのとおりで。。。
python pandas 複数CSVの読み込みでUnicodeDecodeErrorの解消
pythonで複数のcsvを繰り返し読み込んで1つのデータにしたいのですが
下記コードの中の(pd.read_csv(file))の箇所で
UnicodeDecodeErrorが発生します
解決方法をご教授いただけますと幸いです。
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x83 in position 0: invalid start byte
import pandas as pd
import glob
csv_files = glob.glob(r'C:\Users\test*.csv')
list = []
for file in csv_files:
list.append(pd.read_csv(file))
df = pd.concat(list)
df.to_csv('test_total.csv',index=False)
①(pd.read_csv(file),encoding = 'Shift-jis')など
よく使われる文字コード指定試しました
②読み込みたいCSVの保存形式はCSV(コンマ区切り)(*.csv)でした
③メモ帳などで確認した際の右下はANSIになっていました
④pd.read_csv(r'C:\Users\test*.csv',encoding = 'ANSI')では
1つごとには読み込めました
⑤(pd.read_csv(file),encoding = 'ANSI')ではエラーになりました
以上よろしくお願いいたします。
for file in csv_files:
list.append(pd.read_csv(file))
list.appendではデータフレームが横一列のリストになるのでは?
pandasのデータフレームに直接読み込んで、データフレームを追記する方が良いと思います。
df = pd.DataFrame()
for file in csv_files:
df += pd.read_csv(file)
のような記述ができた? うろ覚えですみません。サイトのとおりで。。。
回答いただきありがとうございます
csvははまりやすいことよくわかりました
csv.open使ったことがないので
サイトよく読み込んで組み込んでみようと思います
回答いただきありがとうございました
この辺りの記事が参考になると思いますよ。
一応確認ですけど④と⑤でencoding引数の位置が違いますけどそれは大丈夫ですか?