xiezhh 发表于 2010-5-24 20:20:17

《MATLAB统计分析与应用:40个案例分析》

我的新书,预计5月底出版。书籍的内容简介+前言+目录如下,敬请大家关注!也希望各位版友不吝赐教,指出书中的错误与不足,以促进本书的进一步完善,谢谢大家!

《MATLAB统计分析与应用:40个案例分析》内容简介+前言+目录

内容简介:

    本书从实际应用的角度出发,以大量的案例详细介绍了MATLAB环境下的统计分析与应用。本书主要内容包括:利用MATLAB制作统计报告或统计报表;从文件中读取数据到MATLAB;从MATLAB中导出数据到文件;数据的平滑处理、标准化变换和极差归一化变换;生成一元和多元分布随机数;参数估计与假设检验;Copula理论及应用实例;方差分析;基于回归分析的数据拟合;聚类分析;判别分析;主成分分析;因子分析;图像处理中的统计应用等。本书可以作为高等院校本科生、研究生的统计学相关课程的辅导教材或教学参考书,也可作为从事数据分析与数据管理的研究人员的参考用书。

前    言:

    MATLAB、SAS、Spss、Splus、R语言等软件都可用作统计计算与分析,在这些软件中,MATLAB的功能无疑是最强大的,它有“草稿纸式”的编程语言,还有包罗万象的工具箱,用起来非常容易上手,用户不仅可以调用其内部函数作“傻瓜式”的计算,还可以根据自己的算法进行扩展编程。可以说,它就是计算软件中的“航空母舰”。试问读者朋友们,你们是想拥有一艘普通的“战舰”,还是想拥有一艘无所不能的“航空母舰”呢?

    在我们的生活中,统计无处不在,大到国家的国计民生,小到个人的生活起居,无不与统计息息相关,与统计有关的论着也如春日繁花,种类繁多。就目前情况来看,市面上有关统计与MATLAB结合的论着并不多见,并且大多只是MATLAB统计工具箱的英文翻译,或者在概率论与数理统计的教材里加了一些MATLAB代码,它们普遍存在的问题就是缺乏具体的案例分析,并且在统计的应用方面缺乏创新。本书仅以较少篇幅介绍MATLAB统计工具箱函数的调用方法,将通过大量的案例分析介绍MATLAB在统计方面的应用。本书内容分12章,另有2个附录,共涉及40个大的案例,其中有些大案例下还包含了一些小的案例。本书章节是这样安排的:第1章,利用MATLAB生成Word和Excel文档;第2章,数据的导入与导出;第3章,数据的预处理;第4章,生成随机数;第5章,参数估计与假设检验;第6章,Copula理论及应用实例;第7章,方差分析;第8章,数据拟合;第9章,聚类分析;第10章,判别分析;第11章,主成分分析;第12章,因子分析;附录A,图像处理中的统计应用案例;附录B,MATLAB统计工具箱函数大全。其中利用MATLAB与Word和Excel接口技术生成Word和Excel文档属作者原创性成果,利用这一技术可以很方便的生成各种统计报告或统计报表。另外本书还涉及5个基于统计方法的图像处理案例,包括从图像资料中提取绘图数据并进行曲线拟合,灰度图像和真彩图像的分割,从固定背景视频中识别运动目标,手写体数字识别,图像压缩等。这些都是传统统计软件所不能解决的问题,也是传统教材没有涉及的问题。

    作者长期从事本科生《概率论与数理统计》、《多元统计分析》,硕士研究生《数理统计》,博士研究生《应用数学基础》等课程的教学。在教学中,作者把MATLAB引入课堂,深受同学们欢迎,本书是作者长期教学经验的总结。


    作者长期活跃于研学论坛、仿真论坛和振动论坛的MATLAB版面,以及MATLAB中文论坛的各版面,作者编写的“利用MATLAB生成Word和Excel文档”、“猫追耗子的动画演示”、“概率统计实验演示系统”等MATLAB程序在各论坛间广泛流传。作者认为这些论坛是学习MATLAB的好地方,论坛上的很多问题都是经典的、共性的、案例式的。作者把自己学习MATLAB的经历总结成三个词语:“纸上谈兵”,“闭门造车”和“改革开放”。刚接触MATLAB时,由于没有电脑可用,只能天天泡在图书馆里看MATLAB教程,虽然笔记记了一大本,但是收获甚微,这段经历纯属“纸上谈兵”。后来有了自己的电脑,就以极大的热情投入到MATLAB的学习中,编写了大量的MATLAB程序,在实践中积累了一些MATLAB的使用经验,但是由于缺乏与MATLAB高手们的交流,这段经历也只能是“闭门造车”。再后来,由于查资料的缘故,“误入”论坛这片“桃花源”,从此进入了一个新天地,我也从“闭门造车”走向“改革开放”。我在论坛里神交了很多高手,体会到了与高手过招的乐趣,这种过招是一种付出和收获共存的过程,通过回答别人的问题提高了自己的能力,通过学习别人的帖子收获了别人的经验。到如今,蓦然回首,发现自己竟也成了别人眼中的“高手”。

    本书涉及的所有源程序在MATLAB R2009a(即MATLAB7.8)下经过了验证,均能够正确执行,读者可将自己的MATLAB版本更新至MATLAB R2009a及其以后的版本,以避免出现不必要的问题。

    在本书的写作过程中,作者得到了北京航空航天大学出版社陈守平编辑、MATLAB中文论坛创始人math(张延亮)和研学论坛MATLAB版版主 rocwoods(吴鹏)的支持与鼓励,陈守平编辑和math提出了宝贵的修改意见。在此,作者向他们表示最真诚的谢意!

    本书得到了天津科技大学 理学院和数学系领导及同事们的支持与帮助,在此一并表示最诚挚的感谢!

    最后,还要感谢我的家人,她们默默地为我付出,支持我顺利完成本书的写作, 在此,向我的家人表示最衷心的感谢!

    由于作者水平有限,书中难免出现错误,恳请广大读者和同行批评指正!

                                             谢中华
                                    2010年1月于天津滨海新区

