r - 正态分布图上的置信区间
问题描述
我想在置信区间的 x 位置绘制垂直线。我做了统计,但我找不到将其添加到情节的方法。请遵循此 MWE:
xseq<-seq(-4,4,.01)
densities<-dnorm(xseq, 0,1)
par(mfrow=c(1,3), mar=c(3,4,4,2))
plot(xseq, densities, col="darkgreen",xlab="", ylab="Densidade", type="l",lwd=2, cex=2, main="Normal", cex.axis=.8)
词是:
x<-t.test(xseq, conf.level = 0.95)$conf.int
但是当我尝试用以下方式绘制线时:
line(x[1], x[2])
它给了我错误:
Error in structure(.Call(C_tukeyline, as.double(xy$x[ok]), as.double(xy$y[ok]), :
insufficient observations
在指出 abline() 的评论之后,它可以工作:
但是,我认为 t.test 会给出正态分布的 cis 是不正确的。
- 我究竟做错了什么?
解决方案
使用ggplot2
:
ggplot(data = df, aes(x = xseq, y = densities)) +
geom_point() +
geom_vline(xintercept = c(x[1], x[2]))
使用适当的置信区间:
ggplot(data = df, aes(x = xseq, y = densities)) +
geom_point() +
geom_vline(xintercept = c(x2[1], x2[2]))
样本数据:
df <- data.frame(xseq = seq(-4,4,.01),
densities = dnorm(xseq, 0,1))
x <- t.test(xseq, conf.level = 0.95)$conf.int
x2 <- qnorm(c(0.05, 0.95), mean = mean(xseq), sd = sd(xseq))
推荐阅读
- python - Apache + mod_wsgi + flask app:由于接收到 SIGUSR1 信号而进行优雅重启
- python - 在 Jenkins 代理上安装 Tensorflow (cpu)
- spring-boot - 从 Spring Boot 缓存抽象连接到 Redis 集群
- amazon-ec2 - Kubernetes 使用负载均衡器公开入口资源(API 对象)?
- javascript - 将编辑/删除图标添加到由 JSOn (AjaxCall) 填充的数据行
- html - 如何将数字输入重置为 Chrome 中的默认行为
- javascript - 我想使用带有 JavaScript 语法的 Django 模板语言
- php - 如何在另一个指令中调用 Laravel Blade 指令?
- postgresql - 带有覆盖世界的六边形网格坐标的表格
- xslt - 使用 xsl 来确定一个特定标签后面是否跟着另一个特定标签