用R创建循环

时间:2018-08-11 20:00:00

标签: r

如果我有一个具有匹配结果(3个可能的值)和概率的数据框,例如:

FTR     Probability
H       0.49
A       0.35
H       0.21
D       0.71
D       0.19
...

我想为Probability的每个可能值计算某个FTR值的总否。让我们说H。 因此,我想我应该运行一个for循环,该循环将为Probability的每个唯一值运行,并计算该组中H的数量。

我尝试通过写以下内容来做到这一点: for (i in 1:unique(dataframe$Probability)) { count(group_by(dataframe, FTR)) }不起作用,因为我想问题始于unique,因为它无法遍历probability的实际值,但不能遍历其索引值。

1 个答案:

答案 0 :(得分:2)

让我们说说data.frame是mydf

mydf <- data.frame(stringsAsFactors=FALSE,
           FTR = c("H", "A", "H", "D", "D"),
   Probability = c(0.49, 0.35, 0.21, 0.71, 0.19)
)

with(mydf, table(Probability, FTR))

会给你这个

           FTR
Probability A D H
       0.19 0 1 0
       0.21 0 0 1
       0.35 1 0 0
       0.49 0 0 1
       0.71 0 1 0