目    录

第1章 利用MATLAB生成WORD和EXCEL文档
1.1 组件对象模型(COM)
    1.1.1 什么是COM
    1.1.2 COM接口
1.2 MATLAB中的ACTIVEX控件接口技术
    1.2.1 actxcontrol函数
    1.2.2 actxcontrollist函数
    1.2.3 actxcontrolselect函数
    1.2.4 actxserver函数
    1.2.5 利用MATLAB调用COM对象
    1.2.6 调用actxserver函数创建组件服务器
1.3 案例1:利用MATLAB生成WORD文档
    1.3.1 调用actxserver函数创建MicrosoftWord服务器
    1.3.2 建立Word文本文档
    1.3.3 插入表格
    1.3.4 插入图片
    1.3.5 保存文档
    1.3.6 完整代码
1.4 案例2:利用MATLAB生成EXCEL文档
    1.4.1 调用actxserver函数创建MicrosoftExcel服务器
    1.4.2 新建Excel工作簿
    1.4.3 获取工作表对象句柄
    1.4.4 插入、复制、删除、移动和重命名工作表
    1.4.5 页面设置
    1.4.6 选取工作表区域
    1.4.7 设置行高和列宽
    1.4.8 合并单元格
    1.4.9 边框设置
    1.4.10 设置单元格对齐方式
    1.4.11 写入单元格内容
    1.4.12 插入图片
    1.4.13 保存工作簿
    1.4.14 完整代码

第2章 数据的导入与导出
2.1 案例3:从TXT文件中读取数据
    2.1.1 利用数据导入向导导入TXT文件
    2.1.2 调用高级函数读取数据
    2.1.3 调用低级函数读取数据
2.2 案例4:把数据写入TXT文件
    2.2.1 调用dlmread函数写入数据
    2.2.2 调用fprintf函数写入数据
2.3 案例5:从EXCEL文件中读取数据
    2.3.1 利用数据导入向导导入Excel文件
    2.3.2 调用xlsread函数读取数据
2.4 案例6:把数据写入EXCEL文件

第3章 数据的预处理
3.1 案例7:数据的平滑处理
    3.1.1 smooth函数
    3.1.2 smoothts函数
    3.1.3 medfilt1函数
3.2 案例8:数据的标准化变换
    3.2.1 标准化变换公式
    3.2.2 标准化变换的MATLAB实现
3.3 案例9:数据的极差归一化变换
    3.3.1 极差归一化变换公式
    3.3.2 极差归一化变换的MATLAB实现

第4章 生成随机数
4.1 案例10:生成一元分布随机数
    4.1.1 均匀分布随机数和标准正态分布随机数
    4.1.2 RandStream类
    4.1.3 常见一元分布随机数
    4.1.4 任意一元分布随机数
