numpy.savetxt未添加逗号分隔符。

11

numpy的savetxt函数没有添加逗号分隔符

我有一个包含以下内容的数组:

3.880631596916139792e-01
6.835074831218364011e-01
4.604322858429276133e-01
3.494236368132551673e-01
7.142120448019100287e-01
2.579415438181463793e-01
8.230159985476581674e-01
7.342531681855216652e-01
3.196536650498674748e-01
7.444435819161493439e-01

我将其保存如下:

 np.savetxt('x.train.1.txt',XTraining, delimiter=',') 

但是当我查看txt文件时,里面没有逗号。


你能否在上下文中发布你正在使用的确切代码? - Nick H
3个回答

16

我猜默认用例是存储一个列表的列表,这就是为什么你需要将其视为只有一个列表:

np.savetxt('x.train.1.txt',[XTraining], delimiter=',')

或者用逗号代替换行符(注意:这会添加一个尾部逗号)

np.savetxt('x.train.1.txt',XTraining, newline=',')

1
也许为什么OP的代码不起作用会对未来的读者有益。 - kmario23
@kmario23,刚刚在解决方案周围添加了一些文本。 - hansaplast
2
我认为你的第二个解决方案添加了一个尾随逗号。 - Paul Panzer
@PaulPanzer:谢谢,这是真的,我已经在答案中添加了一条注释。 - hansaplast

3
如果您想让它们分别显示在不同行,并用逗号隔开
np.savetxt('x.train.1.txt', XTraining[None, :], delimiter=',\n')

1
您可以指定一个格式,例如fmt ='%d,',其中包含您希望在输出中的逗号。
np.savetxt('x.train.1.txt',XTraining, fmt='%d,') 

同时适用于多列。
np.savetxt('x.train.1.txt',XTraining, fmt='%s, %f, %f,')

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接