python - 如何在python numpy数组中添加字典值
问题描述
我正在尝试创建 numpy 数组和数据键是positions
, metadata
。它的输出应该如下所示
#sample output
['positions', metadata] #data keys when I print file_name.keys()
{'num_pos': 10, 'keypoints': [[4, 5, 6, 10, 11, 12], [1, 2, 3, 13, 14, 15]]} #values of metadata in dictionary when I print file_name['metadata']
我想要与上面相同的输出。下面是我获取所需 npz 文件的 python 代码。
#code sample
positions = [] #this step is working and values are saved in npz file, so I'm just skipping this step, my problem is in metadata key which is given below
metadata = {
'num_pos': 10,
'keypoints': [[4, 5, 6, 10, 11, 12], [1, 2, 3, 13, 14, 15]]
}
positions = np.array(positions).astype(np.float32)
np.savez_compressed('file_name.npz', position=positions, metadata=metadata)
使用上面的代码,我可以获得具有positions
但不是metadata
. 当我打印时file_name.keys()
,输出没['positions', 'metadata']
问题,但是当我打印时file_name['metadata']
出现以下错误。
ValueError: unsupported pickle protocol: 3
寻找有价值的建议
解决方案
推荐阅读
- html - Facebook 聊天代码未通过 html5 验证器
- javascript - 为什么在图像预加载器中使用 onload 时不能添加一组以上的对象条目?(包括可运行代码)
- r - R,填充单元格的嵌套条件
- meson-build - 将文件对象转换为字符串
- ruby-on-rails - 测试 XML 或 CSV 输出时,Rspec 神秘通过
- mysql - 不支持的子查询表达式“时尚”:子查询表达式仅引用外部查询表达式
- java - 为什么带有-jar的java忽略-classpath?
- hyperledger-fabric - 使用连接配置文件安装 Hyperledger Fabric 链码
- c# - 我可以将内存中的位图作为 jpeg 直接保存到 Azure
- javascript - javascript array.includes 在反应中无法正常工作