4.2 案例11:生成多元分布随机数
4.3 案例12:蒙特卡洛方法
4.3.1 有趣的蒙提霍尔问题
4.3.2 抽球问题的蒙特卡洛模拟
4.3.3 用蒙特卡洛方法求圆周率
4.3.4 用蒙特卡洛方法求积分
4.3.5 街头骗局揭秘
第5章 参数估计与假设检验
5.1 案例13:常见分布的参数估计
5.2 案例14:正态总体参数的检验
    5.2.1 总体标准差已知时的单个正态总体均值的检验
    5.2.2 总体标准差未知时的单个正态总体均值的检验
    5.2.3 总体标准差未知时的两个正态总体均值的比较检验
    5.2.4 总体均值未知时的单个正态总体方差的检验
    5.2.5 总体均值未知时的两个正态总体方差的比较检验
5.3 案例15:分布的拟合与检验
    5.3.1 案例描述
    5.3.2 描述性统计量
    5.3.3 统计图
    5.3.4 分布的检验
    5.3.5 最终的结论
5.4 案例16:核密度估计
    5.4.1 经验密度函数
    5.4.2 核密度估计
    5.4.3 核密度估计的MATLAB实现
    5.4.4 核密度估计的案例分析

第6章 COPULA理论及应用实例
6.1 COPULA函数的定义与基本性质
    6.1.1 二元Copula函数的定义及性质
    6.1.2 多元Copula函数的定义及性质
6.2 常用的COPULA函数
    6.2.1 正态Copula函数
    6.2.2 t-Copula函数
    6.2.3 阿基米德copula函数
6.3 COPULA函数与相关性度量
    6.3.1 Pearson线性相关系数
    6.3.2 Kendall秩相关系数
    6.3.3 Spearman秩相关系数
    6.3.4 尾部相关系数
    6.3.5 基于Copula函数的相关性度量
    6.3.6 基于常用二元Copula函数的相关性度量
6.4 案例17:沪深股市日收益率的二元COPULA模型
    6.4.1 案例描述
    6.4.2 确定边缘分布
    6.4.3 选取适当的Copula函数
    6.4.4 参数估计
    6.4.5 与Copula有关的MATLAB函数
    6.4.6 案例的计算与分析

第7章 方差分析
7.1 案例18:单因素一元方差分析
    7.1.1 单因素一元方差分析的MATLAB实现
    7.1.2 案例分析
7.2 案例19:双因素一元方差分析
    7.2.1 双因素一元方差分析的MATLAB实现
    7.2.2 案例分析
7.3 案例20:多因素一元方差分析
    7.3.1 多因素一元方差分析的MATLAB实现
    7.3.2 案例分析一
    7.3.3 案例分析二
7.4 案例21:单因素多元方差分析
    7.4.1 单因素多元方差分析的MATLAB实现
    7.4.2 案例分析
7.5 案例22:非参数方差分析
    7.5.1 非参数方差分析的MATLAB实现
    7.5.2 Kruskal-Wallis检验的案例分析
    7.5.3 Friedman检验的案例分析

第8章 数据拟合
8.1 案例23:一元线性回归分析
    8.1.1 数据的散点图
    8.1.2 调用regress函数作一元线性回归分析
    8.1.3 调用regstats函数作一元线性回归分析
    8.1.4 调用robustfit函数作稳健回归
8.2 案例24:一元非线性回归分析
    8.2.1 数据的散点图
    8.2.2 调用nlinfit函数作一元非线性回归分析
    8.2.3 利用曲线拟合工具cftool作一元非线性拟合
8.3 案例25:多重回归分析
    8.3.1 调用自编reglm函数作多重回归分析
    8.3.2 调用stepwise函数作逐步回归

第9章 聚类分析
9.1 聚类分析简介
    9.1.1 距离和相似系数
    9.1.2 系统聚类法
    9.1.3 K均值聚类法
    9.1.4 模糊C均值聚类法
9.2 案例26:系统聚类法的案例分析
    9.2.1 系统聚类法的MATLAB函数
    9.2.2 样品聚类案例
    9.2.3 变量聚类案例
9.3 案例27:K均值聚类法的案例分析
    9.3.1 K均值聚类法的MATLAB函数
    9.3.2 K均值聚类法案例
9.4 案例28:模糊C均值聚类法的案例分析
    9.4.1 模糊C均值聚类法的MATLAB函数
    9.4.2 模糊C均值聚类法案例

第10章 判别分析
10.1 判别分析简介
    10.1.1 距离判别
    10.1.2 贝叶斯判别
    10.1.3 Fisher判别
10.2 案例29:距离判别法的案例分析
    10.2.1 classify函数
    10.2.2 案例分析
