大学计算机基础及应用(Python篇)课件:数学建模_第1页
大学计算机基础及应用(Python篇)课件:数学建模_第2页
大学计算机基础及应用(Python篇)课件:数学建模_第3页
大学计算机基础及应用(Python篇)课件:数学建模_第4页
大学计算机基础及应用(Python篇)课件:数学建模_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数学建模

学习目标1、数学建模的概念2、数学建模三剑客之Numpy3、数学建模三剑客之Pandas4、数学建模三剑客之matplotlib5、数学建模实例分析1、数学建模的概念16.1.1基本概念数学模型是一种模拟,是用数学符号、数学式子、程序、图形等对实际课题本质属性的抽象而又简洁的刻画,它或能解释某些客观现象,或能预测未来的发展规律,或能为控制某一现象的发展提供某种意义下的最优策略或较好策略。数学模型一般并非现实问题的直接翻版,它的建立常常既需要人们对现实问题深入细微的观察和分析,又需要人们灵活巧妙地利用各种数学知识。这种应用知识从实际课题中抽象、提炼出数学模型的过程就称为数学建模。16.1.2建模过程(1)模型准备了解问题的实际背景,明确其实际意义,掌握对象的各种信息。以数学思想来包容问题的精髓,数学思路贯穿问题的全过程,进而用数学语言来描述问题。要求符合数学理论,符合数学习惯,清晰准确。(2)模型假设根据实际对象的特征和建模的目的,对问题进行必要的简化,并用精确的语言提出一些恰当的假设。(3)模型建立在假设的基础上,利用适当的数学工具来刻划各变量常量之间的数学关系,建立相应的数学结构(尽量用简单的数学工具)。(4)模型求解利用获取的数据资料,对模型的所有参数做出计算(或近似计算)。(5)模型分析对所要建立模型的思路进行阐述,对所得的结果进行数学上的分析。(6)模型检验将模型分析结果与实际情形进行比较,以此来验证模型的准确性、合理性和适用性。如果模型与实际较吻合,则要对计算结果给出其实际含义,并进行解释。如果模型与实际吻合较差,则应该修改假设,再次重复建模过程。(7)模型应用与推广应用方式因问题的性质和建模的目的而异,而模型的推广就是在现有模型的基础上对模型有一个更加全面的考虑,建立更符合现实情况的模型。16.2数学建模三剑客之Numpy16.2.1Numpy模块简介·NumPy(NumericalPython)是Python语言中做科学计算的基础库。重在于数值计算,也是大部分Python科学计算库的基础,多用于在大型、多维数组上执行的数值运算。16.2.2Numpy模块的安装1.使用已有的发行版本对于许多用户,尤其是在Windows上,最简单的方法是下载以下的Python发行版,它们包含了所有的关键包(包括NumPy,SciPy,matplotlib,IPython,SymPy以及Python核心自带的其它包)。Anaconda:免费Python发行版,用于进行大规模数据处理、预测分析,和科学计算,致力于简化包的管理和部署。支持Linux,Windows和Mac系统。EnthoughtCanopy:提供了免费和商业发行版。持Linux,Windows和Mac系统。Python(x,y):免费的Python发行版,包含了完整的Python语言开发包及SpyderIDE。支持Windows,仅限Python2版本。Pyzo:基于Anaconda的免费发行版本及IEP的交互开发环境,超轻量级。支持Linux,Windows和Mac系统。16.2.3Numpy模块使用1.创建的方法(1)Numpy一维数组的创建importnumpyasnparr=np.array([1,2,3,4,5])执行结果:array([1,2,3,4,5])(2)多维数组的创建np.array([[1,2,3],[4,5,6]])执行结果:array([[1,2,3],[4,5,6]])2.Numpy模块对应的方法(1)zeros()--------生成一个自定义的元素都为0的数组np.zeros(shape=(3,3))执行结果:array([[0.,0.,0.],[0.,0.,0.],[0.,0.,0.]])(2)nes()--------生成一个自定义的元素都为1的数组np.ones(shape=(3,4)执行结果:array([[1.,1.,1.,1.],[1.,1.,1.,1.],[1.,1.,1.,1.]])(3)linespace()----------生成多少个一维等差数列3.常用的统计函数(1)numpy.amin()和numpy.amax(),用于计算数组中的元素沿指定轴的最小、最大值。(2)numpy.ptp():计算数组中元素最大值与最小值的差(最大值-最小值)。(3)numpy.median()函数用于计算数组a中元素的中位数(中值)(4)标准差std():标准差是一组数据平均值分散程度的一种度量。(5)公式:std=sqrt(mean((x-x.mean())**2))16.3数学建模三剑客之Pandas16.3.1Pandas简介Pandas是基于NumPy的一种工具,该工具是为解决数据分析任务而创建的。Pandas纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具。pandas提供了大量能使我们快速便捷地处理数据的函数和方法。你很快就会发现,它是使Python成为强大而高效的数据分析环境的重要因素之一。16.3.2Pandas安装使用命令行安装pipinstallpandas16.3.3Pandas模块使用1.创建的方法(1)Series型数据结构创建PandasSeries类似表格中的一个列(column),类似于一维数组,可以保存任何数据类型Series由索引(index)和列组成,函数如下:pandas.Series(data,index,dtype,name,copy)(2)DataFrame型数据结构创建DataFrame是一个表格型的数据结构,它含有一组有序的列,每列可以是不同的值类型(数值、字符串、布尔型值)。DataFrame既有行索引也有列索引,它可以被看做由Series组成的字典(共同用一个索引)。(3)PandasCSV文件读取CSV(Comma-SeparatedValues,逗号分隔值,有时也称为字符分隔值,因为分隔字符也可以不是逗号),其文件以纯文本形式存储表格数据(数字和文本)。CSV是一种通用的、相对简单的文件格式,被用户、商业和科学广泛应用。二、常用的方法head(n)方法用于读取前面的n行,如果不填参数n,默认返回5行。importpandasaspddf=pd.read_csv('nba.csv')print(df.head(10))tail(n)方法用于读取尾部的n行,如果不填参数n,默认返回5行,空行各个字段的值返回NaN。import

pandas

as

pddf

=

pd.read_csv('nba.csv')print(df.tail())16.4数学建模三剑客之matplotlib16.4.1matplotlib简介Matplotlib是Python的绘图库。它可与NumPy一起使用,提供了一种有效的MatLab开源替代方案。它也可以和图形工具包一起使用,如PyQt和wxPython。16.4.2matplotlib安装使用命令行pipinstallmatplotlib进行安装16.4.3matplotlib模块使用对于matplotlib模块而言,主要用于画图,只需记住或者熟悉使用画图的基本命令,其画图的基本命令都是一套完整模板,只需根据模板进行数据传输就能完成图形的绘制。16.5数学建模实例分析16.5.1数学问题简介线性方程组理论是“线性代数”的重要组成部分,在各学科与工程技术领域有重要的应用.本书以线性方程组理论为主题,系统介绍了线性方程组具有唯一解时求解公式的推导、有无穷多解时通解公式的构造以及无解时最小二乘解的表示等问题,并应用于水手分桃、幻方构造、点灯游戏等趣味问题以及超平面拟合、网页排序、机器翻译等应用课题。因此多线性方程组的求解就成为了研究人员的一项重要任务。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论