【发布时间】:2017-10-17 01:45:46
【问题描述】:
我有一个向量,其值的分布是未知的,我想用我拥有的值的概率创建另一个向量。 例如。
我有
v <- c(e1, e2, ... , ei)
我想创造
p <- c(P(e1), P(e2), ... , P(ei))
我如何在 R 中做到这一点?
【问题讨论】:
-
可以查看here
标签: r probability probability-density
我有一个向量,其值的分布是未知的,我想用我拥有的值的概率创建另一个向量。 例如。
我有
v <- c(e1, e2, ... , ei)
我想创造
p <- c(P(e1), P(e2), ... , P(ei))
我如何在 R 中做到这一点?
【问题讨论】:
标签: r probability probability-density
当您想创建一个与值向量长度相同的向量时,您可以执行以下操作:
p <- sapply(v, function(x) length(which(x == v))/length(v))
示例使用字母作为值
set.seed(123)
v = sample(letters[1:4], 10, replace = TRUE)
p <- sapply(v, function(x) length(which(x == v))/length(v))
p
#> b d b d d a c d c b
#> 0.3 0.4 0.3 0.4 0.4 0.1 0.2 0.4 0.2 0.3
【讨论】: