读取CSV会创建过多的行/列

时间:2019-12-12 23:42:22

标签: pandas dataframe

我正在使用pandas库中的数据框。我在Excel中有一个数据表,我另存为CSV,然后致电

df = pd.read_csv("file.csv")

我希望框架看起来像

   Item1  Item2  Item3
0  12.00      3      2
1   4.00      8      4
2   3.14      2      8

但是我得到了

   Item1  Item2  Item3 Unnamed: 3 Unnamed: 4
0  12.00      3      2        NaN        NaN
1   4.00      8      4        NaN        NaN
2   3.14      2      8        NaN        NaN

或者有时是带有所有NaN值的多余行。看来pandas不知道CSV的实际大小。 Excel中的数据组织得很好,数据值都是非空的,并且完全在一个矩形中。我该如何解决?我可以对CSV进行修改以指定其正确大小吗?

根据要求,此处是数据片段。它下降到大约2500行,并且右边没有更多的值。

1 个答案:

答案 0 :(得分:1)

原始Excel文件中的单元格可能不为空(例如,空格)。如果您在熊猫中遇到2列未命名的列,请尝试删除原始Excel文件中的2列。

另一种方法是保留所有非unnamed的列。您可以执行以下操作:

real_cols = [x for x in df.columns if not x.startswith("Unnamed: ")]
df = df[real_cols]

然后您可以保存csv。