适用于相对频率的绝对频率(xtabs)?

时间:2016-04-25 11:32:28

标签: r

我需要在我的数据集中获得多个变量对的绝对频率,因此我使用此代码来"循环" xtabs命令:

apply(table[,2:17], 2, function(x) xtabs(~tablel$variable+x))

它工作正常并通过变量给出了绝对频率。但是,我现在需要从行中得到相对频率,我无法弄清楚如何。

我能以某种方式在循环中包含相对频率计算吗?或者我是否必须为此创建一个新的数据集(以及如何?我似乎无法从R中获得绝对频率)。

这是我用代码获得的变量频率之一的示例。

$SEM
          x
       MN          sem1       sem2        sem3
       N1          227        130          18
       N10           0          2           7
       N11           9          7           5
       N12          29         21           1
       N2           23         14           2
       N3           19          7           4
       N4           12         17           0
       N5           18         36           3
       N6           22         13           7
       N8            1         39           0
       N9            0          2           5

1 个答案:

答案 0 :(得分:1)

我们可以通过列表应用一个功能。假设包含16个数据帧的列表被称为lst,那么,

lapply(lst, function(i) t(apply(i[,-1], 1, function(j) j/sum(j))))