如何计算给定 R 中数据集的概率?

How to compute the probability given a data set in R?

我有一个向量,其值的分布是未知的,我想用我拥有的值的概率创建另一个向量。 例如

我有

v <- c(e1, e2, ... , ei)

我想创建

p <- c(P(e1), P(e2), ... , P(ei)) 

我如何在 R 中执行此操作?

如果你想创建一个与值向量长度相同的向量,你可以这样做:

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