如何根据另一个数组中的某些条件创建数组。例如,如果我有一个数组给我一个基数,一个开始和结束数字,然后多个其他基数。我想创建一个新的矩阵,其中列出了基本编号,循环编号(基于开始/结束)以及与此相关的另一个基本编号,而忽略了0。我试图找到一种方法来做到这一点,而不使用for循环。根据numpy数组中的条件创建一个新的numpy数组
例如,如何从阵列A获得B阵列
Base Start End Base1 Base2 Base3
A=np.array([[100, 1, 2, 101, 102, 103],
[101, 3, 4, 100, 103, 0]])
B=np.array[[100,1,101,1],
[100,1,102,1],
[100,1,103,1],
[100,2,101,2],
[100,2,102,2],
[100,2,103,2],
[101,3,100,3],
[101,3,103,3],
[101,4,100,4],
[101,4,103,4]]
感谢您的帮助!
你可能会用['numpy.tile'](http://docs.scipy.org/doc/numpy/reference/generated/numpy.tile.html)和['numpy .repeat'](http://docs.scipy.org/doc/numpy/reference/generated/numpy.repeat.html),但为什么要这么长时间不使用循环? – wflynny
我不明白你的目标格式。为什么'B'的第4行以'1'而不是'2'结尾?如果您使用显式循环发布缓慢版本,这将使我们更容易理解您想要执行的操作。 – amaurea
对不起,这是我的错误,第4-6行应该以2.结尾。已编辑。现在清楚还是你想让我更多地分解它? – user3357979