全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
17950 8
2013-11-17
R中正态QQ图的做法是:以R自带数据AirPassengers为例
复制代码
结果:
TT截图未命名.bmp
我觉得不妥,自己编程制作了正态QQ图,与大家分享,脚本如下:
复制代码
结果:
TT截图未命名.bmp
或者再规范一些:
复制代码
结果:
TT截图未命名.bmp

解释或分析:纵轴是数据的实际分位数,横轴是正态分布的理论分位数,红线是45度的参考线,如果数据是正态分布,则散点应该落在直线上。即实际分位数与理论分位数偏差不大。反之,如果偏离较大,则证明数据并非来自正态总体。
本例来看,散点与参考线偏离较大,并不服从正态分布。

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2013-11-17 20:24:22
深奥!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2013-11-17 20:30:40
tempta 发表于 2013-11-17 20:24
深奥!
谢谢您的提醒,已经在最后加了解释和说明。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2013-11-17 23:41:23
为楼主

和楼主一起学习。
y=quantile(..,seq(0,1,0.01), 进行了一次Y模拟,Y的长度变为100.
x=qnorm(),p分布由0到1,会出现 -+INF,长度100。
x,y都是由小到大排序,-INF 对应着Y最小,+INF对应着Y最大。
数据长度变为100,plot图时,丢掉最大和最小值。


看了下 qqnorm代码
methods(qqnorm)
qqnorm.default

y数据没有变动。
x利用p=ppoints(length(y)) #提取y长度,进行类似quantile,趋于(0,1)p=(1L:n - a)/(n + 1 - 2 * a)  n=length(y),a=3/8 谁能解释下这个p?什么公式原理?
#   来确定qnorm()中的分布。
y,x 通过x=qnorm(p)[order( order(y))] 排序建立关系。
plot时,y是真实的数据,可以看到x轴标准差的分布情况。
做直线时,倒是利用quantile(y,c(0.25.0.75)和 qnorm(c(0.25,0.75))两点确定直线和 楼主的判断思路一致。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2013-11-18 00:10:18
jmpamao 发表于 2013-11-17 23:41
为楼主

和楼主一起学习。
不错,我的做法确实少了两个极端值,但因为数据为大样本,应该并不影响对分布的判断。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2013-11-18 00:13:59
jmpamao 发表于 2013-11-17 23:41
为楼主

和楼主一起学习。
“做直线时,倒是利用quantile(y,c(0.25.0.75)和 qnorm(c(0.25,0.75))两点确定直线和 楼主的判断思路一致。”
我认为这是我与R不一样的地方。R是两点确定一条直线,用的是两上四分位点。
我的理解是:如果分布相同,则所有分位点在理论上应该相等,故在截距为0斜率为1的直线上,即y=x线上,这就是红色的参考线。
我感觉从理论上来说我的理解是对的。
谢谢您的参与,问好!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群