10.3 案例30:贝叶斯判别法的案例分析
    10.3.1 NaiveBayes类
    10.3.2 案例分析
10.4 案例31:FISHER判别法的案例分析
    10.4.1 Fisher判别分析的MATLAB实现
    10.4.2 案例分析

第11章 主成分分析
11.1 主成分分析简介
    11.1.1 主成分分析的几何意义
    11.1.2 总体的主成分
    11.1.3 样本的主成分
    11.1.4 关于主成分表达式的两点说明
11.2 主成分分析的MATLAB函数
    11.2.1 pcacov函数
    11.2.2 princomp函数
    11.2.3 pcares函数
11.3 案例32:从协方差矩阵或相关系数矩阵出发求解主成分
    11.3.1 调用pcacov函数作主成分分析
    11.3.2 结果分析
11.4 案例33:从样本观测值矩阵出发求解主成分
    11.4.1 调用princomp函数作主成分分析
    11.4.2 结果分析
    11.4.3 调用pcares函数重建观测数据

第12章 因子分析
12.1 因子分析简介
    12.1.1 基本因子分析模型
    12.1.2 因子模型的基本性质
    12.1.3 因子载荷阵和特殊方差阵的估计
    12.1.4 因子旋转
    12.1.5 因子得分
    12.1.6 因子分析中的Heywood现象
12.2 因子分析的MATLAB函数
12.3 案例34:基于协方差矩阵或相关系数矩阵的因子分析
12.4 案例35:基于样本观测值矩阵的因子分析
    12.4.1 读取数据
    12.4.2 调用factoran函数作因子分析

附录A 图像处理中的统计应用案例
案例36:基于图像资料的数据重建与拟合
    1.1.1 案例描述
    1.1.2 重建图像数据
    1.1.3 曲线拟合
案例37:基于K均值聚类的图像分割
    1.2.1 灰度图像分割案例
    1.2.2 真彩图像分割案例
案例38:基于中位数算法的运动目标检测
    1.3.1 案例描述
    1.3.2 中位数算法原理
    1.3.3 本案例的MATLAB实现一
    1.3.4 本案例的MATLAB实现二
案例39:基于贝叶斯判别的手写体数字识别
    1.4.1 样本图片的预处理
    1.4.2 创建朴素贝叶斯分类器对象
    1.4.3 判别效果
案例40:基于主成分分析的图像压缩与重建
    1.5.1 基于主成分分析的图像压缩与重建原理
    1.5.2 图像压缩与重建的MATLAB实现

附录B MATLAB统计工具箱函数大全

bainhome 发表于 2010-5-24 21:45:31

支持一下。
ps:刚才在rocwoods的帖子里看到有人要电子版,饭喷了一屏幕,一会儿还要花时间擦干净,没时间看“电子版”,所以就不要了,书店看到后支持一本。

rocwoods 发表于 2010-5-24 23:19:16

本帖最后由 rocwoods 于 2010-5-24 23:20 编辑

专门介绍MATLAB统计方面的书目前市面上的都比较少,看到的一些书都停留在工具箱的翻译上,谢老师的书以案例形式涉及到统计应用主要方面,值得期待,近水楼台先得月,下周就可以拜读了:lol

taohe 发表于 2010-5-25 06:40:37

本帖最后由 taohe 于 2010-5-25 06:42 编辑

祝贺谢老师的新书出版。统计分析应该是matlab应用极为广泛的一个领域。统计分析也是其他很多技术的基础,比如信号处理中关于信号的检测、估计等。看了上面的简介,觉得涵盖的内容挺有用的,如果看到后一定买一本留着。


另:好久没有看见bainhome了,近来开好?现在网络正常了吧。

bainhome 发表于 2010-5-25 10:22:10

好久没有看见bainhome了,近来开好?现在网络正常了吧
呵呵,刚刚通网十来天。
一上来就看到两个自己熟悉的ID大作即将问世,十分高兴。看到目录觉得两本书都向着专门化,专业化方向靠拢,不再是那种对着帮助示例胡乱翻译的“万金油”类速成书。
盼望今后作者们都能向你们几位一样,敢和一线读者亲密接触寻找灵感,能在论坛和其他同仁一同讨论。
也许这应该是今后MATLAB书籍作者比较实际的写作途径。

xiezhh 发表于 2010-5-25 16:43:44

