python - 多维列表的重塑
问题描述
我有一个带有 shape 的列表(50, 100, 20, 20)
,我将其重塑如下
x = np.array(cells)
train = x[:,:70].reshape(-1,400).astype(np.float32) # Size = (3500,400)
test = x[:,70:100].reshape(-1,400).astype(np.float32) # Size = (1500,400)
我是 python 和 numpy 的新手,我想知道我的 numpy 数组的形状 分别如何(50, 100, 20, 20)
变化(3500,400)
(1500,400)
解决方案
是一个 4维x
数组。
索引操作
- step-1
x[:,:70]
产生一个形状数组 (50, 70, 20, 20) - step-2
x[:,70:100]
产生一个形状数组 (50, 30, 20, 20)
然后将.reshape(-1,400)
4 维数组重新组织成 2 维数组,最终数组将有 400 列(无论创建多少行)。
现在,步骤 1中的元素数量为 1400000 ( 50*70*20*20
),步骤 2中的元素数量分别为 600000 ( 50*30*20*20
)。
因此,当您将 1400000 个元素压缩到 400 列中时,您将获得 3500 行。同样,当您将 600000 个元素压缩到 400 列中时,您将获得 1500 行。
希望这可以帮助!
推荐阅读
- python - Django 管理员在使用 get_form() 时缺少添加/编辑按钮
- azure - 巴西葡萄牙语的 Microsoft Azure 语音到文本
- sql - 将连接字符串中的 Provider 更改为 TLS1.2 Compatible 会导致参数因日期时间而失败
- visual-studio-code - VSCode - 黑色 UI/菜单字体
- c++ - 共享队列的线程安全
- php - 尝试从数据库表行在 Wordpress 中创建帖子
- regex - Grep - 如何找到至少 3 倍于特定数字的行
- html - 如何在循环外获取值 - powershell
- html - 如何在 100% 宽度的导航栏上居中对齐我的链接?
- excel - 索引匹配 - 从表格列中删除空白