Counting the frequency of an element in a data frame

r

Solution

You can turn your `data.frame` to a `vector` and then use `table`

df <- read.table(text = "   b    c    e    f    g    h    j 
1 Dxa2 Dxa2 Dxa2 Dxa2 Dxa2 Dxa2 Dxa2
2 Dxb2 Dxb2 Dxb2 Dxb2 Dxc2 Dxc2 Dxc2
3 Dxd2 Dxi2 tneg tpos Dxd2 Dxi2 tneg", header = TRUE, row.names = 1)

table(unlist(df))
## Dxa2 Dxb2 Dxd2 Dxi2 tneg tpos Dxc2 
##    7    4    2    2    2    1    3 

You can turn the result to a `data.frame` too

as.data.frame(table(unlist(df)))
##   Var1 Freq
## 1 Dxa2    7
## 2 Dxb2    4
## 3 Dxd2    2
## 4 Dxi2    2
## 5 tneg    2
## 6 tpos    1
## 7 Dxc2    3

Problem

I have the following data frame ``` SelectVar b c e f g h j 1 Dxa2 Dxa2 Dxa2 Dxa2 Dxa2 Dxa2 Dxa2 2 Dxb2 Dxb2 Dxb2 Dxb2 Dxc2 Dxc2 Dxc2 3 Dxd2 Dxi2 tneg tpos Dxd2 Dxi2 tneg ``` When applying count I get ``` count(SelectVar) b c e f g h j freq 1 Dxa2 Dxa2 Dxa2 Dxa2 Dxa2 Dxa2 Dxa2 1 2 Dxb2 Dxb2 Dxb2 Dxb2 Dxc2 Dxc2 Dxc2 1 3 Dxd2 Dxi2 tneg tpos Dxd2 Dxi2 tneg 1 ``` When I apply count(SelectVar==Dxa2) ``` b c e f g h j freq 1 FALSE FALSE FALSE FALSE FALSE FALSE FALSE 1 ``` I can not figure out how to count the frequency of the different elements Dxa2, Dxb2... in SelectVar

Original source

Related problems