字符在带有R的变量中出现的次数

时间:2013-06-09 00:11:27

标签: r frequency

我有一个数据框,其中一个变量(w1)是一个有七个级别的因子。以下是前几行:

X   number          delta1 tossc w1
1   0.743477269         0   1   <NA>
2   0.742817675         0   1    x1
3   0.867432987         0   1    x5
4   0.535971961         1   1    Group3
5   0.743477269         0   1    x2
6   0.742817675         0   1    x1
7   0.867432987         0   1    <NA>
8   0.535971961         1   1   Group3 or Group4

如何查找每个角色在w1中出现的次数? (例如,x1出现2次,x5出现1次等)。任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:2)

这是使用mergetable

的解决方案
merge(dat,as.data.frame(table(dat$w1)),by.x='w1',by.y='Var1')
                w1 X    number delta1 tossc Freq
1             <NA> 1 0.7434773      0     1    2
2             <NA> 7 0.8674330      0     1    2
3           Group3 4 0.5359720      1     1    1
4 Group3 or Group4 8 0.5359720      1     1    1
5               x1 2 0.7428177      0     1    2
6               x1 6 0.7428177      0     1    2
7               x2 5 0.7434773      0     1    1
8               x5 3 0.8674330      0     1    1

答案 1 :(得分:0)

另一种选择是:

length(which(dat$w1=="x1"))

可以很容易地保存为新变量。