谢谢几大高手的支持!!!很高兴看到bainhome大牛的回归!!!为了照顾新手,书中不可避免也会涉及一些工具箱的翻译,希望不会让你们失望。数据的导入导出部分参考了taohe大侠的《深入浅出MATLAB7.x混合编程》,再次感谢taohe大侠!

messenger 发表于 2010-5-25 17:21:29

祝贺~

shunfly 发表于 2010-5-25 17:54:43

我本科也算大半个数学专业的学生了,支持一个。希望大伙多来论坛交流交流

t1314j2003 发表于 2010-7-11 17:51:12

谢谢LZ的推荐

alexqxp 发表于 2010-7-27 08:30:10

作者长期从事本科生《概率论与数理统计》、《多元统计分析》,硕士研究生《数理统计》,博士研究生《应用数学基础》等课程的教学。在教学中,作者把MATLAB引入课堂,深受同学们欢迎,本书是作者长期教学经验的总结。
数学教师写书,支持。由于现在的软件函数可以直接计算出所需的结果,很多时候我们用了函数但是并不理解其中的数学细节及计算流程,这影响了我们对函数参数的选择和应用。我们使用函数机器,但是仅仅限于按几个参数按钮。这对于使用来说,当然有其方便之处,扩大了数学的应用范围,使得数学本身的难度不再成为应用的障碍,当然坏处也有,只能依葫芦画瓢地粗略使用这些函数,不能了解其中的细微精妙之处。数学教师的书应该可以使我们对于这些函数的理解更加深入。
前言的文字比较好,相信内容文字也不错,支持一下。

doublefrank 发表于 2010-7-27 22:16:57

终于发现一个统计大师了!!
今天,谢老师的书帖被秦老师被置顶了,才发现谢老师这本统计的书。
我看了看目录,虽然有几章是我正好学习的,但没找到我要解决的问题呀,
就是对截尾正态分布,怎么通过U(0,1)均匀分布来获得截断标准正态分布,比如区间[-2,2]。
我的帖子在这里,麻烦谢老师指点一二:http://forum.simwe.com/thread-941439-1-1.html

我看到dangdang有您这本书了,我打算等freddymusic的书在当当出来后,把你们俩的书一起买了。

tianlaihpu 发表于 2010-7-28 23:19:54

恭喜啊。。。。。。

yefeng-sober 发表于 2010-7-29 03:04:22

支持下   ddd

xiezhh 发表于 2010-8-1 12:59:58

12# doublefrank

试试这段程序行不行

function x = trimnormrnd(mu,sigma,a,b,m,n)
A = (a-mu)/sigma;
B = (b-mu)/sigma;
delta = normcdf(B)-normcdf(A);
x = sigma*norminv(delta*rand(m,n)+normcdf(A)) + mu;

doublefrank 发表于 2010-8-21 16:21:17

FR的书前段时间一直缺货,上周在卓越买了。
无图无真相:) :

终于发现一个统计大师了!!
今天,谢老师的书帖被秦老师被置顶了,才发现谢老师这本统计的书。
我看了看目录,虽然有几章是我正好学习的,但没找到我要解决的问题呀,
....
我看到dangdang有您这本书了,我打算等freddymusic的书在当当出来后,把你们俩的书一起买了。 ...
doublefrank 发表于 2010-7-27 22:16 http://forum.simwe.com/images/common/back.gif

doublefrank 发表于 2010-8-21 16:23:14

谢谢!
没想谢老师在这里也回复了代码的事情。



试试这段程序行不行


function x = trimnormrnd(mu,sigma,a,b,m,n)
A = (a-mu)/sigma;
B = (b-mu)/sigma;
delta = normcdf(B)-normcdf(A);
x = sigma*norminv(delta*rand(m,n)+normcdf(A)) + mu;
xiezhh 发表于 2010-8-1 12:59 http://forum.simwe.com/images/common/back.gif

o3737 发表于 2010-9-6 11:39:05

支持,马上去拜读。

moguowei00 发表于 2010-10-5 22:14:46

真好啊。祝贺一下。

ChaChing 发表于 2010-10-8 11:06:35

但这个不得不支持一下
若想要学习/接触下统计, 此书真的蛮适合, 虽然个人还没看完:L

anduril27 发表于 2010-10-11 17:18:02

作者长期从事本科生《概率论与数理统计》、《多元统计分析》,硕士研究生《数理统计》,博士研究生《应用数学基础》等课程的教学。在教学中,作者把MATLAB引入课堂,深受同学们欢迎,本书是作者长期教学经验的总结
页: [1] 2 3
查看完整版本: 《MATLAB统计分析与应用:40个案例分析》