R语言 绘制 t 分布图
t分布,又称学生t分布,是一种概率分布,用于对样本量小且输入分布的标准差未知的正态分布进行抽样。该分布通常形成钟形曲线,也就是说,该分布是正态分布,但在尾部附近有一个较低的峰值和更多的观测值。
t分布只有一个相关参数,称为自由度(df)。一个特定的t分布曲线的形状依赖于所选择的自由度(df)的数量,它相当于给定的样本量减去1,也就是说。
df=n−1
可以使用R中的seq()方法生成一个坐标向量,该方法用于生成一个增量的整数序列,为给定的t分布提供一个分布序列。相应的y坐标可以用t分布函数的各种变体来构建,下面将详细介绍。然后使用R编程语言中的plot()方法对这些数据进行绘制。
dt()方法
R语言中的dt()方法用于计算指定自由度的t分布的概率密度分析。
语法
dt(x, df )
参数:
- x – 量值的向量
- df – 自由度
例子
# generating x coordinates
xpos <- seq(- 100, 100, by = 20)
print ("X coordinates")
print (xpos)
# generating y coordinates using dt() method
# degreesoffreedom
degree <- 2
ypos <- dt(xpos, df = degree)
print ("Y coordinates")
print (ypos)
# plotting t distribution
plot (ypos , type = "l")
输出
[1] “X coordinates”
[1] -100 -80 -60 -40 -20 0 20 40 60 80 100
[1] “Y coordinates”
[1] 9.997001e-07 1.952210e-06 4.625774e-06 1.559575e-05 1.240683e-04 [6] 3.535534e-01 1.240683e-04 1.559575e-05 4.625774e-06 1.952210e-06
[11] 9.997001e-07
pt()方法
R中的pt()方法用于为给定的学生T型分布产生一个分布函数。它被用来产生一个累积分布函数。该函数返回任何给定区间的t曲线下的面积。
语法
pt(q, df, lower.tail = TRUE)
参数:
- q – 量子化向量
- df – 自由度
- lower.tail – 如果是TRUE(默认),概率为P[X≤x],否则为P[X>x]。
例子
# generating x coordinates
xpos <- seq(- 100, 100, by = 20)
print ("X coordinates")
print (xpos)
# generating y coordinates using dt() method
# degreesoffreedom
degree <- 2
ypos <- pt(xpos, df = degree)
print ("Y coordinates")
print (ypos)
# plotting t distribution
plot (ypos , type = "l")
输出
[1] “X coordinates”
[1] -100 -80 -60 -40 -20 0 20 40 60 80 100
[1] “Y coordinates”
[1] 4.999250e-05 7.810669e-05 1.388310e-04 3.122073e-04 1.245332e-03 [6] 5.000000e-01 9.987547e-01 9.996878e-01 9.998612e-01 9.999219e-01
[11] 9.999500e-01
qt()方法
R中的qt()方法用于计算指定自由度的t分布的量化函数或反累积密度函数。它用于计算指定自由度的学生t分布的第n个百分点。
语法
qt(p, df, lower.tail = TRUE)
参数:
- p – 概率的向量
- df – 自由度
- lower.tail – 如果是TRUE(默认),概率为P[X≤x],否则为P[X>x]。
例子
# generating x coordinates
xpos <- seq(0, 1, by = 0.05)
# generating y coordinates using dt() method
# degreesoffreedom
degree <- 2
ypos <- qt(xpos, df = degree)
# plotting t distribution
plot (ypos , type = "l")
输出
rt()方法
rt()方法用于使用指定自由度的t分布的随机生成,可以生成n个随机样本。
语法
rt(n, df)
参数:
- n – 观测值的数量
- df – 自由度
例子
# using a random number
n <- 1000
# degreesoffreedom
degree <- 2
# generating y coordinates using rt() method
ypos <- rt(n , df = degree)
# plotting t distribution in the form of
# distribution
hist(ypos,
breaks = 100,
main = "")
输出