![](/img/trans.png)
[英]pd.concat in pandas is giving a TypeError: cannot concatenate object of type '<class 'str'>'; only Series and DataFrame objs are valid
[英]How to fix TypeError: cannot concatenate object of type '<class 'pandas.io.parsers.TextFileReader'>'; only Series and DataFrame objs are valid?
我正在嘗試讀取 csv 文件並將它們連接起來並將它們作為一個 csv 文件輸出。 我不斷收到此錯誤:
類型錯誤:無法連接類型為 '< class 'pandas.io.parsers.TextFileReader'>' 的對象; 只有 Series 和 DataFrame 對象有效;
我不知道如何解決它。 我是初學者,所以我很感激任何幫助! 謝謝! 這是我寫的代碼:
csv.field_size_limit(sys.maxsize)
df1 = pd.read_csv('file1.csv', chunksize=20000)
df2 = pd.read_csv('file2.csv', chunksize=20000)
df3 = pd.read_csv('file3.csv', chunksize=20000)
df4 = pd.read_csv('file4.csv', chunksize=20000)
df5 = pd.read_csv('file5.csv', chunksize=20000)
df6 = pd.read_csv('file6.csv', chunksize=20000)
frames = [df1, df2, df3, df4, df5, df6]
result = pd.concat(frames, ignore_index=True, sort=False)
result.to_csv('new.csv')
如果您調用read_csv傳遞chunksize參數,則:
如何使用“分塊”CSV 文件讀取的示例:
reader = pd.read_csv('input.csv', chunksize=20000)
for chunk in reader:
# Process the chunk (DataFrame)
或者,您可能想要:
如果是這種情況,請在讀取每個文件時傳遞nrows=20000 (而不是chunksize )。 然后,所有返回的對象將只是DataFrames,你將能夠Concat的他們。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.