0

嗨,我有一个数据框 Y,如下所示

O  T  Dist
2  13 0.123 
2  3  0.452
2  4  0.213
3  5  0.231
3  8  0.213
4  5  0.123
5  8  0.543

我希望创建一个新的数据框来计算数字出现在 O 列和 T 列中的总次数。输出应该看起来像。

P  freq 
2  3
3  3
4  2
5  3
8  2
13 1

预先感谢您的帮助

4

3 回答 3

2

那这个呢?

as.data.frame(table(c(df$O, df$T)))
  Var1 Freq
1    2    3
2    3    3
3    4    2
4    5    3
5    8    2
6   13    1
于 2015-02-02T00:58:44.207 回答
1
counts = table(c(df$O,df$T))
new.df = data.frame(P=as.integer(names(counts)),Freq=as.integer(counts))
于 2015-02-02T01:12:43.253 回答
0

这是一个使用 的选项,我们在数据集“Y”( )data.table中选择列“O”、“T”,使用、按“V1 ”分组并获取计数Y[-3]unlistsetDT(list(..)).N

library(data.table)
setDT(list(unlist(Y[-3])))[,.N, keyby=V1]
#   V1 N
#1:  2 3
#2:  3 3
#3:  4 2
#4:  5 3
#5:  8 2
#6: 13 1
于 2015-02-02T04:35:15.157 回答