-1

我有一个包含 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 吗?如果是这样,那么要添加什么?谢谢

4

1 回答 1

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)

这应该给你两行。

于 2019-06-25T13:39:48.250 回答