据说这道题没有上过三年级的人根本算不对
今天是生信星球陪你的第174天
你想找辆共享单车,发现满街都是别家车,没有一辆你能骑。
你想学点生信,搜了“初学者教程”,满眼尽是高大上,没有一句能看懂。
终于你跨越茫茫宇宙,来到生信星球,发现了初学者的新大陆!
话说豆豆花花的学习小组已经办到了第8期。这一期学员异常活跃可爱。今天群里提了一个问题,花花解答了一下。概率题,好玩的很!如果你也想和我们互动,学到R语言和linux的入门知识,戳这里吧!生信零基础入门学习小组长期报名中
题目在此
已知一箱彩色球颜色分布为:红色30%,黄色40%,蓝色20%,黑色10%,随机抓一些球,希望它们中至少有一个是蓝色球的概率不低于90%,那么最少需要抓多少球?
A.6
B.11
C.16
D.25
懵了?来捋捋。
1.问题只涉及到了蓝色,所以把球分两类,蓝色和非蓝色。此处参照生信技能树的jimmy大神名言:文件只有两类,文本和hui(非)文本!
2.不低于,就是≥。
3.逆向思维,至少有一个是蓝色的概率=1-“没有一个是蓝色的概率”。
解题的关键是算出“没有一个是蓝色”的概率。
假设抓取x个球。
1-(1-0.2)^x≥0.9,求x的最小值.
现在事情就是0.8^x≤0.1,求那个x咯。
瞄一眼选项,最多25。好的,那么我们用懒人的办法–R语言来解决一下。
此处居然滋生出花花的笨办法,豆豆和花花各自的新方法!
1.先看花花的笨办法
options和as.character都是为了解决小数点后位数太多的问题。
options(digits = 2)
for (i in 1:25){
print(c(as.character(i),0.8^i))
}

2.再看花花的新方法
杀手锏tidyverse使出来!
library(tidyverse)
x <- data.frame(i=seq(1:25))%>%
mutate(p=0.8^i)
顺便解释一个常见报错:
Error in data.frame(i = seq(1:25)) %>% mutate(p = 0.8^i) :
could not find function “%>%”
没找到管道操作符?其实他属于tidyverse的一个包,加载tidyverse就能解决这个报错。
3.再看豆豆的新方法
options(digits = 2)
i <- 1:25
z <- data.frame(t(rbind(i,sapply(i, function(x) 0.8^x))))
都是生成了一个满足本强迫症的表,然后从里面偶遇一下那个<0.1的数。

好的,那么答案就是11。
隔壁生信技能树公益视频合辑(学习顺序是linux,r,软件安装,geo,小技巧,ngs组学!)
国内看B站,教学视频链接:https://m.bilibili.com/space/338686099
国外看YouTube,教学视频链接:https://m.youtube.com/channel/UC67sImqK7V8tSWHMG8azIVA/playlists友情链接:
点击底部的“阅读原文”,获得更好的阅读体验哦😻
初学生信,很荣幸带你迈出第一步。
我们是生信星球,一个不拽术语、通俗易懂的生信知识平台。由于是2018年新号,竟然没有留言功能。需要帮助或提出意见请后台留言、联系微信或发送邮件到Bioplanet520@outlook.com,每一条都会看到的哦~
请关注“恒诺新知”微信公众号,感谢“R语言“,”数据那些事儿“,”老俊俊的生信笔记“,”冷🈚️思“,“珞珈R”,“生信星球”的支持!