python - numpy.load 给出 ValueError: descr is not a valid dtype descriptor:
问题描述
我npy
在我的 C++ 程序中使用以下方法编写了一个文件cnpy
:
vector < double > vrmsd(max,99.9);
.
.
.
cnpy::npy_save(frmsd,&vrmsd,{nfeat},"w");
按照这里的例子。
但是当我尝试使用加载文件时numpy
出现错误
y = np.load(frmsd)
ValueError: descr is not a valid dtype descriptor: '<?24'
下面我粘贴一个包含长度为 2hexdump -C
的npy
文件的结果vector<double>
(应该包含 46.950、43.94):
00000000 93 4e 55 4d 50 59 01 00 46 00 7b 27 64 65 73 63 |.NUMPY..F.{'desc|
00000010 72 27 3a 20 27 3c 3f 32 34 27 2c 20 27 66 6f 72 |r': '<?24', 'for|
00000020 74 72 61 6e 5f 6f 72 64 65 72 27 3a 20 46 61 6c |tran_order': Fal|
00000030 73 65 2c 20 27 73 68 61 70 65 27 3a 20 28 32 2c |se, 'shape': (2,|
00000040 29 2c 20 7d 20 20 20 20 20 20 20 20 20 20 20 0a |), } .|
00000050 10 4d 1b 02 00 00 00 00 20 4d 1b 02 00 00 00 00 |.M...... M......|
00000060 20 4d 1b 02 00 00 00 00 00 ff 00 00 00 ff 00 00 | M..............|
00000070 c8 33 19 02 00 00 00 00 94 99 90 5b 00 00 00 00 |.3.........[....|
00000080
此问题也已发布到cnpy
github 站点。只是想知道是否有什么我可以做的numpy
吗?谢谢。
解决方案
npy_save()
根据您提供的示例中的参数格式,您有一个错误。
代替,
cnpy::npy_save(frmsd,&vrmsd,{nfeat},"w");
你要,
cnpy::npy_save(frmsd,&vrmsd[0],{nfeat},"w");
推荐阅读
- c# - 如何将套接字监听为 IEnumerable?
- php - 联系表格提交而不检查 reCAPTCHA
- hibernate - JPA Map 不存储空值
- python - 无法使用 python 脚本和 GCP 服务帐户凭据将文件上传到 GCP 存储桶
- php - 将类属性添加到提供的 Bundle :如何?
- php - 在php中添加记录时未将正确的数据插入数据库
- java - 如何在其他 Xml 文件中包含 Xml 文件
- r - 具有多个种子的时间序列聚类自动化
- python - 从字符串列表中返回带有整数和字符串的列表
- java - 在 TomEE 7.1.0 服务器上部署 Java 11 SpringBoot 应用程序错误