如何隐藏此数组(不同维度numpy),
l= (array([0.08]), array([[ 0.56, -0.01, 0.46]), array([[ 0.60], [0.07], [0.03]]), array([[0., 0., 0., 0.]]), array([[0.]]))
进入1D数组,
l= array([0.08, 0.56, -0.01, 0.60, 0.07, 0.03, 0., 0., 0., 0., 0.])
答案 0 :(得分:1)
一种方法是使用numpy.hstack
和ravel
来平整各种维度。
import numpy as np
l = (np.array([0.08]), np.array([ 0.56, -0.01, 0.46]),
np.array([[ 0.60], [0.07], [0.03]]), np.array([[0., 0., 0., 0.]]),
np.array([[0.]]))
res = np.hstack(i.ravel() for i in l)
array([ 0.08, 0.56, -0.01, 0.46, 0.6 , 0.07, 0.03, 0. , 0. ,
0. , 0. , 0. ])
或者如果你想要一种功能性方法:
from operator import methodcaller
res = np.hstack(list(map(methodcaller('ravel'), l)))