python第三方库numpy基本用法

import numpy as np
#python array
a = [1,2,3,4,5,6,7,8,9]
#numpy array
A = np.array([1,2,3,4,5,6,7,8,9])

#Numpy数组远比标准数组紧密,在使用同样单精度变量下,Numpy数组所需内存较小
#此外,Numpy数组是执行更快数值计算的优秀容器
# print(a)                # [1, 2, 3, 4, 5, 6, 7, 8, 9]
# print(A)                # [1 2 3 4 5 6 7 8 9]
# print(type(a))          # 

#另一种定义数组的方式
c = np.arange(0,10,2) #arangge([start],stop,[step])   数组取值左闭右开[0 2 4 6 8]
d = np.arange(2,29,5) #[ 2  7 12 17 22 27]

A.shape   #(9,)   元素个数。矩阵的维度,秩为1,独立方程的个数
B = A.reshape(3,3) #原有的元素基础上重新构造


#零矩阵
np.zeros((4,3))
# [[ 0.  0.  0.]
#  [ 0.  0.  0.]
#  [ 0.  0.  0.]
#  [ 0.  0.  0.]]

#单位矩阵
np.eye(5)
# [[ 1.  0.  0.  0.  0.]
#  [ 0.  1.  0.  0.  0.]
#  [ 0.  0.  1.  0.  0.]
#  [ 0.  0.  0.  1.  0.]
#  [ 0.  0.  0.  0.  1.]]



#np.dot()矩阵点积。执行该乘法的前提是左边矩阵的列数(每行的元素)必须等于右边矩阵的行数,
# 否则就会报错。此外,根据矩阵乘法的定义,左乘和右乘也不一样
I = np.eye(3)
D = np.arange(1,10).reshape(3,3)
M = np.dot(D,I)
# [[ 1.  2.  3.]
#  [ 4.  5.  6.]
#  [ 7.  8.  9.]]



#使用 np.random.rand() 随机生成矩阵,即给定矩阵的形状,其中每个元素都是随机生成的
np.random.rand(2,3)
# [[ 0.15847386  0.22171854  0.04861573]
#  [ 0.15796091  0.06620758  0.73754384]]

#矩阵转置
a = np.array([[1,0],[2,3]])
# [[1 0]
#  [2 3]]
b = a.transpose()
# [[1 2]
#  [0 3]]


#矩阵的运算
arr = np.array([[1,2,3],[4,5,6]])
print(arr*arr)
print(arr+arr)
print(arr-arr)
print(1/arr)
array = [1,2,3,4]
print(array[::-1]) #步长

#计算矩阵的逆
arr = np.array([1,1,1,1]).reshape(2,2)
print(arr)
print(np.linalg.inv(arr))
print(np.dot(arr,np.linalg.inv(arr)))

你可能感兴趣的:(python,numpy)