python - 访问 ndarray 的元素
问题描述
我正在研究一个机器学习问题,其中输入具有样本形状(10, 1, 5, 4)
,10
每个样本形状 (1,5,4)
。下面我展示更多细节:
X = np.random.randn(10, 1, 5, 4)
a = np.zeros(5, dtype=int)
b = np.ones(5, dtype=int)
y = np.hstack((a,b))
print(X.shape)
print(y.shape)
(10, 1, 5, 4)
(10,)
每个样本的值X
是一个代表四个参数的数组,因此:
X[0]
array([[[ 0.41246417, 1.0105981 , -0.64404467, -0.53073642],
[-0.81929058, -0.14408449, -0.80003834, 0.974497 ],
[-0.56111328, 0.63726127, 1.56704848, 1.16701553],
[-0.3643063 , -0.57204605, -0.36627686, 0.61098743],
[-0.25378511, -0.14519147, -0.22557196, 0.87733856]]])
在上文中,第一行也以这种方式[ 0.41246417, 1.0105981, -0.64404467, -0.53073642]
表示min_speed, avg_speed, min_vel, avg_vel
其他行。
但是我想创建一个新数组,它是一个堆栈,min_speed, avg_speed, min_vel, avg_vel
这样 min_speed = [0.41246417, -0.81929058, -0.56111328, -0.3643063, -0.25378511]
(即每种情况下的第一列),avg_speed =[1.0105981 , -0.14408449,0.63726127, -0.57204605, -0.14519147]
(第二列)就像那样。
我如何操纵这个?
解决方案
这将完成这项工作
X.transpose((0, 1, 3, 2))
推荐阅读
- python - 上一个关于 QTableView 中使用 PySide2 的文本样式的问题的新功能
- node.js - Angular:将 JS 类型“数字”传递给 HTTP 响应
- android - 如何在 react-native 中显示没有操作员的键盘
- awk - 如何对bash中另一列的前n行求和
- python - 将多行写入字符串中包含许多 %s 的文本文件
- php - 在 laravel 控制器中运行自定义工匠命令
- php - PHP 等效于 C++ 模板
- django - 对 LAN 上托管的 Django 的 Http 请求超时
- google-app-engine - 在 App Engine 上使用 Servlet 进行用户身份验证
- tig - 在 tig 中暂存所有文件