问与答 python-pandas to_csv首先删除额外的列,怎么办?

beck · 2020-02-22 07:53:44 · 热度: 54

我正在尝试使用pandas创建csv,但是当我导出到csv时,它又给了我一行

d = {'one' : pd.Series([1., 2., 3.]),'two' : pd.Series([1., 2., 3., 4.])}
df0_fa = pd.DataFrame(d)
df_csv = df0_fa.to_csv('revenue/data/test.csv',mode = 'w')

所以我的结果是:

,one,two
0,1.0,1.0
1,2.0,2.0
2,3.0,3.0
3,,4.0

但是我想要的是

one,two
1.0,1.0
2.0,2.0
3.0,3.0
,4.0

猜你喜欢:
共收到 2 条回复
ternence #1 · 2020-02-22 07:53:44

您将看到索引列。 只需设置index=False

df_csv = df0_fa.to_csv('revenue/data/test.csv',mode = 'w', index=False)
ora #2 · 2020-02-22 07:53:45

要在不编制索引的情况下读取csv文件,可以取消设置index_col以防止熊猫将第一列用作索引。 在将csv保存回磁盘的同时,请不要忘记在index_col = False中设置index = false。这不会生成其他索引列。 否则,如果您需要从数据框中删除/删除特定的列,请使用read_csv,它对我的作用如下:

import pandas as pd
file_path = 'example_file.csv'
data_frame = pd.read_csv(file_path, index_col = False)
column_name = 'column'
data_frame = data_frame.drop(column_name, axis = 1) 
data_frame.to_csv(file_path, index = False)

在这种情况下,即使您的csv具有有效的索引列,也可以跳过read_csv中的index_col = False

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册