【numpy操作】numpy的函数

文章目录

  • 前言
  • 一、数组的拼接与切分
    • 1 np.hstack()和np.vstack()
    • 2 np.hsplit()和np.vsplit()
  • 二、 numpy其他函数
    • 1.np.hypot(x1,x2)
    • 2.np.interp()插值函数


前言

numpy的一些函数。

一、数组的拼接与切分

1 np.hstack()和np.vstack()

数组的拼接,水平拼接与竖直拼接。

a = np.array([[1, 2], [3, 4]])
b = np.array([[5, 6], [7, 8]])
c = np.hstack((a, b))
c = np.vstack((a, b))
print(c)
print(d)

运行结果:原来22的数组拼接后变为24的数组

c
[[1 2 5 6]
 [3 4 7 8]]
 d
 [[1 2]
 [3 4]
 [5 6]
 [7 8]]

2 np.hsplit()和np.vsplit()

数组的分割,水平分割与竖直分割。
水平分割是竖着切,竖直分割横着切。

a = np.array([[1, 2], [3, 4]])
b = np.array([[5, 6], [7, 8]])
c = np.vstack((a, b))
d = np.vsplit(c,2)
print(d)

#此处的参数2代表将数组d竖直分割成两个数组

[array([[1, 2], [3, 4]]), 
array([[5, 6],[7, 8]])]

#如果是(1,2)则代表在位置1和位置2处分割,共分割成三份

[array([[1, 2]]),
 array([[3, 4]]), 
 array([[5, 6],[7, 8]])]

二、 numpy其他函数

1.np.hypot(x1,x2)

逐元素计算,相当于给定了两个直角边求斜边大小
即返回值= ( x 1 2 + x 2 2 ) \sqrt{(x_1^2+x_2^2)} (x12+x22)

a = np.array([3, 3, 3])
b = np.array([4, 4, 4])
c = np.hypot(a, b)
print(c)
[5. 5. 5.]

2.np.interp()插值函数

简单的一维线性插值函数

import matplotlib.pyplot as plt
_x=np.linspace(0,2*np.pi,11)#在0到2Π之间有11个点
_y=np.sin(_x)
x=np.linspace(0,np.pi*2,33)#x是横坐标
y=np.interp(x,_x,_y)#插值得到新的y值
plt.figure()
plt.plot(_x,_y,"o")
plt.figure()
plt.plot(x,y,"ro")
plt.show()
函数 功能
np.nanmax(a,axis=None) 忽略nan返回数组中的最大值
np.nanargmax(a,axis=None) 忽略nan返回数组中最大值的索引
np.ptp(a,axis=None) 返回数组中元素最大值与最小值的差
np.nanmedian(a,axis=None) 忽略nan返回数组中的中位数
np.sum(a,axis=None) 忽略nan按指定轴求元素之和
np.nancumsum(a,axis=None) 忽略nan按指定轴求元素的累进和
np.diff(a,axis=-1) 按指定轴返回相邻元素的差
np.nanprod(a,axis=None) 忽略nan按指定轴求元素之积
np.nanmean(a,axis=None) 忽略nan返回数组中元素的算数平均数
np.average() 根据权重数据,返回数组所有元素的加权平均值
np.nanvar(a) 忽略nan返回数组方差
np.nanstd(a) 忽略nan返回数组标准差
np.corrcoef 返回两个数组的皮尔逊积矩相关系数
np.interp() 线性插值函数,返回插值后得到的y值

你可能感兴趣的:(numpy,numpy,python,机器学习)