将数据帧转换为并使其类似于R频率表
我有一个具有频率计数的数据帧。我使用dplyr的groupby创建了这个数据帧将数据帧转换为并使其类似于R频率表,r,R,我有一个具有频率计数的数据帧。我使用dplyr的groupby创建了这个数据帧 a beta 2 a gamma 2 b alpha 3 b beta 5 b gamma 9 c beta 3 c gamma 10 d beta 8 我试图创建一个频率表,它使用R的table函数聚合看起来像频率表的计数 a b c d alpha 0 3 0 0 beta 2 5
a beta 2
a gamma 2
b alpha 3
b beta 5
b gamma 9
c beta 3
c gamma 10
d beta 8
我试图创建一个频率表,它使用R的table函数聚合看起来像频率表的计数
a b c d
alpha 0 3 0 0
beta 2 5 3 8
gamma 2 9 10 4
您可以尝试以下方法:
df <- data.frame(v1 = c('a', 'a', 'b', 'b', 'b', 'c', 'c', 'd'),
v2 = c('beta', 'gamma', 'alpha', 'beta', 'gamma', 'beta', 'gamma', 'beta'),
v3 = c(2, 2, 3, 5, 9, 3, 10, 8))
xtabs(v3 ~ v2 + v1, data = df)
df是?xtabs
您想要什么?您可以用正确的行和列名创建一个零矩阵,然后执行mat[cbind(df[,2],df[,1]]您看到的计数是原始数据的频率计数的集合