1.
np.stack(arrays,axis)
x1 = np.arange(9).reshape((3, 3))
print('x1:\n', x1, '\n')
x2 = np.arange(10, 19, 1).reshape((3, 3))
print('x2:\n', x2, '\n')
y2 = np.stack((x1, x2), axis=0)
print('axis=0时stack后:\n:', y2)
输出结果:
x1:
[[0 1 2]
[3 4 5]
[6 7 8]]
x2:
[[10 11 12]
[13 14 15]
[16 17 18]]
axis=0时stack后:(每个矩阵)
: [[[ 0 1 2]
[ 3 4 5]
[ 6 7 8]]
[[10 11 12]
[13 14 15]
[16 17 18]]]
axis=1时stack后:(每一行)
: [[[ 0 1 2]
[10 11 12]]
[[ 3 4 5]
[13 14 15]]
[[ 6 7 8]
[16 17 18]]]
axis=2时stack后:(每个元素)
: [[[ 0 10]
[ 1 11]
[ 2 12]]
[[ 3 13]
[ 4 14]
[ 5 15]]
[[ 6 16]
[ 7 17]
[ 8 18]]]
2.
np.random.seed(5) #指点种子
x = np.empty((3, 3)) # np.empty()返回一个随机元素的矩阵,大小按照参数定义。
输出
[[0.00000000e+000 0.00000000e+000 0.00000000e+000]
[0.00000000e+000 0.00000000e+000 9.15009576e-321]
[8.25456363e-312 8.25456363e-312 8.25548621e-312]]
3.
np.eye(n,k) #用于生成一个n维的正对角线全为1的数组,参数k可以调整对角线位置
np.diag(arrays,k) #可以输出数组arrays的对角线元素,参数k可以调整对角线位置
np.tile() #一个用于复制的函数
np.identity(k) # 返回的是k行k列的主对角线为1,其余地方为0的数组
4.
c = np.array([1,2,3,4])
np.tile(c, 2) #将c复制两次
array([1, 2, 3, 4, 1, 2, 3, 4])
np.tile(c,(4,1))#将c按4行一列方式(4,1)复制
array([[1, 2, 3, 4],
[1, 2, 3, 4],
[1, 2, 3, 4],
[1, 2, 3, 4]])
5.
from sklearn.metrics import accuracy_score
auc = accuracy_score(y, y_hat)
# 生成模型的auc值,y为实际值,y_hat为预测值
6.
# 转载至
(https://www.wandouip.com/t5i227883/)
np.mgrid[]
功能:返回多维结构,常见的如2D图形,3D图形的数组
a:b:c
c表示步长,为实数表示间隔;该为长度为[a,b),左开右闭
或:
a:b:cj
cj表示步长,为复数表示点数;该长度为[a,b],左闭右闭
np.mgrid[ 第1维,第2维 ,第3维 , …]
生成1D数组:
a=np.mgrid[-4:4:3j] #在[-4,4]区间内取3个值
>>>array([-4., 0., 4.])
生成个2D矩阵:
mgrid[[1:3:3j, 4:5:2j]] #生成的是3*2的矩阵
>>>
x:array([[1., 1.],
[2., 2.],
[3., 3.]])
y:array([[4., 5.],
[4., 5.],
[4., 5.]])
所以表示的结果是:
[[(1,4),(1,5)]
[(2,4),(2,5)]
[(3,4),(3,5)]
]
结果值先y向右扩展,再x向下扩展
7.
ndarray.flat
flat返回的是一个迭代器,可以用for访问数组每一个元素
n = np.arange(4).reshape(2,2)
for i in n.flat:
print(i)
0
1
2
3
print(list(n.flat))
>>>[0, 1, 2, 3]
8.np.random.multivariate_normal()
用于根据实际情况生成一个多元正态分布矩阵
multivariate_normal(mean, cov, size=None, check_valid=None, tol=None)
mean:mean是多维分布的均值维度为1;
cov:协方差矩阵,注意:协方差矩阵必须是对称的且需为半正定矩阵
size:指定生成的正态分布矩阵的维度
check_valid:这个参数用于决定当cov即协方差矩阵不是半正定矩阵时程序的处理方式.
它一共有三个值:warn,raise以及ignore。
9.np.vstack((x1,x2))/np.hstack((x1,x2))
x1 = np.arange(9).reshape(3,3)
array([[0, 1, 2],
[3, 4, 5],
[6, 7, 8]])
x2 = np.array(range(10,19)).reshape(3,3)
array([[10, 11, 12],
[13, 14, 15],
[16, 17, 18]])
np.vstack((x1,x2)) :按垂直方向(行顺序)堆叠数组构成一个新的数组
array([[ 0, 1, 2],
[ 3, 4, 5],
[ 6, 7, 8],
[10, 11, 12],
np.hstack((x1,x2)) :按水平方向(行顺序)堆叠数组构成一个新的数组
array([[ 0, 1, 2, 10, 11, 12],
[ 3, 4, 5, 13, 14, 15],
[ 6, 7, 8, 16, 17, 18]])
笔记(机器学习)
最新推荐文章于 2024-02-13 16:45:00 发布