网易首页 > 网易号 > 正文 申请入驻

R语言学习笔记(六) -离散型数据的模型预测1

0
分享至

导语:最近一直在学习一份R语言资料,是斯坦福大学的老师写的。可以直接在线学习,https://web.stanford.edu/class/bios221/book/index.html。里面有配套的R代码,小编在这里写一点读书笔记。本章介绍常见的离散分布及其应用。

1. 伯努利试验和二项分布

1.1 定义

若试验E只有两个结果A和Ā,概率分别为p和1-p,则称E为伯努利试验,将E独立重复n次称为n重伯努利试验。最典型的伯努利试验就是抛硬币的例子,比如抛3次硬币,观察到2次正面向上的概率为:(下图)。

用X表示n重伯努利试验中A发生的次数,则称随机变量X服从二项分布,记为X~b(n, p),其分布律为:

二项分布的期望和方差分别E(X) = np和D(X) = np(1-p).

1.2 R语言实例

在R中常用的分布通常有对应的4个函数,分别以p(probobility,概率),d(distribution,分布),r(random,随机数),q(quantile,分位数)这四个字母开头。以二项分布为例,有如下4个函数:

pbinom(q, size, prob): 计算累积概率

dbinom(x, size, prob): 计算取某个值x的特定概率

rbinom(n, size, prob): 产生n个b(size, prob)的二项分布随机数

qbinom(p, size, prob): 分位数函数

其中size和prob两个参数分别表示伯努利试验的次数和每次试验成功的概率,即分别对应二项分布中的两个参数n和p。假如碱基突变的概率为5×10-4,我们模拟10000个位点发生突变的碱基数,并绘制条形图。

> simulations = rbinom(n = 300000, prob = 5e-4, size = 10000)> barplot(table(simulations), col = "lavender")

再比如要生成10000个服从b(100, 0.2)的随机数,画出概率密度直方图,并添加正态分布拟合曲线。

> library(dplyr)> library(ggplot2)> tibble(x = rbinom(10000, size=100, prob=0.2))%>%+ ggplot(aes(x= x))++ geom_histogram(aes(y=..density..))++ stat_function(+ fun =dnorm,+ args =list(mean = 20, sd = 4),+ color ="red"+ )

上述代码中使用了一种特殊的数据框tibble,这是R语言大神Hadley Wickham在tidyverse包中新定义的一种数据类型,是弱类型的data.frame,与data.frame有相同的语法,但使用起来更加灵活。如果要了解更多内容,可以参考R for Data Science这本书

