一、常规操作:
import numpy as np
a = np.array([[1, 2],
[3, 4]])
b = np.array([[5, 6],
[6, 5]])
1、加法操作
print(a+b)
print(np.add(a, b))
结果相同为:
[[6 8]
[9 9]]
2、减法操作
print(a-b)
print(np.subtract(a, b))
结果相同为:
[[-4 -4]
[-3 -1]]
3、乘法操作
print(a*b)
print(np.multiply(a, b))
结果相同为:
[[ 5 12]
[18 20]]
4、 除法操作
print(a/b)
print(np.divide(a, b))
结果相同为:
[[0.2 0.33333333]
[0.5 0.8 ]]
5、 开方操作
print(a/b)
print(np.sqrt(a))
结果相同为:
[[1. 1.41421356]
[1.73205081 2. ]]
二、维度不相同时矩阵的乘法操作:
import numpy as np
a = np.array([[1, 2],
[3, 4]])
b = np.array([[1, 2, 3],
[4, 5, 6]])
print(a.dot(b))
print(np.dot(a, b))
结果相同为:
[[ 9 12 15]
[19 26 33]]
三、常用函数
1、sum
a = np.array([[1, 2],
[3, 4]])
print(np.sum(a))
print(np.sum(a, axis=0)) # 列进行求和操作
print(np.sum(a, axis=1)) # 行进行求和操作
结果为:
10
[4 6]
[3 7]
2、mean求平均值
a = np.array([[1, 2],
[3, 4]])
print(np.mean(a))
print(np.mean(a, axis=0))
print(np.mean(a, axis=1))
结果为:
2.5
[2. 3.]
[1.5 3.5]
3、uniform 用来生成指定范围内的随机数值
a = np.array([[1, 2],
[3, 4]])
print(np.random.uniform(3, 4))
结果为:
3.645597297891273
4、tile用于将一个数组作为元素重复指定的次数
a = np.array([[1, 2],
[3, 4]])
print(np.tile(a, (1, 2))) # a元素一行两列
print(np.tile(a, (2, 1))) # a元素两行一列
print(np.tile(a, (2, 3))) # a元素两行三列
结果为:
[[1 2 1 2]
[3 4 3 4]]
[[1 2]
[3 4]
[1 2]
[3 4]]
[[1 2 1 2 1 2]
[3 4 3 4 3 4]
[1 2 1 2 1 2]
[3 4 3 4 3 4]]
5、 argsort 函数,用于将数组中的元素用于排序
a = np.array([[5, 8, 1, 2],
[3, 8, 9, 4]])
print(a.argsort()) # 输出的是下标
print(a.argsort(axis=0)) # 按照列进行比较
结果为:
[[2 3 0 1]
[0 3 1 2]]
[[1 0 0 0]
[0 1 1 1]]
6、 矩阵的转置
a = np.array([[5, 8, 1, 2],
[3, 8, 9, 4]])
print(a.T)
print(np.transpose(a))
结果相同:
[[5 3]
[8 8]
[1 9]
[2 4]]