python - 如何用指定的步骤挑选矩阵的列
问题描述
我有一个 500 行 1024 列的矩阵 A。我想生成一个由 A 中均匀间隔的列组成的矩阵,比如步长为 2^5。我如何在 Numpy 中执行此操作?我没有在我的参考资料中看到这一点。
解决方案
您可以只使用切片:
import numpy as np
arr = np.random.rand(512,1024)
step_size = 2 ** 5
arr[:, ::step_size] # shape is (512, 32)
所以它所做的是保留所有行,同时以所需的步长获取所有列。您可以在以下链接中阅读有关 numpy 索引的信息: https ://numpy.org/doc/stable/user/basics.indexing.html?highlight=indexing#other-indexing-options
您可以将相同的逻辑应用于行或行和列,以获得更复杂的切片。
推荐阅读
- python - 服务器python客户端c++ 10061
- xpages - XPage 中的多值字段
- android - android NDK 中的系统调用
- r - 关于 R 中 optim() 中 L-BFGS-B 方法的边界约束的问题
- javascript - 自定义绑定中的淘汰 ObservableArray
- ldap - 按 OU 限制 LDAP 用户
- meteor - 流星创建抛出错误:module.js:549 无法为测试包安装 npm 依赖项
- reactjs - 通用包装 React 组件
- autodesk-forge - 从单个 .zip 触发多个翻译
- android - Dagger 2,在模块中提供应用程序上下文