numpy降维方法
Posted Yuzzz.
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了numpy降维方法相关的知识,希望对你有一定的参考价值。
title: numpy降维方法
numpy中的降维方法
numpy中的降维方法:
flat():返回一个iterator,然后去遍历
flatten():将多维数组拉平,并拷贝一份
ravel():将多维数组拉平(一维)
squeeze():除去多维数组中,维数为1的维度,如315降维后3*5
reshape(-1):多维数组,拉平
reshape(-1,5),其中-1表示我们不用亲自去指定这一维度的大小,理解为n维
代码示例:
import numpy as np
a = np.array([[1, 2, 3], [4, 5, 6]])
c = []
for x in a.flat:
c.append(x)
print('flat迭代器降一维:\\n', c)
d = a.flatten()
print('flatten方法降一维:\\n', d)
e = a.ravel()
print('ravel方法降一维:\\n', e)
g = np.squeeze(a)
print('squeeze方法降一维:\\n', g)
f = a.reshape(-1)
print('reshape方法降一维:\\n', f)
a.resize((1, 6))
print('resize方法:\\n', a)
结果:
flat迭代器降一维:
[1, 2, 3, 4, 5, 6]
flatten方法降一维:
[1 2 3 4 5 6]
ravel方法降一维:
[1 2 3 4 5 6]
squeeze方法降一维:
[[1 2 3]
[4 5 6]]
reshape方法降一维:
[1 2 3 4 5 6]
resize方法:
[[1 2 3 4 5 6]]
numpy中关于数组的合并,拆分,及降维
numpy中数组的合并:
1.stack函数,合并后,数组维数+1,其实就是将数组按照某种某个轴线进行合并形成新的数组。
a=np.ones((5,3)) b=np.zeros((5,3)) c=np.stack((a,b),axis=1) print(c.shape)#维数为5,2,3,在axis=1方向增加一个维度
2.hstack函数,将数组2水平拼接到数组1
3.vstack函数,将数组2垂直拼接到数组1下方。
4.column_stack()函数,等价于hstack函数。
5.row_stack()函数,等价于vstack函数
numpy中数组的降为一维:
flatten(),ravel()
a=np.ones((5,3))
b=np.zeros((5,3))
c=np.stack((a,b),axis=1)
print(c.shape)
以上是关于numpy降维方法的主要内容,如果未能解决你的问题,请参考以下文章