R语言作业:样本容量与好样本概率的关系

题目要求

作业内容:在30000个人中抽取100000次,抽样数量依次为20,40,…500,并最后以抽取数量为自变量,概率为因变量作图。

文件下载地址点击这里

考察知识点

  • 规则向量的生成
  • 如何在向量中添加数据
  • mean、sample的使用
  • 绘图函数plot的使用

思路

首先读取数据,因为得到的数据是data.frame格式,我们先将其转化为矩阵形式,然后转化为一维向量格式,便于抽取样本。

做一个双重循环,针对每个样本容量,都进行100000次实验,变量sum用来统计符合条件的次数。使用sample函数,指定replace=FALSE表示取出不放回,对取出的数据计算平均值,判断平均值是否在169~170之间,如果满足这个条件sum就加1,最后通过sum与实验次数(100000)的比值计算概率。使用append函数,将计算得到的概率添加在列表good_sample_p中。

使用plot绘图函数,指定xlab和ylab标签,再指定图像类型为点划线,最后使用title函数添加标题

代码

a <- read.csv('heigh_30000.csv')
a <- as.matrix(a)
data <- as.vector(a)

good_sample_p <- c()

for (i in seq(20,500,by=20)){
  sum <- 0  # 记录满足条件的个数
  for (j in 1:100000){
    x <- sample(data,i,replace=FALSE)  # 抽取不放回
    y <- mean(x,trim=0,na.rm=TRUE)  # trim=0不修剪掉排在首尾的部分 ,na.rm=TRUE移除缺省值
    if( 169<y && y<170){
      sum <- sum+1
    }
  }
  p <- sum/100000  # 计算概率
  good_sample_p <- append(good_sample_p,p)
}

# 添加x,y数据,设置x轴,y轴标签,也可以在title函数中放置
plot(seq(20,500,by=20), good_sample_p,type = 'b',xlab = 'Sample size',ylab = 'Good sample probability')
# 添加标题
title('Relationship between Sample size and Good sample probability', col.lab = 2, cex.lab = 2)

截图

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

笼中小夜莺

嘿嘿嘿,请用金钱尽情地蹂躏我吧

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值