【问题标题】:How to drop and add a new list of columns to a .csv file?如何将新的列列表拖放到 .csv 文件中?
【发布时间】:2016-05-26 21:52:58
【问题描述】:

我将使用 pandas to_csv() 函数的预处理文件保存到 .csv 文件,如下所示:

return df.to_csv(output_file, sep = '|')

.csv 文件的输出如下所示:

|id|content|content2
0|id1|some content|some content
1|id1|some content|some content
....
n|idn|more content|even more content

从上面的 pandas 对象可以看出,列的格式不是很好:

|id|content|content2

如何删除以上列并将它们替换为这个新的列设置:

id|content|content2

换句话说:

id|content|content2
id1|some content|some content
id1|some content|some content
....
idn|more content|even more content

我都准备好了:

df = pd.read_csv(output_file, sep='|', index_col=1)[['id','content', 'content2']]

【问题讨论】:

    标签: python python-2.7 python-3.x csv pandas


    【解决方案1】:

    看起来你只是想从输出中删除索引

    df.to_csv(output_file, sep = '|', index=False)
    

    【讨论】:

    • 感谢您的帮助!无论如何在使用to_csv 函数之前删除索引,以便在最终的 .csv 文件中添加新标题?
    • DataFrames 总是有一个索引,所以没有一个索引,你可以用另一列替换它(例如df.index == df['some_column']),或者你可以只得到@987654325的值@ 和 df.values,它返回一个包含 DataFrame 值的 Numpy 数组。
    • df = pd.DataFrame({'a':[1,2,3],'b':[4,5,6],'c':['d','e','f']}),然后重新索引df.index = df['c'],然后删除现在用作索引的列df.drop('c',axis=1,inplace=True)
    • 您似乎正在引用名称为 '' 的列,而该列在您的数据框中不存在
    • 当前索引没有名称,这就是您在输出标题中看到该名称的原因——我认为您最简单的解决方案是使用我在原始答案中发布的代码
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-30
    • 1970-01-01
    • 2020-01-04
    • 1970-01-01
    • 2014-05-13
    相关资源
    最近更新 更多