R语言入门与实践读书笔记-01&02模拟掷骰子——游戏1

这篇博客介绍了如何使用R语言进行骰子投掷模拟。通过调用内置函数和自定义函数,展示了每次摇骰子结果可能相同也可能不同。还通过改变点数出现的概率来演示了概率分布的调整,并通过大量重复实验展示了统计规律。最后,利用`replicate`函数进行了多次模拟,用`qplot`生成了结果的直方图,进一步阐释了随机过程的概念。
摘要由CSDN通过智能技术生成

##1.每次摇骰子结果都一样——调用函数

die<-1:6
die%*%die
die%o%die
round(3.14159)
round(mean(die))
sample(die,size=1)
#模拟掷骰子——调用函数
sample(die,size=2)
#从向量x中取size个元素并放回
sample(die,size=2,TRUE)
#TRUE:可放回,两次独立;否则就是默认不可放回抽样

##2.每次摇骰子结果都不一样——编写自定义函数

dice<-sample(die,size=2,TRUE)
sum(dice)
dice
dice
#结果一致,不会改变。要想每次摇骰子都不一样,见roll函数

roll<-function(){
  die<-1:6
  dice<-sample(die,size=2,TRUE)
  sum(dice)
}
#编写自定义函数roll
roll()

roll2<-function(bones=1:4){
  dice<-sample(bones,size=2,replace=TRUE)
  sum(dice)
}
#编写自定义函数roll2()
roll2()

replicate(10,roll())
replicate(10000,roll())
#重复函数
rolls<-replicate(10000,roll())
qplot(rolls,binwidth=1)

##3.改变骰子某个点数出现的概率——编写自定义函数
roll3<-function(){
  die<-1:6
  dice<-sample(die,size=2,TRUE,prob=c(1/8,1/8,1/8,1/8,1/8,3/8))
  sum(dice)
}
#编写自定义函数roll(),prob赋予不同的点数不同的权重,提高点数6出现的概率
roll3()
rolls<-replicate(10000,roll3())
qplot(rolls,binwidth=1)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值