楼主: liqian0614
4911 3

[问答] 数学功底不错的进来看看啊~~ [推广有奖]

  • 2关注
  • 0粉丝

高中生

45%

还不是VIP/贵宾

-

威望
0
论坛币
21 个
通用积分
0.0513
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
214 点
帖子
17
精华
0
在线时间
19 小时
注册时间
2014-7-22
最后登录
2014-9-9

楼主
liqian0614 发表于 2014-8-5 17:44:41 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
x<-mtcars$mpg
h<-hist(x,breaks=12,col="red",xlab="Miles Per Gallon",main="Histogram with normal curve and box")
xfit<-seq(min(x),max(x),length=40)
yfit<-dnorm(xfit,mean=mean(x),sd=sd(x))
yfit<-yfit*diff(h$mids[1:2])*length(x)
lines(xfit,yfit,col="blue",lwd=2)

box()

  yfit<-yfit*diff(h$mids[1:2])*length(x) 这一句不是太懂,为什么画正态曲线是这样画的,是什么公式么?

二维码

扫码加我 拉你入群

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

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

关键词:不错的 normal 数学

沙发
huyiustc 发表于 2014-8-9 11:58:25
diff(h$mids[1:2])是组距
hist()默认画的是频数图,即纵轴为频数
而density只是密度,密度约为频率/组距 ,所以讲密度图像画到频数图中要进行伸缩变化,频数=频率/组距*组距*样本总数=密度*组距*样本总数,即yfit<-yfit*diff(h$mids[1:2])*length(x)

若果在hist中添加freq=FALSE即可画频率/组距图,直接对应到密度图
给个简单例子吧

x=rnorm(1000)
h1=hist(x,breaks=20)   #频数图
f1=function(x){dnorm(x)*diff(h1$mids[1:2])*1000}   #频数=频率/组距*组距*总数~密度*组距*总数
curve(f1,from=min(x),to=max(x),add=TRUE)


h2=hist(x,breaks=20,freq=FALSE)    #频率/组距图:频率/组距可视为密度,面积和为1
f2=function(x){dnorm(x)}
curve(f2,from=min(x),to=max(x),add=TRUE)

藤椅
huyiustc 发表于 2014-8-9 12:00:14
不好意思,前面不知道为啥,排版很乱了:

diff(hmids[1:2])是组距hist()默认画的是频数图,
即纵轴为频数而density只是密度,密度约为频率/组距,
所以将密度图像画到频数图中要进行伸缩变化,
频数=频率/组距∗组距∗样本总数=密度∗组距∗样本总数,
即yfit<−yfit∗diff(hmids[1:2])*length(x)

已有 2 人评分学术水平 热心指数 信用等级 收起 理由
慵懒的小白鸽 + 1 + 1 + 1 分析的有道理
完美漆黑 + 5 + 5 + 5 精彩帖子

总评分: 学术水平 + 6  热心指数 + 6  信用等级 + 6   查看全部评分

板凳
何去何從 发表于 2017-10-9 20:42:17
huyiustc 发表于 2014-8-9 12:00
不好意思,前面不知道为啥,排版很乱了:

diff(hmids[1:2])是组距hist()默认画的是频数图,
你好 ,我大致明白了,但是,为什么要用diff(h¥mids[1:2])来确定组距呢?

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-30 21:25