np.floor
np.floor 返回不大于输入参数的最大整数
a=np.array([1.2,3.4,22.44,55,-12.3])
print(np.floor(a))
[ 1. 3. 22. 55. -13.]
np.r_和np.c_的用法
np.c_按行合并两个矩阵
np.r_按列合并两个矩阵
import numpy as np
a=np.array([[1,2,3],[2,3,4]])
b=np.array([[100,200,300],[20,30,40]])
c=np.c_[a,b]
print(c)
print(np.r_[a,b])
[[ 1 2 3 100 200 300]
[ 2 3 4 20 30 40]]
[[ 1 2 3]
[ 2 3 4]
[100 200 300]
[ 20 30 40]]
np.meshgrid()
生成网格点坐标矩阵
demo:
import numpy as np
import matplotlib.pyplot as plt
x=np.arange(0,3,0.5)
y=np.arange(1,4,0.5)
X,Y=np.meshgrid(x,y)
print(X)
print(Y)
plt.plot(X,Y,color='red',marker='.',linestyle='')
plt.show()
[[0. 0.5 1. 1.5 2. 2.5]
[0. 0.5 1. 1.5 2. 2.5]
[0. 0.5 1. 1.5 2. 2.5]
[0. 0.5 1. 1.5 2. 2.5]
[0. 0.5 1. 1.5 2. 2.5]
[0. 0.5 1. 1.5 2. 2.5]]
[[1. 1. 1. 1. 1. 1. ]
[1.5 1.5 1.5 1.5 1.5 1.5]
[2. 2. 2. 2. 2. 2. ]
[2.5 2.5 2.5 2.5 2.5 2.5]
[3. 3. 3. 3. 3. 3. ]
[3.5 3.5 3.5 3.5 3.5 3.5]]
np.array() np.asarry()
array和asarray都可将结构数据转换为ndarray类型。
但是主要区别就是当数据源是ndarray时,
array仍会copy出一个副本,占用新的内存,但asarray不会。
demo
import numpy as np
a=[[1,2,3],[4,5,6],[7,8,9]]
b=np.array(a)
c=np.asarray(a)
a[2]=1
print(a)
print(b)
print(c)
a=np.random.random((3,3))
b=np.array(a,dtype='float64')
c=np.asarray(a,dtype='float64')
a[2]=1
print(a)
print(b)
print(c)
[[1, 2, 3], [4, 5, 6], 1]
[[1 2 3]
[4 5 6]
[7 8 9]]
[[1 2 3]
[4 5 6]
[7 8 9]]
[[0.74161537 0.04215278 0.34541281]
[0.13461089 0.60305725 0.05256549]
[1. 1. 1. ]]
[[0.74161537 0.04215278 0.34541281]
[0.13461089 0.60305725 0.05256549]
[0.38226812 0.41247654 0.60357034]]
[[0.74161537 0.04215278 0.34541281]
[0.13461089 0.60305725 0.05256549]
[1. 1. 1. ]]
np.argmax(a,axis=None)
import numpy as np
“”"
找出列表元素中所在轴向数据的最大值的索引值
“”"
test = np.array([[1, 2, 3], [2, 3, 4], [5, 4, 3], [8, 7, 2]])
print(np.argmax(test, 0))
print(np.argmax(test, 1))
print(np.argmax(test, -2))
print(np.argmax(test, -1))
[3 3 1]
[2 2 0 0]
[3 3 1]
[2 2 0 0]
np.newaxis
增加新的维度
print(diabetes.data[:,2].shape)
diabetes_X=diabetes.data[:,np.newaxis,2]
print(diabetes_X.shape)
(442,)
(442, 1)
np.reshape 参数-1
新数组的shape属性应该要与原来数组的一致,即新数组元素数量与原数组元素数量要相等。一个参数为-1时,那么reshape函数会根据另一个参数的维度计算出数组的另外一个shape属性值。
numpy 去重
names=np.array([‘1’,‘1’,‘W’,‘W’,‘W’,‘X’,‘X’])
np.unique(names)
array([‘1’, ‘W’, ‘X’], dtype=’<U1’)