如何将值附加到现有的逗号分隔的CSV(Excel)文件中

时间:2019-06-25 13:32:17

标签: python excel xlsxwriter openxlsx

我有一个包含4列的现有CSV文件(以逗号分隔,因此excel中一列中的所有值) enter image description here

我如何编写代码以将例如值“ 10”添加到每一行(即长度)
另外,如何将字符串添加到这些行?

理想的输出为:
enter image description here


我尝试过

a = np.array([2,5])
b = np.array([1000,3000])
c = np.array([10])
d = np.array(["both"])

combined = np.array(list(zip(a,b,c,d)))

-- output of combined: --
array([['2', '1000', '10', 'both']], dtype='<U11')

当我使用np.savetxt时,遇到错误消息:

np.savetxt("testfile.csv", combined, delimiter=",")  

Error:
Mismatch between array dtype ('<U11') and format specifier

谁能找到解决方案?我是否需要格式化np.savetxt?如果是这样,那么要添加什么?谢谢

1 个答案:

答案 0 :(得分:0)

由于数组的混合类型,刷新到文件时需要指定格式化程序:

尝试:

np.savetxt("testfile.csv", combined, fmt='%s',delimiter=",")  

每个条目在写入之前都被强制转换为字符串。

要解决评论中的问题,

a = np.array([2,5])
b = np.array([1000,3000])
c = np.array([10]*2)
d = np.array(["both"]*2)

这应该给你两行。