写在开头
在机器学习中,我们除了关注模型的性能外,数据处理更是必不可少,本文将介绍一个重要的数据处理库numpy,将随着我的学习过程不断增加内容
基本数据格式
array
array矩阵是numpy中的数据格式,array格式有很多便捷的操作,如矩阵运算,广播等
使用代码
import numpy as np
arr = np.array([1, 2, 3, 4, 5])
print(type(arr))
矩阵运算
numpy数据与普通数据的一个重要区别就是它能调用函数进行矩阵运算
创建矩阵
import numpy as np
# 创建矩阵
A = np.array([[1, 2], [3, 4]])
B = np.array([[5, 6], [7, 8]])
矩阵加法
# 矩阵加法
C = A + B
print("Matrix Addition:")
print(C)
矩阵减法
# 矩阵减法
D = A - B
print("Matrix Subtraction:")
print(D)
矩阵乘法
# 矩阵乘法
E = np.dot(A, B)
print("Matrix Multiplication:")
print(E)
矩阵转置
# 矩阵转置
A_transposed = A.T
print("Matrix Transposition:")
print(A_transposed)
数据定位
argmax
argmax函数返回array矩阵中元素值最大的下标
使用代码
import numpy as np
arr = np.array([1, 4, 5, 2, 3])
print(np.argmax(arr))
数据生成
random.rand
这个函数会生成指定格式的(0,1)之间的数
import numpy as np
arr = np.random.rand(3, 4)
print(arr)
这段代码生成一个3x4的矩阵
random.randn
这个函数生成标准正态分布(均值为 0,标准差为 1)的随机样本
import numpy as np
arr = np.random.randn(3, 4)
print(arr)
random.randint
这个函数生成在指定范围内的随机整数。
import numpy as np
arr = np.random.randint(1, 10, size=(3, 4))
print(arr)
这个代码将生成数据从1到10(不包括)的整数,形状为3x4的矩阵
维度拓展
expand_dim
在机器学习任务中,有些模型对数据的格式有要求,这时我们可以使用expand_dim函数来拓展数据的维度
import numpy as np
arr = np.random.randint(1, 10, size=(3, 4))
print(arr)
print(np.expand_dims(arr, axis=0)) # 在第0个维度上拓展
print(np.expand_dims(arr, axis=1)) # 在第1个维度上拓展
可以看看效果
结语
numpy作为一个数据处理库,它主要用来进行数据生成,数据计算等任务,支撑着人工智能必不可少的数据处理任务