hanmingduan的个人博客分享 http://blog.sciencenet.cn/u/hanmingduan 绝不小心求证,只管大胆胡说

博文

对于正态分布的认识、拟合

已有 265 次阅读 2025-4-25 02:01 |个人分类:科研写作|系统分类:科研笔记

1、问题的缘起

学生张XX在本科毕业论文中,使用了均值-标准差等级划分方法来对城市地表温度进行分级。陈松林等在等间距法和均值标准差法界定城市热岛的对比研究[J]”一文中使用了这种方法,下面按照陈的文章说一下这种方法划定温度等级的基本思路。

假设一个区域的地表平均温度为μ,标准差为σ;用这些参数把区域的地表温度分成5个等级,则不同温度区域的温度划分范围为:

l  区:< μ-σ

l  次低温区:μ-σ ~ μ-0.5σ

l  区:μ-0.5σ ~ μ+0.5σ

l  次高温区:μ+0.5σ ~ μ+σ

l  区:> μ+σ

上面用来间隔等级的0.5δ,有的文献也有用1δ或者1.5δ来表示。

2、正态分布

为什么会这样划分呢?我理解,这是假设地表温度的分布面积呈正态分度。即绝大部分区域的温度接近均值,偏离均值的面积较少,偏离均值越大的区域面积越小。因为标准的正态分布中,68%的样本会分布在距离均值正负1个标准差范围以内;96%的样本会分布在距离均值2个正负标准差以内;99%的样本分布在距离均值3个正负标准差的范围以内。这是正态分布的基本特征。

我最早看到这种思路的处理,是在读硕士期间,导师给我一篇日本人写的关于塔里木河某地的植被变化的文章。他的思路是利用不同时期的NDVI的差值探测植被变化。作者认为,两个年份之间的NDVI差值应该是正态分布,均值为0,在0周围正负1个标准差范围内的区域,可以视为植被状态未发生变化;其他的就是变好了和变差了的区域。当时文章里有一个正态分布的示意图。可惜我当时不太理解。

3、我对正态分布拟合的认识(一)

早上让学生发给我他的地表温度分布直方图。其中一个图如下。

QQ图片20250425015712.jpg

我感觉这个直方图接近正态分布,但是不标准。比如左侧有一个类似于长尾的区域。我的第一感觉是,需要对这个直方图的分布做一个正态分布函数的拟合。然后用拟合所得正态分布函数的均值和标准差,来确定温度的分级标准。

事实上,在ArcGIS中或者在ENVI中,能够很方便地计算出上述直方图及其所对应的图像的均值和标准差。但是我为什么不直接用这两个值,反而要拟合一下呢?这是因为我觉得这样的图像不是一个标准的正态分布。上面直方图所对应图像像元值(温度值)直接计算得到的均值,可能比正态分布函数的均值要小。因为在低值区,直方图上有大量的值。而标准分布中,均值左右应该是对称的。

但是怎么去拟合,这个需要借助数据处理软件和一些数理知识以及数据分析技巧。

4、我对正态分布拟合的认识(二)

今天下午和晚上,我花了很多时间来尝试对直方图进行正态分布函数拟合。这也让我对正态分布函数的所谓拟合有了一些新的看法。

我之前使用过SPSSSigmaplotSigmaplot是一个小型的软件,我很快就装好了。但是反复试验了好多次,拟合失败。SPSS我印象中是一个庞大的软件,就没有安装。

但是我在网上看了一些材料和使用教程。这让我觉得就一个确定的直方图,对其进行正态分布函数的拟合,其实并不会产生不同于原来直方图的均值和方差;因为所谓的正态函数曲线,我感觉就是基于直方图的均值和方差而绘出的。

证据一:来自于SPSS的教学材料。https://mp.weixin.qq.com/s/xB6625ITA-mRiuHJCOY1ow

这个材料用5000个人的身高数据,在SPSS中绘制了频率直方图。同时在直方图上呈现了正态曲线。从下面的直方图和正态曲线所在的图幅来看,右边给出了均值和标准差。我认为,这个均值和标准差是正态曲线生成后自动输出的。(我电脑上没有spss,无法确认)。

我自己用这个链接提供的数据,在excel里面计算了均值和方差,与这个spss输出的结果是一致的。我怀疑,spss中的正态曲线,很可能就是根据直方图的均值和标准差生成的。因为对于正态曲线的确定而言,只需要均值和标准差两个参数就够了。

640.png

微信图片_20250425015851.png

证据二:来自于EXCEl的教学材料

https://www.zhihu.com/question/589240846?write

https://zhuanlan.zhihu.com/p/544718588

上面两个链接,都是在直方图基础上,添加了正态分布曲线。而这个正态曲线,恰恰是用直方图的均值和标准差推算出来的。

比如下面这个图,看起来直方图并不是一个标准的正态分布,他的峰值比正态曲线要大一些。但图中的直方图和正态曲线具有相同的均值和标准差。

v2-1a5eb791d391892342ce4a96ebdabe63_1440w.jpg

证据三:来自于Matlab的教学材料。

https://mp.weixin.qq.com/s/m5lnw6GzUB6LMTYqO6DAgg

上面的链接中,matlab通过normfit()函数,提取了直方图数据的均值和标准差;通过normpdf()函数计算了概率分布函数,后者的输入值包括了前面提取的均值和标准差。

[mu, sigma] = normfit(data);

pdf_fitted = normpdf(x, mu, sigma);

plot(x, pdf_fitted, 'r', 'LineWidth', 2)

所以即便是在matlab中,看起来一个直方图附带了一组正态分布曲线。好像这个正态曲线是对直方图的模拟,实际上恰好相反,正态曲线是基于直方图的均值和标准差来确定的。

5、总结

在城市热岛研究中,采用均值-标准差方法分级,不需要额外拟合正态曲线(然后在正态曲线中计算均值和标准差)。而是直接采用温度图的均值和标准差。

当然,在逻辑上,能够使用均值-标准差方法的温度图,其温度的面积分布,应该符合正态分布才对。

这就引出一个新的话题,如何检验一个数据是否符合正态分布呢?其实在SPSS中可以实现,在Matlabpython中更应该可以实现。



https://wap.sciencenet.cn/blog-3416370-1483309.html

上一篇:删除恶意浏览器插件smartbuy
收藏 IP: 39.144.143.*| 热度|

3 尤明庆 王涛 刘进平

该博文允许注册用户评论 请点击登录 评论 (2 个评论)

数据加载中...
扫一扫,分享此博文

全部作者的其他最新博文

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2025-4-26 09:54

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部