python-3.x - 在python中生成多维网格
问题描述
我有一个离散的 8 维有界空间,我想在所有可能的组合上获得一个网格,形状为 (N,8)。它应该看起来像:
import numpy as np
myGrid = np.array([[1,1,1,1,1,1,1,1],[1,1,1,1,1,1,1,2],...])
所有 8 个维度的边界都不相等。
解决方案
您可以使用indices
和moveaxis
:
np.moveaxis(np.indices(<your shape>), 0, -1).reshape(-1, 8)
这将从零开始,因此添加 1 以获得您想要的输出。
推荐阅读
- c++ - 如何使用 libcurl c++ 从 url 保存 XML 文件
- vue.js - _vm.paginated 不是 vue-paginate 的函数错误
- javascript - 为什么 shuffle 在 React 中不起作用?
- c# - C# NewtonSoft.Json : 允许 MongoDB 驱动程序使用 ShouldSerialize 方法
- android - 如何处理 exoplayer 库抛出的 IllegalStateException
- ffmpeg - 如何在 FFmpeg 4.0 中将 5.1 音频拆分为离散的 AAC 流
- node.js - 从回调设置全局变量
- javascript - CSS + JS – sidenav 打开时右推正文而不调整图像大小
- java - 给定一个字符串,找出它是否满足 IPv4 地址命名规则(代码审查)而不是寻找其他解决方案
- ios - 如何在 Swift 中以编程方式更改设备方向?