能不能用R语言按下面编程形式将正态分布改为指数分布,画出指数分布概率密度和分布函数?
sigma=1u=c(-2,0,2)#计算和绘图x=seq(-6,6,0.1)t1=t2=list()for(iin1:3){t1[[i]]=dnorm(x,u[i],s...
sigma=1
u=c(-2,0,2)
#计算和绘图
x=seq(-6,6,0.1)
t1=t2=list()
for(i in 1:3){
t1[[i]]=dnorm(x,u[i],sigma)
t2[[i]]=pnorm(x,u[i],sigma)
}
par(mar=c(2,2,2,1))
plot(x,t1[[1]],xlim=c(-6,6),type="l",lty=2,col=2) #概率分布图
lines(x,t1[[2]])
lines(x,t1[[3]],col=4,lty=3)
text(u,0.35,paste("u=",u,sep=""),col=c(2,1,4))
plot(x,t2[[1]],xlim=c(-6,6),type="l",lty=2,col=2) #累计分布图
lines(x,t2[[2]])
lines(x,t2[[3]],col=4,lty=3)
text(u,0.5,paste("u=",u,sep=""),col=c(2,1,4)) 展开
u=c(-2,0,2)
#计算和绘图
x=seq(-6,6,0.1)
t1=t2=list()
for(i in 1:3){
t1[[i]]=dnorm(x,u[i],sigma)
t2[[i]]=pnorm(x,u[i],sigma)
}
par(mar=c(2,2,2,1))
plot(x,t1[[1]],xlim=c(-6,6),type="l",lty=2,col=2) #概率分布图
lines(x,t1[[2]])
lines(x,t1[[3]],col=4,lty=3)
text(u,0.35,paste("u=",u,sep=""),col=c(2,1,4))
plot(x,t2[[1]],xlim=c(-6,6),type="l",lty=2,col=2) #累计分布图
lines(x,t2[[2]])
lines(x,t2[[3]],col=4,lty=3)
text(u,0.5,paste("u=",u,sep=""),col=c(2,1,4)) 展开
1个回答
展开全部
如果只是画图,用curve()函数就好了
画正态密度:curve(dnorm,xlim=c(-3,3),col=2)
xlim是控制x轴显示从哪儿到哪儿,col是控制曲线颜色
画指数密度:curve(dexp(x,rate=1),xlim=c(0,5))
画指数分布:curve(pexp(x,rate=1),xlim=c(0,5))
你的方法是生成很多点x=seq(-6,6,0.1)
逐一算出函数值
t1[[i]]=dnorm(x,u[i],sigma)
t2[[i]]=pnorm(x,u[i],sigma)
最后在plot出来,用type="l"和lty=2的虚线弄出来。
curve这些功能都可以做到。
curve(dexp(x,rate=1),xlim=c(0,5),lty=2,add=T)就有虚线,
add=T可以一图多线
画正态密度:curve(dnorm,xlim=c(-3,3),col=2)
xlim是控制x轴显示从哪儿到哪儿,col是控制曲线颜色
画指数密度:curve(dexp(x,rate=1),xlim=c(0,5))
画指数分布:curve(pexp(x,rate=1),xlim=c(0,5))
你的方法是生成很多点x=seq(-6,6,0.1)
逐一算出函数值
t1[[i]]=dnorm(x,u[i],sigma)
t2[[i]]=pnorm(x,u[i],sigma)
最后在plot出来,用type="l"和lty=2的虚线弄出来。
curve这些功能都可以做到。
curve(dexp(x,rate=1),xlim=c(0,5),lty=2,add=T)就有虚线,
add=T可以一图多线
光点科技
2023-08-15 广告
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件...
点击进入详情页
本回答由光点科技提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询