gpt4 book ai didi

r - 为活着的人数生成随机值以及如何在 R 中转置数据

转载 作者:行者123 更新时间:2023-12-04 04:38:29 28 4
gpt4 key购买 nike

我有一个关于生成随机样本的问题。我对 R 很陌生,并尝试进行自己的模拟,但我不确定它是否正确。真的希望有人可以帮助我。

例如,目前有 100 人活着。基本上,每个人要么在现在和下一个时期之间以 0.5 的概率死亡,要么以 0.5 的概率生存到下一个时期 --> 即成功概率为 0.5 的伯努利试验。

我想生成 20 个样本来计算明年的存活人数。所以我做了以下工作。

#number of people alive at time k
alive <- 100

#generate 20 samples to find number of people alive next period
alive1 <- rbinom(20,alive,0.5)

#generating result from r
alive1
[1] 75 70 69 70 73 65 69 73 72 77 73 68 69 72 71 70 70 62 73 73

对吗?

以及如何在 R 中转置我的数据?目前我的数据在行中;看起来像这样:-
[1] 75 70 69 70 73 65 69 73 72 77 73 68 69 72 71 70 70 62 73 73

如何将其更改为列,如下所示:
[1] 75    
[2] 70
[3] 69
....

[20] 73

最佳答案

你的代码是正确的,虽然你得到的输出是不正确的,因为平均值离 50 太远了,不可能来自二项式分布。所以我不认为你的 alive1实际上是由您编写的代码生成的。这是一个更典型的示例:

set.seed(123)
alive<-100
alive1<-rbinom(20,alive,0.5)
alive1
## [1] 49 50 46 61 44 54 48 54 59 46 54 54 49 55 52 50 48 47 56 46

如果你想把它作为一个列向量(即一列矩阵),你可以调用 as.matrix :
alive1<-as.matrix(alive1)
alive1
## [,1]
## [1,] 49
## [2,] 50
## [3,] 46
## [4,] 61
## [5,] 44
## [6,] 54
## [7,] 48
## [8,] 54
## [9,] 59
## [10,] 46
## [11,] 54
## [12,] 54
## [13,] 49
## [14,] 55
## [15,] 52
## [16,] 50
## [17,] 48
## [18,] 47
## [19,] 56
## [20,] 46

关于r - 为活着的人数生成随机值以及如何在 R 中转置数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19300456/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com