[numpy] ndarray.flatten(), ndarray.reshape(-1), np.concatenate(c, axis=0)二维数组变为一维数组

方法一:a.flatten()
a = [[[1,2],3],[4,[5,6]],[7,8,9]]  
print(flatten(a))  
或a.flatten()
注意该方法不能用于list类型,只能用在数组

方法二:array.reshape(-1)
numpy.array(a).reshape(n,n)
a.reshape(-1) #-1代表不知后一列多少个,随前面选择的情况定
out: [1,2,3,4,5,6,7,8,9]
注意:a.reshape(1,-1)代表的是变为二维数组

要想a变为几维数组,括号中就写几个数字
如a.reshape(1,-1,1)就是三维数组

方法三:
c是array型数组
e = np.concatenate(c, axis=0)

方法四:双层循环 a是列表list
>>> a = [[1,3],[2,4],[3,5],["abc","def"]]  
>>> a1 = [y for x in a for y in x]  
阅读更多 登录后自动展开
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页