(https://r4ds.had.co.nz/)。

模拟数据的期望和方差分别为20和0.4,根据中心极限定理,当n取很大值的时候,二项分布趋近于正态分布。因此我们的模拟数据能够与上图中的正态分布N(20, 0.4)拟合。

2. 泊松分布

2.1 定义

泊松分布适合于描述单位时间内随机事件发生的次数。如某一服务设施在一定时间内到达的人数,汽车站台的候客人数,机器出现的故障数,自然灾害发生的次数,DNA突变的碱基个数等等。泊松分布只有一个参数λ,记为X~π(λ),其分布律为:

泊松分布的期望和方差都等于λ,即E(X) = D(X)= λ。当二项分布的n较大时,可以用泊松分布逼近二项分布,其中λ = np.

2.2 R语言示例

我们分别生成1000个服从二项分布b(10000, 0.01)和泊松分布π(100)的随机数,并画图。

> library(tidyverse)> tibble(x = rbinom(1000, size = 10000, prob =0.01), y = rpois(1000, 100)) %>%+ pivot_longer(cols = c(x, y)) %>%+ ggplot(aes(x= value))++ geom_density(aes(col = name))

这里先解释一下上述代码,首先我们创建了一个tibble类型的数据框,包含x和y两列,分别服从b(10000, 0.01)和π(100)。再用pivot_longer()函数将数据框转换成长数据,最后作出直方图。

从图中我们可以看到两条曲线能够很好地重合,这也说明了我们上述的结论正确,即泊松分布可以看做是n很大p很小的二项分布。

3. 蒙特卡洛方法(Monte Carlo)

蒙特卡洛方法是指通过产生大量的随机数,来用于数值统计计算以获得问题的近似解。一个经典的例子是用蒙特卡洛模拟计算圆周率π,如下图所示,在正方形内产生足够多的随机点,这些点落在圆内的概率就是圆面积和正方形面积的比值,所以落在圆内的点的个数比上所有的点的个数(在正方形内的点)就等于落在圆内的概率。据此即可计算出π = 4*圆面积/正方形面积,下面用代码说明。

> calpi <- function(n){+ x <- matrix(runif(2 * n), ncol = 2)+ return(4*mean(rowSums(x^2)<=1))+ }> pi_new <- c()> for (i in 1:1000){+ pi_new[i] <- calpi(i)+ }> plot(pi_new)> abline(h=pi, col = 2 )

可以看到当随机数的个数n越来越大的时候,通过蒙特卡洛计算出的π逐渐接近真实值。

最后再看一个例子,假如X~π(0.5)中,X样本数为100。我们想知道X≥7的概率。我们当然能够用理论公式计算,p = 1- p(X≤6) = 1-。但这样计算显然是很复杂的,我们可以用蒙特卡洛模拟,生成大量的符合泊松分布的样本,然后计算概率。具体代码如下:

> maxes = replicate(100000, {+ max(rpois(100, 0.5))+ })> table(maxes)maxes 1 2 3 4 5 6 78 23430 60446 14469 1530 110 7> mean( maxes >= 7 )[1] 0.00011

最后算出的p值为0.00011,也就是在这些样本中几乎不可能观察到大于7的值。蒙特卡洛模拟的限制在于其精度≤1/n,其中n表示产生的随机数。这也就是说要想得到足够精确的结果,必须产生足够数量的随机数,也对计算机的性能提出了很高的要求。

R语言学习笔记系列

R语言学习笔记(二)

R语言学习笔记(三)——实用的内置函数

R语言学习笔记(四)—pheatmap

​​​R语言学习笔记(五)——曼哈顿图

手握这些网站,分分钟搞定R语言自学

关注【投必得论文编译】获取每天最新科研/论文写作干货!

得SCI写作神器大集合!

  • 科研笔记神器:拆书神器,一分钟建立一个知识图谱
  • 一入科研深似海,这些科研工具让你如有神助
  • PDF阅读器具备谷歌翻译功能了,效率值拉满
  • 学术写作 - 文献综述高分模版
  • SCI英文润色软件推荐-StyleWriter,一款可定制的润色工具

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
天啦,向太真容:又秃又蜡黄,哪怕你再有钱青春的东西也留不住

天啦,向太真容:又秃又蜡黄,哪怕你再有钱青春的东西也留不住

晴晴给你讲故事
2024-12-12 14:11:44
文强被押到火葬场,抬进死刑执行车,行刑前全程表情镇定

文强被押到火葬场,抬进死刑执行车,行刑前全程表情镇定

一场奇遇日记
2023-11-10 18:16:46
史上最侮辱智商的抗日剧,一言不合就谈恋爱,吃饭必须大鱼大肉

史上最侮辱智商的抗日剧,一言不合就谈恋爱,吃饭必须大鱼大肉

三石记
2024-11-28 15:48:37
网友:极越汽车前脚倒闭!小鹏后脚招聘,这些员工或能过个开心年

网友:极越汽车前脚倒闭!小鹏后脚招聘,这些员工或能过个开心年

火山诗话
2024-12-12 06:36:29
抗美援朝最容易忽视三个真相,任何电影都从未提及,与毛主席有关

抗美援朝最容易忽视三个真相,任何电影都从未提及,与毛主席有关

笑熬浆糊111
2024-11-16 00:05:31
这次,中国看起来是要来真格的了!

这次,中国看起来是要来真格的了!

星辰故事屋
2024-12-12 13:02:07
琼瑶葬礼处处彰显人情冷暖,捧红过百明星,有良心的仅这四人

琼瑶葬礼处处彰显人情冷暖,捧红过百明星,有良心的仅这四人

光影新天地
2024-12-12 15:30:27
俄愿与美方就乌克兰问题进行接触

俄愿与美方就乌克兰问题进行接触

澎湃新闻
2024-12-12 00:57:05
巴黎绝对主力!23岁李刚仁身价涨至3000万欧,20场6球全队第2

巴黎绝对主力!23岁李刚仁身价涨至3000万欧,20场6球全队第2

直播吧
2024-12-11 19:45:07
五大联赛占据晋级区!欧冠前8名:英超3席,法甲2席,西德意各1席

五大联赛占据晋级区!欧冠前8名:英超3席,法甲2席,西德意各1席

直播吧
2024-12-12 09:21:18
体坛最大合同诞生官方:26岁索托加盟大都会,15年7.65亿刀!

体坛最大合同诞生官方:26岁索托加盟大都会,15年7.65亿刀!

直播吧
2024-12-12 12:45:06
故事:通灵破清华才女朱令中毒案:知道凶手是谁,凶手身份太特殊

故事:通灵破清华才女朱令中毒案:知道凶手是谁,凶手身份太特殊

狮拓一叶知秋
2024-12-09 10:07:33
大哥你谁加图索22年来首次剃掉胡须,为慈善拍卖筹款超1万欧

大哥你谁加图索22年来首次剃掉胡须,为慈善拍卖筹款超1万欧

直播吧
2024-12-12 07:36:23
美国为何一直针对中国?英国学者:因为中国犯了2个“原罪”!

美国为何一直针对中国?英国学者:因为中国犯了2个“原罪”!

探秘历史
2024-12-11 13:45:03
小米 6A 磁吸自收纳快充数据线上市:USB-A to USB-C 设计,59 元

小米 6A 磁吸自收纳快充数据线上市:USB-A to USB-C 设计,59 元

IT之家
2024-12-12 21:21:13
张兰宠儿媳 亲手钩帽子围巾送马筱梅 将来和汪小菲宝宝衣服她都包

张兰宠儿媳 亲手钩帽子围巾送马筱梅 将来和汪小菲宝宝衣服她都包

西瓜爱娱娱
2024-12-12 09:46:34
浙江某医院领导视察占用手术专用电梯,家属推患者欲乘坐被拦下?医院回应

浙江某医院领导视察占用手术专用电梯,家属推患者欲乘坐被拦下?医院回应

今日养生之道
2024-12-12 18:56:27
2024赛季中超三大豪门 买到三个最有性价比内援 北京国安是林良铭

2024赛季中超三大豪门 买到三个最有性价比内援 北京国安是林良铭

80后体育大蜀黍
2024-12-12 23:33:05
12月11日,美国防部长与俄达成协议,2万雇佣军回国,停止援助

12月11日,美国防部长与俄达成协议,2万雇佣军回国,停止援助

书中自有颜如玉
2024-12-12 22:02:53
12月12日A股猛料:央行政策兜底!为养老金入市铺路!3板块要大涨

12月12日A股猛料:央行政策兜底!为养老金入市铺路!3板块要大涨

价值投资者
2024-12-12 11:55:23
2024-12-13 00:36:49
投必得专业论文编译
投必得专业论文编译
学术论文润色编辑及翻译
1409文章数 615关注度
往期回顾 全部

科技要闻

极越两大股东百度、吉利为何见死不救?

头条要闻

立陶宛候任防长:所有人都清楚"台湾的战争即将来临"

头条要闻

立陶宛候任防长:所有人都清楚"台湾的战争即将来临"

体育要闻

欧冠“病友德比”,曼城又输了

娱乐要闻

赛琳娜官宣订婚!高调晒鸽子蛋钻戒

财经要闻

全文来了!中央经济工作会议在京举行

汽车要闻

高颜值高空间高乐趣 iCAR V23是懂年轻人的

态度原创

家居
教育
时尚
手机
旅游

家居要闻

动态包容 有呼吸感的家

教育要闻

口腔医学本科毕业好就业吗?

除了巴恩风外套,今年最火的单品一定是它

手机要闻

消息称 vivo Y300 手机搭载天玑 6300 芯片,支持 44W 快充

旅游要闻

乐山大佛检票排队两小时?回应:不完全属实

无障碍浏览 进入关怀版