编辑推荐
《MATLAB程序设计教程(第2版)》特色
在第一版的基础上修订而成,以MATLAB 7.7.版为实践环境介绍MATLAB程序设计的方法,顺应技术发展趋势。
结合有关算法原理和数学方法介绍MATLAB的功能,强调理论和实践相结合,满足应用需求。
内容深入浅出,示例丰富,教学适用性强。书中示例既有对MATLAB重点和难点的诠释,又展示应用技巧,提供应用范例。
内容简介
《MATLAB程序设计教程(第2版)》是在第一版的基础上修改而成,全书基本保持第一版的体系结构,但更新了软件版本(采用MATLAB 7.7)、充实了实例、增加了实验部分,使得全书内容更丰富、教学适应性更强。全书按照由浅入深、循序渐进的原则进行编排,在讲清楚有关MATLAB算法原理及有关数学背景的基础上,结合实例介绍MATLAB的功能与应用。全书共12章,主要内容有MATLAB操作基础、MATLAB矩阵及其运算、MATLAB程序设计、MATLAB绘图、MATLAB数据分析与多项式计算、MATLAB解方程与优化问题求解、MAI’LAB数值积匀与数值微分、MATLAB符号运算、MATLAB图形句柄、MATLAB图形用户界面设计、Simulinl动态仿真集成环境以及MATLAB外部接口技术。
内页插图
目录
序
第二版前言
第一版前言
第l章 MATLAB操作基础
1.1 MATLAB概述
1.1.1 MATLAB的发展
1.1.2 MATLAB的主要功能
1.1.3 初识MATLAB
1.2 MATLAB集成环境
1.2.1 启动与退出MATLAB集成环境
1.2.2 MATLAB操作界面
1.2.3 MATLAB的搜索路径
1.3 MATLAB帮助系统
1.3.1 MATLAB帮助窗口
1.3.2 MATLAB帮助命令
1.3.3 MKTLAB演示系统
1.3.4 MATLAB远程帮助系统
实验指导
思考练习
第2章 MATLAB矩阵及其运算
2.1 变量和数据操作
2.1.1 变量与赋值
2.1.2 预定义变量
2.1.3 内存变量的管理
2.1.4 MATLAB常用数学函数
2.1.5 数据的输出格式
2.2 MATLAB矩阵
2.2.1 矩阵的建立
2.2.2 矩阵的拆分
2.2.3 特殊矩阵
2.3 MATLAB运算
2.3.1 算术运算
2.3.2 关系运算
2.3.3 逻辑运算
2.4 矩阵分析
2.4.1 对角阵与三角阵
2:4.2 矩阵的转置与旋转
2.4.3 矩阵的逆与伪逆
2.4.4 方阵的行列式
2.4.5 矩阵的秩与迹
2.4.6 向量和矩阵的范数
2.4.7 矩阵的条件数
2.4.8 矩阵的特征值与特征向量
2.5 矩阵的超越函数
2.6 字符串
2.7 结构数据和单元数据
2.7.1 结构数据
2.7.2 单元数据
2.8 稀疏矩阵
2.8.1 矩阵存储方式
2.8.2 稀疏存储方式的产生
2.8.3 稀疏矩阵应用举例
实验指导
思考练习
第3章 MATLAB程序设计
3.1 M文件
3.1.1 M文件的分类
3.1.2 M文件的建立与打开
3.2 程序控制结构
3.2.1 顺序结构
3.2.2 选择结构
3.2.3 循环结构
3.3 函数文件
3.3.1 函数文件的基本结构
3.3.2 函数调用
3.3.3 函数参数的可调性
3.3.4.全局变量与局部变量
3.4 程序举例
3.5 程序调试
3.5.1 程序调试概述
3.5.2 调试菜单
3.5.3 调试命令
实验指导
思考练习
第4章 MATLAB绘图
4.1 二维数据曲线图
4.1.1 绘制单根二维曲线
4.1.2 绘制多根二维曲线
4.1.3 设置曲线样式
4.1.4 图形标注与坐标控制
4.1.5 图形的可视化编辑
4.1.6 图形窗口的分割
4.2 其他二维图形
4.2.1 对函数自适应采样的绘图函数
4.2.2 其他坐标系下的二维数据曲线图
4.2.3 二维统计分析图
4.3 隐函数绘图
4.4 三维图形
4.4.1 三维曲线
4.4.2 三维曲面
4.4.3 其他三维图形
4.5 图形修饰处理
4.5.1 视点处理
4.5.2 色彩处理
4.5.3 图形的裁剪处理
4.6 图像处理与动画制作
4.6.1 图像处理
4.6.2 动画制作
实验指导
思考练习
第5章 MATLAB数据分析与多项式计算
5.1 数据统计处理
5.1.1 最大值和最小值
5.1.2 求和与求积
5.1.3 平均值和中值
5.1.4 累加和与累乘积
5.1.5 标准方差与相关系数
5.1.6 排序
5.2 数据插值
5.2.1 一维数据插值
5.2.2 二维数据插值
5.3 曲线拟合
5.4 离散傅里叶变换
5.4.1 离散傅里叶变换算法简介
5.4.2 离散傅里叶变换的实现
5.5 多项式计算
5.5.1 多项式的四则运算
5.5.2 多项式的导函数
5.5.3 多项式的求值
5.5.4.多项式求根
实验指导
思考练习
第6章 MATLAB解方程与最优化问题求解
6.1 线性方程组求解
6.1.1 直接解法
6.1.2 迭代解法
6.2 非线性方程数值求解
6.2.1 单变量非线性方程求解
6.2.2 非线性方程组的求解
613常微分方程初值问题的数值解法
6.3.1 龙格-库塔法简介
6.3.2 龙格-库塔法的实现
6.4 最优化问题求解
6.4.1 无约束最优化问题求解
6.4.2 有约束最优化问题求解
6.4.3 线性规划问题求解
实验指导
思考练习
第7章 MATLAB数值积分与数值微分
7.1 数值积分
7.1.1 数值积分基本原理
7.1.2 数值积分的实现方法
7.1.3 多重定积分的数值求解
7.2 数值微分
7.2.1 数值差分与差商
7.2.2 数值微分的实现
实验指导
思考练习
第8章 MATLAB符号运算
8.1 符号对象
8.1.1 建立符号对象
8.1.2 符号表达式运算
8.1.3 符号表达式中变量的确定
8.1.4 符号矩阵
8.2 符号微积分
8.2.1 符号极限
8.2.2 符号导数
8.2.3 符号积分
8.3 级数
8.3.1 级数符号求和
8.3.2 函数的泰勒级数
8.4 符号方程求解
8.4.1 符号代数方程求解
8.4.2 符号常微分方程求解
实验指导
思考练习
第9章 MATLAB图形句柄
9.1 图形对象及其句柄
9.1.1 图形对象
9.1.2 图形对象句柄
9.1.3 图形对象属性
9.2 图形窗口与坐标轴
9.2.1 图形窗口对象
9.2.2 坐标轴对象
9.3 低层绘图操作
9.3.1 曲线对象
9.3.2 曲面对象
9.3.3 文本对象
9.3.4 其他核心对象
实验指导
思考练习
第10章 MATLAB图形用户界面设计
10.1 用户界面对象
10.2 菜单设计
10.2.1 建立用户菜单
10.2.2 菜单对象常用属性
10.2.3 快捷菜单
10.3 对话框设计
10.3.1 对话框的控件
10.3.2 控件的操作
10.3.3 对话框设计示例
10.4 图形用户界面开发环境
10.4.1 图形用户界面设计窗口
10.4.2 常用的用户界面设计工具
10.4.3 图形用户界面开发环境应用示例
实验指导
思考练习
第11章 Simulink动态仿真集成环境
11.1 Simulink操作基础
11.1.1 Simulink简介
11.1.2 Simulink的启动与退出
11.2 系统仿真模型
11.2.1 Simulink的基本模块
11.2.2 模块的编辑
11.2.3 模块的连接
11.2.4 模块的参数和属性设置
11.3 系统的仿真
11.3.1 设置仿真参数
11.3.2 启动系统仿真与仿真结果分析
l1.3.3 系统仿真实例
11.4 使用命令操作对系统进行仿真
11.5 子系统及其封装技术
11.5.1 子系统的建立
11.5.2 子系统的条件执行
11.5.3 子系统的封装
11.6 S函数的设计与应用
11.6.1 用MATLAB语言编写S函数
11.6.2 S函数的应用
实验指导
思考练习
第12章 MATLAB外部接口技术
12.1 MATLAB与MicrosoftOffice的混合使用
12.1.1 在w10rd中使用MATLAB
12.1.2 在Excel中使用MATLAB
12.2 MATLAB数据接口
12.2.1 数据文件操作
12.2.2 MAT文件及其应用
12.3 MATLAB应用程序接口
12.3.1 C语言MEX文件的创建
12.3.2 MATLAB引擎技术
实验指导
思考练习
附录A MATLAB常用命令与函数分类索引表
附录B MATLAB可用的LaTeX字符集
参考文献
精彩书摘
4.模块外形的调整
要改变单个模块的大小,首先应选中该模块,用鼠标左键点住其周围的4个黑方块中的任何一个并拖动,这时会出现一个虚线的矩形表示新模块的大小,到需要的位置后释放鼠标即可。
若要改变整个模型中所有模块的大小,可以打开模型编辑窗口中的View菜单,Zoom In和Zoom Out命令分别用来放大和缩小整个模型,Fit Selection To View命令用来将当前选中的模块或当前系统放大到整个窗口大小来观察,Normal(100%)用来将整个模型恢复到原始的正常大小。
要调整模块的方向,首先应选定模块,然后选择模型编辑窗口Format菜单中的Rotate Block命令使模块顺时针方向旋转90°,选择Filp Block命令使模块旋转180°显然两次旋转90°与一次旋转180°的操作效果是一样的。
要改变模块的颜色,首先选定模块,然后选择Format菜单中的Foreground Color命令,选择模块的前景色,即模块的图标、边框和模块名的颜色,使模块产生阴影效果。选择。Format菜单中的Background Color命令,选择模块的背景色,即模块的背景填充色。选择Format菜单中的Screen Color命令,用来改变模型的背景色。
要给模块加阴影,首先应选定模块,然后选择Format菜单中的Show Drop Shadow命令使模块产生阴影效果。
前言/序言
随着计算机科学与技术的飞速发展,计算机的应用已经渗透到国民经济与人们生活的各个角落,正在日益改变着传统的人类工作方式和生活方式。在我国高等教育逐步实现大众化后,越来越多的高等院校会面向国民经济发展的第一线,为行业、企业培养各级各类高级应用型专门人才。为了大力推广计算机应用技术,更好地适应当前我国高等教育的跨跃式发展,满足我国高等院校从精英教育向大众化教育的转变,符合社会对高等院校应用型人才培养的各类要求,我们成立了“21世纪高等院校规划教材编委会”,在明确了高等院校应用型人才培养模式、培养目标、教学内容和课程体系的框架下,组织编写了本套“21世纪高等院校规划教材”。
众所周知,教材建设作为保证和提高教学质量的重要支柱及基础,作为体现教学内容和教学方法的知识载体,在当前培养应用型人才中的作用是显而易见的。探索和建设适应新世纪我国高等院校应用型人才培养体系需要的配套教材已经成为当前我国高等院校教学改革和教材建设工作面临的紧迫任务。因此,编委会经过大量的前期调研和策划,在广泛了解各高等院校的教学现状、市场需求,探讨课程设置、研究课程体系的基础上,组织一批具备较高的学术水平、丰富的教学经验、较强的工程实践能力的学术带头人、科研人员和主要从事该课程教学的骨干教师编写出一批有特色、适用性强的计算机类公共基础课、技术基础课、专业及应用技术课的教材以及相应的教学辅导书,以满足目前高等院校应用型人才培养的需要。本套教材消化和吸收了多年来已有的应用型人才培养的探索与实践成果,紧密结合经济全球化时代高等院校应用型人才培养工作的实际需要,努力实践,大胆创新。教材编写采用整体规划、分步实施、滚动立项的方式,分期分批地启动编写计划,编写大纲的确定以及教材风格的定位均经过编委会多次认真讨论,以确保该套教材的高质量和实用性。
《Python数据分析与可视化实战》 内容简介 在当今信息爆炸的时代,数据已成为驱动各行各业创新与决策的核心要素。如何有效地收集、清洗、处理、分析和可视化数据,已成为一项至关重要的技能。本书《Python数据分析与可视化实战》正是为此而生,旨在为读者提供一套系统、全面且实用的Python数据处理与分析解决方案。本书紧密结合实际应用场景,通过丰富的案例和详尽的代码演示,引领读者深入掌握Python在数据科学领域的强大能力,从入门到精通,助力读者应对复杂的数据挑战,挖掘数据价值,实现数据驱动的洞察。 本书以Python为核心语言,精选了数据科学领域最常用、最强大的开源库,包括NumPy、Pandas、Matplotlib、Seaborn、Scikit-learn等。这些库协同工作,构成了Python数据科学生态系统的基石,能够覆盖从数据获取、预处理、探索性数据分析(EDA)、数据可视化到机器学习建模的整个流程。 第一部分:Python基础与数据处理基石 本书的起点是扎实的Python基础知识,特别是针对数据科学应用所需的部分。我们将快速回顾Python的核心语法,如变量、数据类型、控制流、函数和类,并重点讲解Python中用于科学计算的强大库——NumPy。NumPy是Python进行数值计算的基石,它提供了高性能的多维数组对象(ndarray)以及用于处理这些数组的各种函数。读者将学会如何创建、索引、切片和操作NumPy数组,理解广播机制,以及利用NumPy进行向量化计算,从而显著提高代码的执行效率。 接着,我们将深入探讨Pandas库,这是Python数据分析的“瑞士军刀”。Pandas提供了两种核心数据结构:Series(一维带标签的数组)和DataFrame(二维带标签的表格数据结构)。本书将详细讲解如何使用Pandas进行数据的读取与写入(支持CSV、Excel、SQL数据库等多种格式),数据的索引与选择,缺失值的处理(填充、删除),重复值的识别与删除,以及数据的清洗与转换(类型转换、字符串操作、数据聚合、分组等)。通过大量实用示例,读者将掌握如何将原始、杂乱的数据转化为干净、结构化的数据集,为后续的分析奠定坚实基础。 第二部分:数据探索性分析与可视化 在数据清洗和整理完毕后,探索性数据分析(EDA)是理解数据特性、发现潜在模式和验证假设的关键步骤。本书将引导读者运用Python工具进行深入的数据探索。我们将学习如何计算描述性统计量(均值、中位数、标准差、方差、分位数等),识别数据分布(直方图、密度图),检测异常值(箱线图、散点图),以及分析变量之间的关系(相关性矩阵、散点图矩阵)。 数据可视化是EDA中不可或缺的一部分,它能直观地呈现数据特征和分析结果,帮助我们更快地理解数据。本书将系统介绍Matplotlib和Seaborn这两个强大的可视化库。Matplotlib作为Python的经典绘图库,提供了极高的灵活性,可以创建各种静态、动态和交互式图表,包括折线图、散点图、柱状图、饼图、直方图等。我们将学习如何自定义图表的各个元素,如标题、坐标轴标签、图例、颜色、样式等。 Seaborn库则构建在Matplotlib之上,提供了更高级、更美观的统计图形绘制功能。Seaborn特别擅长绘制各种表示数据分布和关系的高级图表,如热力图(heatmap)、计数图(countplot)、分布图(distplot)、联合分布图(jointplot)、配对图(pairplot)等。本书将通过大量示例,演示如何使用Seaborn轻松创建出专业、 informative且具有视觉吸引力的数据可视化作品,帮助读者从数据中发现洞察,并有效地向他人传达信息。 第三部分:数据分析进阶与机器学习应用 掌握了数据处理与可视化基础后,本书将进一步拓展到更高级的数据分析技术和机器学习应用。我们将介绍如何进行特征工程,包括特征提取、特征选择、特征缩放等,这些步骤对于提升机器学习模型的性能至关重要。 接着,我们将引入Scikit-learn库,这是Python中最受欢迎的机器学习库之一,提供了丰富多样的算法和工具。本书将精选一些核心的机器学习算法,并结合实际数据集进行演示,包括: 监督学习: 回归算法: 线性回归、多项式回归,用于预测连续数值。 分类算法: 逻辑回归、K近邻(KNN)、支持向量机(SVM)、决策树、随机森林,用于预测离散类别。 无监督学习: 聚类算法: K-Means,用于发现数据的自然分组。 降维算法: 主成分分析(PCA),用于减少数据维度,消除冗余。 对于每种算法,本书都将详细阐述其基本原理,讲解如何在Scikit-learn中实现,并指导读者如何评估模型性能(如准确率、召回率、F1分数、均方误差等),以及如何进行模型调优以获得最佳结果。 案例驱动的学习体验 本书最大的特色在于其“实战”导向。每一个概念和技术的讲解都紧密围绕着真实世界的数据集和应用场景。我们将从简单的示例开始,逐步引入更复杂的问题,例如: 电商数据分析: 分析用户购买行为,预测商品销量,进行用户画像。 金融数据分析: 股票价格预测,风险评估。 社交媒体数据分析: 情感分析,趋势预测。 医疗健康数据分析: 疾病预测,药物疗效评估。 城市交通数据分析: 交通流量预测,路径优化。 通过这些案例,读者不仅能够学习到Python数据科学工具的使用方法,更能理解这些工具在解决实际问题中的价值和威力。每章的结尾都提供了练习题,鼓励读者动手实践,巩固所学知识。 本书的目标读者 本书适合以下人群: 初学者: 对数据分析和机器学习感兴趣,但缺乏相关编程经验的读者。 有一定Python基础的开发者: 希望将Python应用于数据科学领域的开发者。 在校学生: 计算机科学、统计学、数学、工程学等专业的学生,需要学习数据分析和编程技能。 数据分析师、数据科学家、机器学习工程师: 希望系统学习或提升Python数据科学技能的从业者。 对数据驱动的决策感兴趣的各行业人士: 希望利用数据解决实际问题,提升工作效率和业务表现的管理者或业务人员。 总结 《Python数据分析与可视化实战》不仅仅是一本技术书籍,更是一本引领读者进入数据科学世界的实践指南。通过本书,读者将掌握一套完整的Python数据科学工作流程,能够自信地处理各种数据挑战,从数据中提取有价值的见解,并将其转化为驱动创新的力量。我们相信,通过本书的学习,您将能够有效提升您的数据分析能力,在您的学术研究或职业生涯中取得更大的成就。