在下面的代码中,我想使用" numpy.savetxt"将数组保存到单行文件中。但是我真的不确定我是否能得到这个结果。
import numpy as np
if __name__ == '__main__':
array = np.array([[ 6, -2.86751284, -0.35808319, 1.79360812],
[ 6., -1.59351284, -0.02808319, -0.47039188],
[ 6., 0.51848716, 0.21791681, 0.17060812],
[ 6., 1.63251284, -0.12208319, 0.90460812],
[ 6., -0.26051284, 0.03991681, 1.33660812],
[ 6., 1.87948716, 0.43391681, 0.21960812],
[ 6., 2.52048716, 0.45191681, 1.44760812],
[ 6., 0.40448716, 0.04591681, 2.58360812],
[ 6., 1.81248716, 0.30391681, 2.62260812]], np.float32)
np.savetxt("img/file.txt", array, fmt="%.3d")
我想要一个像" 006,-002,-003,001,006,-001 ......"将所有列和行放在文件的一行中,但用逗号分隔。 我可以用" numpy.savetxt"或者我是否必须遍历数组才能得到这个结果?
谢谢。
答案 0 :(得分:3)
这应该产生你想要的东西:
np.savetxt("file.txt", array.flatten(), fmt="%.3d", newline = ", ")
cat file.txt
006, -002, 000, 001, 006, -001, 000, 000, 006, 000, 000, 000, 006, 001,
000, 000, 006, 000, 000, 001, 006, 001, 000, 000, 006, 002, 000, 001,
006, 000, 000, 002, 006, 001, 000, 002,