python-3.x - np.save 正在将浮点数转换为奇怪的字符
问题描述
我正在尝试将结果附加到正在进行的 csv 文件中。每个结果都以 nd.array 的形式出现:
[IN]: Print(savearray)
[OUT]: [[ 0.55219001 0.39838119]]
最初我尝试过
np.savetxt('flux_ratios.csv', savearray,delimiter=",")
但这每次我保存时都会覆盖旧数据,所以我试图像这样附加数据:
f = open('flux_ratios.csv', 'ab')
np.save(f, 'a',savearray)
f.close()
这是(在某种意义上)附加,但是它将数字数据保存为奇怪的字符,如以下屏幕截图所示:
我不知道为什么或如何发生这种情况,所以任何帮助将不胜感激!
解决方案
首先,np.save
不写文本而写np.savetxt
。您正在尝试将二进制与文本结合起来,这就是为什么您在尝试读取文件时会得到奇怪的字符。
你可以np.save(f, 'a', savearray)
改成np.savetxt(f, savearray, delimiter=',')
.
否则你也可以考虑pandas.to_csv
在附加模式下使用。
推荐阅读
- python - 需要帮助 colab 中的 flask-ngrok 不再工作?
- php - 如何在 Perl 中获取浏览器 cookie?
- ssis - SSIS PGP解密 - 如何在没有弹出窗口的情况下输入密码?
- java - 如何使用子列表作为键和父对象作为值来映射列表
- python - How to make a module act as package with __path__ variable?
- python - 查找短文本的模型
- php - 如何使用 PHP SimpleXMLElement 删除命名空间?
- django - DjangoAdmin:如何在使用“AutocompleteSelect”小部件时保持外键的“+✎✕”按钮打开
- chart.js - 在Chartjs中为指针填充颜色
- reactjs - Test failed of a Component in react using typescript