
数理基础
主要对高等代数、线性代数(矩阵)、概率论基础知识,用代码实现,还包括一些对numpy和pandas数据帧的读取,以及相关操作
小飞龙程序员
想赢并不一定要有实力和本钱,最重要的是有信心和胆识,放弃,就一定会输,尝试还有一半的机会。
展开
-
pandas、numpy对txt、xls、csv的文件读取总结
1.文件读取1.1 csv文件读取import pandas as pddf1=pd.read_csv(r'../data/HeightWeight.csv')print(df1)2.xlsx文件读取import pandas as pddf2=pd.read_excel(r'../data/loans.xls')print(df2原创 2021-12-04 09:09:52 · 1425 阅读 · 0 评论 -
数理基础(概率论)------离散型和连续型分布期望方差公式
原创 2021-11-13 20:26:17 · 2464 阅读 · 0 评论 -
数理基础(概率论)------离散型随机变量均匀分布、正态分布、指数分布图像和连续型随机变量泊松分布、二项分布图像
1.均匀分布1.1标准均匀分布(0-1)import numpy as np#满足0-1均匀分布 X~U(a,b) a=0,b=1s1=np.random.rand(1000)print(s1)#期望 E(X)=(a+b)/2=(0+1)/2=0.5print(s1.mean())#方差 D(X)=(b-a)²/12=1/12print(s1.var())代码运行结果:0.496599265085136350.081770070779136711.2均匀分布(a=1,b=4原创 2021-10-25 15:38:11 · 5230 阅读 · 0 评论 -
数理基础------离散型随机变量(均匀、指数、正态分布)和连续型随机变量(二项、泊松分布)对象的创建、期望、方差,概率密度函数和分布函数的绘制
一.连续型随机变量1. 正态分布1.1 正态分布对象创建,期望及方差#(1)满足标准正态分布 X~N(μ,σ²) μ=0,σ=1s1=np.random.randn(1000)print(s1)#(2)满足正态分布 X~N(μ,σ²) X~N(3,16)#第1个参数:μ ,2:σs2=np.random.normal(3,4,1000)print(s2)#(3)正态分布 X~N(μ,σ²)#生成μ=3,σ=4的正态分布# norm(loc=μ,scale=σ)#根据分布,随机生成1原创 2021-10-28 17:46:30 · 718 阅读 · 1 评论 -
pandas系列、数据帧、索引、切片、分组、聚合练习
pandas练习1.练习# 1.1.创建一个系列:# (1)通过传入一个列表list,创建一个系列;ps=pd.Series([3,5,7,9],index=['a','b','c','d'])print(ps)# (2)使用数组 创建系列;data=np.array(np.linspace(3,10,4,dtype=int))ps1=pd.Series(data,index=['a','b','c','d'])print(ps1)# (3)使用字典dict来创建一个系列。data1=原创 2021-10-20 09:57:41 · 477 阅读 · 0 评论 -
matplotlib------折线图的绘制
#1.绘制折线图import matplotlib.pyplot as pltimport numpy as np#1.绘制折线图#设置中文字体plt.rcParams['font.sans-serif']=['Simhei']# 显示符号plt.rcParams['axes.unicode_minus']=False#创建画布 figsize:画布大小(英寸)plt.figure(figsize=(15,10),dpi=80)#取点(用等差数列取点)x=np.linspace(-5原创 2021-10-02 17:58:16 · 585 阅读 · 0 评论 -
数理基础(高等代数)------线性回归、解方程、定积分、数值积分
1. 线性回归(建模和拟合)# 线性回归(建模和拟合)#定义函数def func(x,a,b): return a*x+b#创建数据x=np.linspace(0,10,100)#调用函数y=func(x,1,2)#添加噪音yn=y+0.9*np.random.normal(size=len(x))#拟合噪音曲线popt,pcov=curve_fit(func,x,yn)print(popt)#绘制折线图plt.plot(x,x*popt[0]+popt[1],'r',原创 2021-10-29 18:04:29 · 282 阅读 · 0 评论 -
数理基础(线性代数)------数组的创建、运算、求解、维度相互转化、切片操作
1. 创建数组1.1 创建一维数组import numpy as npa=np.arange(1,10)print(a)1.2 创建数组(一维和二维)import numpy as npb=np.array([[1,2,3],[4,5,6],[7,8,9]],dtype=int)print(b)c=np.zeros(9).reshape(3,3)c1=np.zeros((3,3))print(c)print(c1)d=np.ones(9).reshape(3,3)d1=np.o原创 2021-10-02 16:42:44 · 629 阅读 · 0 评论 -
数理基础(线性代数)------矩阵行列式、特征值、特征向量、伴随矩阵、其次和非齐次线性方程组求解
矩阵函数的封装1.定义函数,实现求矩阵的行列式def Isdet(A): # 矩阵的行数=列数:方阵,只有方阵才有行列式 if A.shape[0]==A.shape[1]: print('A是方阵,存在行列式。|A|=',np.linalg.det(A)) else: print('A不是方阵,不存在行列式')2.定义函数,实现求矩阵的秩def Rank(A): rA=np.linalg.matrix_rank(A) pri原创 2021-10-02 15:11:46 · 962 阅读 · 0 评论 -
pandas一维系列Series和二维数据帧DataFrame的创建、索引、切片、查询、缺失值以及二维数据帧的分组、合并和聚合
pandas一. Series一维数组1. 创建一维数组方法一:pd.Series(列表,index=列表,columns=列表)pd.Series(numpy一维数组,index=列表,columns=列表)返回<class ‘pandas.core.series.Series’> 类型的一维数组import pandas as pdt1 = pd.Series([8,6,3,4])print(t1)t2 = pd.Series([1,2,3,4],index=list('原创 2021-10-18 21:14:36 · 1994 阅读 · 2 评论 -
pandas系列(Series)、数据帧(DataFrame)、文件读取(csv、excel)、缺失值填充处理、分组后聚合、统计相关函数
#pandas三种数据类型:#一维:系列 Series 二维:数据帧 DataFrame 三维:面板 Panel#系统默认下标:0,1,2,…1. 系列import numpy as npimport pandas as pd#1.用 list(列表) 创建系列s1=pd.Series([1,3,5,7])print(s1)#2.用数组创建系列data=np.array([1,3,5,7])#自定义下标 index=[],必须是list形式:可以是数字,也可以是字符串ind原创 2021-10-25 15:38:40 · 492 阅读 · 0 评论 -
数理基础(高等代数)------二重积分、三重积分对比
积分的计算1.一重积分的计算Γ(z)=∫12 (x+1)dx .\Gamma(z) = \int_1^2\ (x+1)dx\,.Γ(z)=∫12 (x+1)dx.#方法一(scipy)from scipy import integratedef fun(x): return x+1v,err=integrate.quad(fun,1,2)print(v)# 方法二(sympy)import sympyf=x+1sympy.integrate(f,1,原创 2021-10-02 14:30:24 · 951 阅读 · 0 评论 -
matplotlib函数封装
画图函数封装import numpy as npimport matplotlib.pyplot as plt#设置坐标轴def set_axis(): #设置坐标轴 ax=plt.gca() #去掉顶部和右边的坐标线 ax.spines['right'].set_color('none') ax.spines['top'].set_color('none') #将下面的轴线移到x=0位置 ax.xaxis.set_ticks_position原创 2021-10-02 18:05:43 · 289 阅读 · 0 评论 -
数理基础(概率论)------scipy正态分布、二项分布、泊松分布、均匀分布、指数分布概率计算练习
scipy练习1. 正态分布(连续型随机变量分布)import scipy.statsimport matplotlib.pyplot as plt# 1.调用scipy,生成均值为3,方差为16的正态分布对象distdist=scipy.stats.norm(loc=3,scale=4)print(dist)# 2.用numpy中的方法生成x,要求x位于(-10,30)之间,200个点x=np.linspace(-10,30,200)# 3.写出正态分布的概率密度函数pdf=dist.原创 2021-11-02 09:18:24 · 1302 阅读 · 1 评论 -
数理基础(线性代数)------矩阵常见的运算及统计函数
一.数学相关函数1.函数的平方根、立方根import numpy as npa=np.arange(9)print(a)print('a的平方根',np.sqrt(a))#a的平方根print('a的平方根',np.power(a, 1/2))#a的平方根print('a的立方根',np.power(a, 1/3))#a的立方根print('a的立方根',np.power(a, 1/3))#a的立方根print('a的平方',np.square(a))#a的平方print('a的平方',原创 2021-10-02 15:44:55 · 964 阅读 · 0 评论 -
数理基础(高等代数)------sympy三角、指数、对数、幂函数、极限、求导、微分、积分等基础知识
sympy基础知识1.sympyimport sympyprint(sympy.pi.evalf())#圆周率πprint(sympy.E)#eprint(sympy.I)#虚数iprint(sympy.oo)#无穷大print(sympy.E.evalf(3))#保留e的三位小数2.三角函数import sympyprint(sympy.sin(sympy.pi/4).evalf())print(sympy.cos(sympy.pi/3).evalf())print(sympy.原创 2021-10-02 14:56:05 · 5371 阅读 · 0 评论