假设我有一个正整数的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