使用plyr计算频率

时间:2015-11-09 10:21:49

标签: r count combinations frequency

我正在尝试使用R中库count中的plyr函数来计算出现的特定数字组合的频率。

例如,我想确切地知道1号和2号在一起出现的频率。

   N1 N2 N3 
1   1  2  5
2   2  1  4    
3   2  4  3
4   3  1  2    
5   2  3  1
6   3  1  4

因此对于像上面那样的数据帧,我必须将第1列和第2列,第1列和第3列,第2列和第3列合并,并合并所有这些数据帧。然后我对合并的数据帧进行“计数”。

combined1_2 = cbind(df$N1,df$N2)
combined1_3 = cbind(df$N1,df$N3)
combined2_3 = cbind(df$N2,df$N3)

combined_all = rbind(freq1_2,freq1_3,freq2_3)
combined_freq = count(combined_all)

因此,当我检查频率表时,我得到以下结果(仅显示部分结果)。

  x1 x2  Freq
1  1  2     2
2  2  1     2   

问题是计数功能处理的数字“1和2”与“2和1”不同。所以我想知道R中是否有任何函数可以解决这个问题并产生如下所示的正确结果。

  x1 x2  Freq
1  1  2     4

2 个答案:

答案 0 :(得分:3)

如果没有太多要检查的数字,只需检查self.view!.window!.rootViewController!.performSegueWithIdentifier("gameOverSegue", sender: self) 是否等于每个数字

,您也可以对此进行矢量化
df

答案 1 :(得分:1)

你可以计算连续数字在一起的次数:

sum(apply(df, 1, function(x){all(c(1, 2) %in% x)}))
#[1] 4