当前位置 博文首页 > xpj8888的博客:python基础(十)Numpy介绍:矩阵运算、函数运算
? ? ? ? Numpy是python语言中的一个数学库或称模块,经常结合tensorflow等模块使用,广泛的应用在AI领域。Numpy主要功能包括:
?
2.1、创建矩阵
print("-----------------创建1行5列的矩阵------------------")
array1x5 = np.array([1, 3, 2, 10, 200]) # 创建1行5列的矩阵
print(array1x5) # 输出矩阵array1x5
print(array1x5[1]) # 输出矩阵array1x5的第二个元素
print("-----------------创建3行4列的矩阵-----------------")
array3x4 = np.array([[11, 22, 33, 44], [4, 5, 6, 7], [111, 222, 333, 444]]) # 创建1行5列的矩阵
print(array3x4) # 输出矩阵array3x4
print(array3x4[0]) # 输出矩阵array3x4的第一个数据
输出结果:
-----------------创建1行5列的矩阵------------------
[ 1 3 2 10 200]
3
-----------------创建3行4列的矩阵-----------------
[[ 11 22 33 44]
[ 4 5 6 7]
[111 222 333 444]]
[11 22 33 44]
?
print("-----------------输出矩阵的某个元素------------------")
array1x5_element3 = array1x5[3]
print(array1x5_element3)
print("-----------------输出矩阵的某组元素------------------")
array3x4_array = array3x4[1]
print(array3x4_array)
输出结果:
-----------------输出矩阵的某个元素------------------
10
-----------------输出矩阵的某组元素------------------
[4 5 6 7]
?
rint("-----------------输出矩阵大于3的元素------------------")
array1x5_elementMoreThan3 = array1x5[array1x5 > 3]
print(array1x5_elementMoreThan3)
输出结果:
-----------------输出矩阵大于3的元素------------------
[ 10 200]
?
array3x4_copy = np.array([[11, 22, 33, 44], [4, 5, 6, 7], [111, 222, 333, 444]])
print("-----------------输出两个矩阵按行合并后的元素: 即将第二个矩阵的每行,按行拼接在第一个矩阵的每行后面------------------")
array3x4_combine_row = np.hstack([array3x4_copy, array3x4])
print(array3x4_combine_row)
print("-----------------输出两个矩阵按行合并后的元素:按列拼接------------------")
array3x4_combine_column = np.vstack([array3x4_copy, array3x4])
print(array3x4_combine_column)
输出结果:
-----------------输出两个矩阵按行合并后的元素: 即将第二个矩阵的每行,按行拼接在第一个矩阵的每行后面------------------
[[ 11 22 33 44 11 22 33 44]
[ 4 5 6 7 4 5 6 7]
[111 222 333 444 111 222 333 444]]
-----------------输出两个矩阵按行合并后的元素:按列拼接------------------
[[ 11 22 33 44]
[ 4 5 6 7]
[111 222 333 444]
[ 11 22 33 44]
[ 4 5 6 7]
[111 222 333 444]]
?
print("-----------------输出 float类型的1x10维度全零矩阵-----------------")
zerosArray1x10 = np.zeros(10, float)
print(zerosArray1x10)
print("-----------------输出 int类型的3x10维度全零矩阵-----------------")
zerosArray3x10 = np.zeros((3, 10), int)
print(zerosArray3x10)
print("-----------------输出 int类型的3x10维度全1矩阵-----------------")
onesArray3x10 = np.ones((3, 10), int)
print(onesArray3x10)
输出结果:
-----------------输出 float类型的1x10维度全零矩阵-----------------
[0. 0. 0. 0. 0. 0. 0. 0. 0. 0.]
-----------------输出 int类型的3x10维度全零矩阵-----------------
[[0 0 0 0 0 0 0 0 0 0]
[0 0 0 0 0 0 0 0 0 0]
[0 0 0 0 0 0 0 0 0 0]]
[[1 1 1 1 1 1 1 1 1 1]
[1 1 1 1 1 1 1 1 1 1]
[1 1 1 1 1 1 1 1 1 1]]
?
?
print("-----------------输出角度的正弦弧度值----------------")
angle30 = 30
angleArray1x3 = np.array([0, 30, 60, 90])
print(np.sin(angle30*np.pi/180))
print(np.sin(angleArray1x3*np.pi/180))
输出结果:
-----------------输出角度的正弦弧度值----------------
0.49999999999999994
[0. 0.5 0.8660254 1. ]
?
?
后续补上
?
?
后续补上
?
cs