我有一个包含4列的现有CSV文件(以逗号分隔,因此excel中一列中的所有值)
我如何编写代码以将例如值“ 10”添加到每一行(即长度)
另外,如何将字符串添加到这些行?
理想的输出为:
我尝试过
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?如果是这样,那么要添加什么?谢谢
答案 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)
这应该给你两行。