numpy

Posted sniperths

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了numpy相关的知识,希望对你有一定的参考价值。

创建array

技术图片
 1 import numpy as np
 2 
 3 a = np.array([1, 2, 3], dtype=np.int32)
 4 print(a.dtype)
 5 
 6 b = np.array([1, 2, 3], dtype=np.float)
 7 print(b.dtype)
 8 
 9 # 一维数据
10 c = np.array([1, 2, 3])
11 print(c)
12 
13 
14 # 二维矩阵
15 d = np.array([[1, 2, 3], [4, 5, 6]])
16 print(d)
17 
18 # 三维矩阵
19 e = np.array([[[1, 2, 3], [4, 5, 6]]])
20 print(e)
21 
22 
23 # 全为0的矩阵 2行3列
24 # zero = np.zeros((2, 3))
25 zero = np.zeros((2, 3), dtype=np.int32)
26 print(zero)
27 
28 # 全为1的矩阵
29 # one = np.ones((3, 4))
30 one = np.ones((3, 4), dtype=np.int32)
31 print(one)
32 
33 
34 # empty 接近于0 看上去是0 但不是0
35 empty = np.empty((3, 2))
36 print(empty)
37 
38 # 创建矩阵
39 f1 = np.arange(10)
40 f2 = np.arange(4, 10)
41 f3 = np.arange(1, 10, 3)
42 print(f1)
43 print(f2)
44 print(f3)
45 
46 # 重新定义矩阵的形状
47 g = np.arange(18).reshape(3, 6)
48 print(g)
View Code

 

 numpy的运算1

技术图片
import numpy as np

arr1 = np.array([[1, 2, 3],
                 [4, 5, 6]])

arr2 = np.array([[1, 1, 2],
                 [2, 3, 3]])

# 矩阵加法
a = arr1 + arr2
print(a)

# 矩阵减法
b = arr1 - arr2
print(b)

# 矩阵乘法
c = arr1 * arr2
print(c)

#
d = arr1 ** arr2
print(d)

# 除法
e = arr1 / arr2
print(e)

# 取余数
f = arr1 % arr2
print(f)

# 取整数
g = arr1 // arr2
print(g)

# 所有元素
h = arr1 + 2
i = arr1 - 2
j = arr1 * 10
print(h)
print(i)
print(j)


# True False
arr3 = arr1 > 3
print(arr3)

# 矩阵乘法(行*列) 和前面的乘法不一样
arr4 = np.ones((3, 5))
# res = arr1.dot(arr4)
res = np.dot(arr1, arr4)
print(res)

# 转置矩阵
print(arr1)
print(arr1.T)
print(np.transpose(arr1))
View Code

 

numpy的运算2

技术图片
 1 import numpy as np
 2 
 3 # 3行2列 (0 1)之间的随机数
 4 a = np.random.random((3, 2))
 5 print(a)
 6 
 7 # 3行2列 符合标准正态分布的随机数
 8 b = np.random.normal(size=(3, 2))
 9 print(b)
10 
11 # 3行2列 (0 10)之间的随机整数
12 c = np.random.randint(0, 10, size=(3, 2))
13 print(c)
14 
15 # 求和
16 print(np.sum(a))
17 
18 # 最值
19 print(np.min(a))
20 print(np.max(a))
21 
22 # 对列求和
23 print(np.sum(c, axis=0))
24 
25 # 对行求和
26 print(np.sum(c, axis=1))
27 
28 # 元素最小值最大值的索引 从0开始
29 print(np.argmin(c))
30 print(np.argmax(c))
31 
32 # 求所有元素的平均值
33 print(np.mean(c))
34 print(c.mean())
35 
36 # 求所有元素的中位数(如果是双数会取中间两位数的平均值 单数就去中间那位数)
37 print(np.median(c))
38 
39 # 开方的结果 根
40 print(np.sqrt(c))
41 
42 arr = np.random.randint(0, 10, size=(1, 10))
43 print(arr)
44 
45 # 排序 按每行进行排序
46 print(np.sort(arr))
47 
48 # 当元素值小于3就变成3  大于6就变成6  中间的数字不变
49 print(np.clip(arr, 3, 6))
View Code

 

以上是关于numpy的主要内容,如果未能解决你的问题,请参考以下文章

'numpy.ndarray':对象不可调用错误

乐哥学AI_Python:Numpy索引,切片,常用函数

对数据进行去均值并转换为 numpy 数组

Jax 矢量化:vmap 和/或 numpy.vectorize?

微信小程序代码片段

VSCode自定义代码片段——CSS选择器