Python中Numpy包的学习

Numpy实现基本的矩阵运算

  • a*b实现矩阵叉乘,使用代码和运行结果如图
#矩阵相乘
import numpy as np
a1=np.mat([[1,2,3],[4,5,6],[7,8,9]]); #3*3
a2=np.mat([[11,12,13],[14,15,16],[17,18,19]]);#3*3
print(a1*a2)

在这里插入图片描述

  • dot()实现矩阵点乘,使用代码和运行结果如图
#矩阵点乘
import numpy as np
a1=np.mat([[1,2,3],[4,5,6],[7,8,9]]); #3*3
a2=np.mat([[11,12,13],[14,15,16],[17,18,19]]);#3*3
a3=a1.dot(a2)
print(a3)

在这里插入图片描述

  • .I实现矩阵求逆,使用代码和运行结果如图
#矩阵转置
import numpy as np
a1=np.mat([[1,2,3],[4,5,6],[7,8,9]]); #3*3
a2=a1.I
print(a2)

在这里插入图片描述

  • .T实现矩阵求转置,使用代码和运行结果如图
#矩阵转置
import numpy as np
a1=np.mat([[1,2,3],[4,5,6],[7,8,9]]); #3*3
a2=a1.T
print(a2)

在这里插入图片描述

  • linalg.eig()实现求矩阵的特征向量,并返回数值,使用代码和运行结果如图
#矩阵求特征向量
import numpy as np
a1=np.mat([[1,2,3],[4,5,6],[7,8,9]]); #3*3
b=np.linalg.eig(a1)
print(b)

Numpy实现线性方程求解

例:求该线性方程组的解
[ 1 1 1 0 2 5 2 5 − 1 ] [ x y z ] = [ 6 − 4 27 ] \left[\begin{array}{ccc} 1 & 1 & 1 \\ 0 & 2 & 5 \\ 2 & 5 & -1 \end{array}\right]\left[\begin{array}{l} x \\ y \\ z \end{array}\right]=\left[\begin{array}{c} 6 \\ -4 \\ 27 \end{array}\right] 102125151xyz=6427
使用代码和运行结果如图

from scipy import linalg
import numpy as np
A = np.array([[1, 1, 1], [0, 2, 5], [2, 5, -1]])  # A代表系数矩阵
b = np.array([6, -4, 27])  # b代表常数列
x = linalg.solve(A, b)
print(x)

在这里插入图片描述

Numpy实现排序

sort(a,axis,kind,order)函数返回输入数组的排序副本,其中a是所需排序的数组,axis沿着排序的轴,kind默认为"quicksort"快速排序,或者"mergesort"归并排序,"heapsort"堆排序。使用代码和运行结果如图

#排序
import numpy as np 
a = np.array([[3,7,5],[8,4,3],[2,4,9]]) 
print("排序后",np.sort(a))
print("沿x轴排序",np.sort(a,axis=1))
print("沿y轴排序",np.sort(a,axis=0))

在这里插入图片描述

  • argsort()函数对输入数组进行排序并返回数据的索引数组,使用代码和运行结果如图
#argsort()
import numpy as np 
a = np.array([[3,7,5],[8,4,3],[2,4,9]]) 
b=np.argsort(a)
print(b)

在这里插入图片描述

argmax()函数和argmin()函数对输入数组的指定值找出最大值或者最小值,返回其索引值,使用代码和运行结果如图

#armax(),argmin()
import numpy as np 
a = np.array([[3,7,5],[8,4,3],[2,4,9]])
print("整个数组中的最大索引",np.argmax(a))
print("沿x轴的最大索引",np.argmax(a,axis=1))
print("沿y轴的最大索引",np.argmax(a,axis=0))
print("整个数组中的最大索引",np.argmax(a))
print("沿x轴的最小索引",np.argmax(a,axis=1))
print("沿y轴的最小索引",np.argmax(a,axis=0))

在这里插入图片描述

  • where()函数对输入数组找出指定条件的数值,返回其索引值,使用代码和运行结果如图
#where()
import numpy as np 
a = np.array([[3,7,5],[8,4,3],[2,4,9]])
print("大于8的:",np.where(a>8))

在这里插入图片描述

Numpy实现基本的统计计算

在Numpy中有很多用于统计的函数,从数组中给定的元素中查找最大值,最小值,标准差和方差等。

  • amin()和amax()用于从给定的数组中指定轴返回最小值和最大值,使用代码和运行结果如图
#Numpy统计函数
#import numpy as np 
a = np.array([[3,7,5],[8,4,3],[2,4,9]]) 
print("整个数组中的最小值",np.amin(a))#寻找整个数组中的最小值
print("整个数组中的最大值",np.amax(a))#寻找整个数组中的最小值
print("第一列的最大值",np.amax(a,axis = 0))
print("第一列的最小值",np.amax(a,axis = 0))

在这里插入图片描述

  • ptp()返回沿轴的值得范围,使用代码和运行结果如图
import numpy as np 
a = np.array([[3,7,5],[8,4,3],[2,4,9]]) 
print("整个数组的范围",np.ptp(a))
print("x轴范围",np.ptp(a, axis =  1))
print("y轴范围",np.ptp(a, axis =  0))

在这里插入图片描述

  • median()求中值,使用代码和运行结果如图
#求中值
import numpy as np 
a = np.array([[3,7,5],[8,4,3],[2,4,9]]) 
print("整个数组的中值",np.median(a))
print("x轴中值",np.median(a, axis =  1))
print("y轴中值",np.median(a, axis =  0))

在这里插入图片描述

  • mean()求算术平均值,使用代码和运行结果如图
#求平均值
import numpy as np 
a = np.array([[3,7,5],[8,4,3],[2,4,9]])
print("整个数组的平均值",np.mean(a))
print("x轴平均值",np.mean(a, axis =  1))
print("y轴平均值",np.mean(a, axis =  0))

在这里插入图片描述

  • average()求加权平均值,使用代码和运行结果如图
#求加权平均值
a = np.array([1,2,3,4,5,6])
#权重
b = np.array([1,2,3,4,5,6])
print("不指定权重",np.average(a))
print("指定权重",np.average(a,weights = b))

在这里插入图片描述

  • std()求标准差,使用代码和运行结果如图
#标准差
import numpy as np 
a = np.array([1,2,3,4,5,6])
b=np.std(a)
print("标准差",b)

在这里插入图片描述

  • var()求方差,使用代码和运行结果如图
#方差
import numpy as np 
a = np.array([1,2,3,4,5,6])
b=np.var(a)
print("方差",b)

在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值