我尝试创建csv文件,保存,稍后再读取,然后将(concat
)数据添加到底部 - 并多次执行此过程。例如,我的设置是:
import pandas as pd
df3 = pd.DataFrame(columns=('col1','col2'))
df3.to_csv('example.csv', sep=',')
print(df3)
生成一个空白的csv文件,只包含看起来像这样的列标题(这就是我想要的数据):
Empty DataFrame
Columns: [col1, col2]
Index: []
然后,我生成一个包含行信息(索引)的新数据框,打开旧的(df3
)csv文件,并将.concat()
打开到文件中。
df1 = pd.DataFrame({'col1':list("abc"),'col2':list("def")})
df3 = pd.read_csv('example.csv', sep=',')
print(df3)
print(df1)
df3 = pd.concat([df3, df1], ignore_index=True)
print(df3)
df3.to_csv('example.csv', sep=',')
但是当我阅读example.csv
文件(df3
)时,它实际上会生成一个如下所示的数据框:
Empty DataFrame
Columns: [Unnamed: 0, col1, col2]
Index: []
现在有一个额外的专栏。
我的实际代码限制了.read_csv
/ .to_csv
并且它会引发错误,因为我尝试读取/写入的内容并不是我发送的内容(我不是&# 39; t think)。
我尝试在方法中添加ignore_index=True
,但是并没有这样做。我还试着准确回读我的内容,但它仍会生成Unnamed
列。
列中的错误数据有一些信息here - 不是很重要。
显然有一个简单的答案,我无法弄清楚。
答案 0 :(得分:0)
当您将csv文件读入df3
时,您可以使用
df3 = pd.read_csv('example.csv', sep=',', index_col=0)
然后你将没有未命名的专栏。