python - Python npy文件如何访问变量
问题描述
我npy
使用以下 tensorlayer 命令创建了一个数据集。
tl.files.save_any_to_npy(
save_dict={
'images': aggregated_images,
'actions': aggregated_actions,
'rewards': aggregated_rewards},
name='./data/episode0.npy')
我可以通过使用加载文件(奖励/动作是标量数组;图像是矩阵数组)
import numpy as np
data = np.load('./data/episode0.npy')
我认为这类似于字典(print(data)
作品)。因此,我尝试了
actions = data['actions']
但这给了我以下错误
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IndexError: only integers, slices (`:`), ellipsis (`...`), numpy.newaxis (`None`) and integer or boolean arrays are valid indices
>>> actions = data['rewards']
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IndexError: only integers, slices (`:`), ellipsis (`...`), numpy.newaxis (`None`) and integer or boolean arrays are valid indices
如何解决此错误?我想我可以使用三个变量来解决问题,但我宁愿只跟踪一个文件。
解决方案(归功于 Goyo):
import tensorlayer as tl data = tl.files.load_npy_to_any(path='./data', name='episode0.npy') actions = data['actions']
解决方案
尝试这个:
data = np.load('./data/episode0.npy').item()
data["actions"]
推荐阅读
- python - AttributeError(艰难地学习 Python)
- c# - C# Form Multiline HTML in String 给出错误
- r - 如何修复ggplot2中的X轴编号顺序?
- c# - 使用 c# 从三个组合框中获取日期为 dd/mm/yyyy
- r - 在 R 中找不到函数“knnImputation”
- sql - 在 Laravel Eloquent 中编写此查询的最佳方式是什么?
- android - 如何更改 VPN 弹出对话框权限?
- java - 如何解决“线程中的异常”AWT-EventQueue-0“java.lang.NullPointerException”?
- reactjs - 在同一个 laravel 应用程序项目中托管 react 应用程序和 laravel 后端(管理面板)
- composer-php - 从 vcs 存储库中找不到包