我编写的代码用于绘制两个光谱的平均值,但我还需要将平均值写入文本文件。我使用以下命令来执行此操作(x3和y3是包含平均x和y值的数组):
np.savetxt('averaged_spectra.txt', np.transpose([x3,y3]))
这很好用,但是数组x3中的值实际上是四位和五位整数,而我得到的18位浮点输出看起来很糟糕,并且与我开始使用的光谱文件有点不协调。如何将x3数组的元素写为整数值,同时将y3的元素保持为float?
答案 0 :(得分:0)
快速方法是将参数fmt="%g"
添加到savetxt
调用:
np.savetxt('averaged_spectra.txt', np.transpose([x3,y3]), fmt="%g")
告诉savetxt
使用"%g"
作为每个号码的格式。它将整数值浮点数打印为整数。
您还可以使用包含两个字段规范的格式字符串。这使您可以控制每列的格式。例如,
np.savetxt('averaged_spectra.txt', np.transpose([x3,y3]), fmt="%6d %26.18e")