熊猫读csv返回额外的未知列

时间:2020-05-12 22:34:30

标签: pandas

我正在通过使用以下两个列表组合来从pandas数据框中创建一个csv文件:

df= pd.DataFrame(list(zip(patients_full,  labels)),
                  columns=['id','cancer']) 

df.to_csv("labels.csv")

但是当我回读csv时,出现了一个未知的列unnamed?我该如何删除?

 Unnamed: 0          id  cancer
0            0  HF0953.npy       1
1            1  HF1058.npy       3
2            2  HF1071.npy       3
3            3  HF1122.npy       3
4            4  HF1235.npy       1
5            5  HF1280.npy       2
6            6  HF1344.npy       1
7            7  HF1463.npy       1
8            8  HF1489.npy       1
9            9  HF1490.npy       2
10          10  HF1587.npy       2
11          11  HF1613.npy       2

2 个答案:

答案 0 :(得分:0)

输出中的该列是数据框的索引。不将其包括在输出中:df.to_csv('labels.csv', index=False)。在熊猫文档中可以找到有关该方法here的更多信息

答案 1 :(得分:0)

之所以发生这种情况,是因为您进行to_csv("labels.csv")时默认会保存索引列。由于您要保存的数据框中的索引列没有名称,因此当您读取read_csv("labels.csv")时,它会被视为所有其他列,但名为'Blank'的列将变为Unnamed: 0 。为避免这种情况,您有2个选择:

选项1-无法读取索引:

read_csv("labels.csv", index_col=False)

选项2-不保存索引:

to_csv("labels.csv", index=False)