是否有用于转换和平面映射 2D 数组行的 numpy api?



假设我有一个正整数的2d numpy数组:

[[1, 3]
[2, 7]]

对于每个元素,我想应用一个函数,将其转换为整数序列,给出:

[[[0,0,1],[0,1,1]]
[[0,1,0],[1,1,1]]]

然后我想把行变平为:

[[0, 0, 1, 0, 1, 1]
[0, 1, 0, 1, 1, 1]]

我知道这可以一步一步地完成,但也许有一个更好、高效的内存和cpu时间方面的Numpy/SciPy api可以用于如上所述的转换?谢谢

我有这个,但在我的书中它远非优雅和简洁:

def fn(x):
return np.array([int(c) for c in '{0:08b}'.format(x)])
F = np.frompyfunc(fn, 1, 1)
a = np.arange(6).reshape((2, 3))
np.vstack(np.hstack(F(a))).reshape((2, 24))

很难理解没有比CCD_ 1和CCD_;vstack

最新更新