ある自由度のt分布とその棄却域,p値の塗りつぶし,片側と両側の違いを比較した図です。
library(tidyverse)
## ─ Attaching packages ──────────────────── tidyverse 1.3.1 ─
## ✓ ggplot2 3.3.3 ✓ purrr 0.3.4
## ✓ tibble 3.1.2 ✓ dplyr 1.0.6
## ✓ tidyr 1.1.3 ✓ stringr 1.4.0
## ✓ readr 1.4.0 ✓ forcats 0.5.1
## ─ Conflicts ───────────────────── tidyverse_conflicts() ─
## x dplyr::filter() masks stats::filter()
## x dplyr::lag() masks stats::lag()
# t分布の描画 ------------------------------------------------------------------
library(gridExtra)
##
## 次のパッケージを付け加えます: 'gridExtra'
## 以下のオブジェクトは 'package:dplyr' からマスクされています:
##
## combine
old = theme_set(theme_gray(base_family = "HiraKakuProN-W3"))
q <- qt(c(0.025,0.975),df=18)
ggplot(data = data.frame(X = c(-5, 5)), aes(x = X)) + stat_function(fun = dt, args = list(df = 18))+xlab("")+
geom_ribbon(data=data.frame(X=x<-seq(q[1],q[2],len=101), Y=dt(x,df=18)), aes(x=X, ymin=0, ymax=Y),alpha=0.3)+
geom_ribbon(data=data.frame(X=x<-seq(2.794003,5,len=101), Y=dt(x,df=18)), aes(x=X, ymin=0, ymax=Y),fill="red",alpha=0.8)
# 片側と両側
p1 <- ggplot(data = data.frame(X = c(-5, 5)), aes(x = X)) + stat_function(fun = dt, args = list(df = 18))+xlab("")+
geom_ribbon(data=data.frame(X=x<-seq(q[1],q[2],len=101), Y=dt(x,df=18)), aes(x=X, ymin=0, ymax=Y),alpha=0.3)
p2 <- ggplot(data = data.frame(X = c(-5, 5)), aes(x = X)) + stat_function(fun = dt, args = list(df = 18))+xlab("")+
geom_ribbon(data=data.frame(X=x<-seq(-5,qt(0.95,df=18),len=101), Y=dt(x,df=18)), aes(x=X, ymin=0, ymax=Y),alpha=0.3)
grid.arrange(p1, p2, ncol = 1)