统计学——F分布

设X1服从自由度为d1的χ2分布,X2服从自由度为d2的χ2分布,且X1、X2相互独立,则称变量F=(X1/d1)/(X2/d2)所服从的分布为F分布,其中第一自由度为d1,第二自由度为d2,记为F~F(d1,d2)


关于什么是卡方分布请参考:http://blog.csdn.net/snowdroptulip/article/details/78770088


以下是R模拟F分布的过程:

f_distribution = function(d1,d2){
  
  f1 = rep(0,1000000)
  for(i in 1:d1){
    fi = rnorm(1000000)
    fi_2 = fi^2
    f1 = f1 + fi_2
  }# 自由度为d1的卡方分布
  
  f2 = rep(0,1000000)
  for(j in 1:d2){
    fj = rnorm(1000000)
    fj_2 = fj^2
    f2 = f2 + fj_2
  }# 自由度为d2的卡方分布
  
  f = (f1/d1)/(f2/d2)
}

f_1_1 = f_distribution(1,1)
f_1_1 = f_1_1[f_1_1>=-1 & f_1_1 <=7]
plot(density(f_1_1),xlim=c(0.23,6),ylim=c(0,2.2),col = 'blue',lwd = 2,main = 'F_distribution',xlab = '',ylab = '')

f_2_1 = f_distribution(2,1)
f_2_1 = f_2_1[f_2_1>=-1 & f_2_1 <=7]
lines(density(f_2_1),xlim=c(0.23,6),col = 'red',lwd = 2)

f_5_2 = f_distribution(5,2)
f_5_2 = f_5_2[f_5_2>=-1 & f_5_2 <=7]
lines(density(f_5_2),xlim=c(0.23,6),col = 'black',lwd = 2)

f_10_1 = f_distribution(10,1)
f_10_1 = f_10_1[f_10_1>=-1 & f_10_1 <=7]
lines(density(f_10_1),xlim=c(0.23,6),col = 'green',lwd = 2)

f_100_100 = f_distribution(100,100)
f_100_100 = f_100_100[f_100_100>=-1 & f_100_100 <=7]
lines(density(f_100_100),xlim=c(0.23,6),col = 'orange',lwd = 2)

legend('topright',c('d1=1,d2=1','d1=2,d2=1','d1=5,d2=2','d1=10,d2=1','d1=100,d2=100'),fill = c('blue','red','black','green','orange'))
程序汇出来的图如下:


下面是wiki上的图:






猜你喜欢

转载自blog.csdn.net/snowdroptulip/article/details/79026682