python-3.x - 在 python 中将 3D numpy 数组转换为 2D 数组
问题描述
我知道以前有人问过这个问题,但它并没有按照我的意愿去做。我有一个 3D 形状数组 (66183,59,5),我想更改它 (66183,59*5)。例如一个数组:
array([[[ 1., 5., 4.],
[ 1., 5., 4.],
[ 1., 2., 4.]],
[[ 3., 6., 4.],
[ 6., 6., 4.],
[ 6., 6., 4.]]])
我想将其转换为 2D,如下所示:
array([[1,5,4,1,5,4,1,2,4],
[3,6,4,6,6,4,6,6,4]])
我怎样才能做到这一点?见解将不胜感激。
解决方案
您可以使用np.array.reshape
,并且您需要传递所需形状的元组。
给定数组arr
:
arr.reshape((2,9))
array([[1., 5., 4., 1., 5., 4., 1., 2., 4.],
[3., 6., 4., 6., 6., 4., 6., 6., 4.]])
arr
对于具有 shape的数组((66183,59,5))
,您可以将其重塑为(66183,59*5)
使用arr.reshape((66183,295))
推荐阅读
- python - psycopg2:TypeError:预期的字节或unicode字符串,得到了quoted_name
- swift - NSStatusItem 未显示在菜单栏中
- database - 无法启动 clickhouse 服务,../data/default/ 中的文件太多
- javascript - 替换动态表中的整个表行
- java - 服务器发送事件端点
- unity3d - Unity3D 相对于原始方向操纵对象方向
- sql - 运行总 sql SAP B1 - 找不到解决它的正确方法
- java - 在 Android Firebase 存储中上传文件后如何获取文件下载 URL?getDownloadUrl() 不工作
- javascript - SweetAlert2 蹩脚的文字
- javascript - JS fetch,没有得到响应的标题