前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >哦-用残差分布选择最优模型?

哦-用残差分布选择最优模型?

作者头像
herain
发布2022-04-27 18:59:25
4690
发布2022-04-27 18:59:25
举报
文章被收录于专栏:数据指象数据指象
温馨提示

本公众号名称由趣味数据周刊更名为:数据指象。

指象:谓天以景象示意,出自于《汉书》;希望以数据指象为言语,得一类而达之。感谢一路走路,不离不弃的你们,谢谢。

收到一位知友的求助:我对一组模型进行了计算,获取了每个模型的残差,残差(misfit-data$X2)的频次直方图:

perform a goodness of fit test (using residuals and a chi2 distribution) and select models that pass the test at a certain confidence level (e.g., 95%).

这个我不是很明白怎么进行操作分析,能请您解答一下吗?

收到数据:发现数据包含60个模型,每一个模型有33个实验残差。如果通过残差分布来选择模型,需要我们完成第一步检验:模型与残差的相关性的检验,这是我们能否根据残差来选择模型的依据;

这里我们选择用卡方检验,置信水平为95%;

假设检验:

原假设-模型与残差的频次分布没有关系

备择假设-模型与残差的频次分布有关系

1,统计描述(mode-模型,misfit-残差)

代码语言:javascript
复制
summary(misfit)
Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
0.3322  0.3888  0.4818  0.5033  0.5954  0.8329 

对misfit进行分组:优,良,差

misfit>=0.3 and misfit<0.5 as 优 ,

misfit>=0.5 and misfit<0.7 as 良,

misfit>=0.7 and misfit<0.9 as 差

2,得到模型分组数据

代码语言:javascript
复制
library(sqldf)
载入需要的程辑包:gsubfn
载入需要的程辑包:proto
载入需要的程辑包:RSQLite
Warning message:
程辑包‘RSQLite’是用R版本3.5.2 来建造的 
a<-sqldf("select X1 as mode, count(1) as 实验次数, 
sum(case when X2>=0.3 and X2<0.5 then 1 else 0 end) as 优 ,
sum(case when X2>=0.5 and X2<0.7 then 1 else 0 end) as 良, 
sum(case when X2>=0.7 and X2<0.9 then 1 else 0 end) as 差 
from data group by X1")

3,运用卡方检验:模型的优劣与残差的相关行

代码语言:javascript
复制
chisq.test(a) ## 去除多余的列:实验次数
 Pearson's Chi-squared test
data:  a
X-squared = 211.04, df = 177, p-value = 0.04097

自由度为:177,p值:0.04097, 可以拒绝原假设的模型与残差分布没有关系,而选择假设:二者存在相关性。

由此,我们可以通过残差的分布来选择模型

得知:模型30-41都是比较优的模型。

如果要继续优中选优,可以对比模型残差变量的集中程度与离散度。

- END -

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-07-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 数据指象 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 温馨提示
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档