2013-03-12 4 views
3

가정하자 나는 다음과 같은 목록이 있습니다다른 길이 목록에서 항목의 빈도를 얻는 방법

test<-list(c("a","b","c"),c("a"),c("c")) 
>test 
[[1]] 
[1] "a" "b" "c" 

[[2]] 
[1] "a" 

[[3]] 
[1] "c" 

내가 (사용하거나 기능)해야합니까 무엇에 고유 항목의 빈도를 얻을 수를 다음과 같은 목록 :?

a 2 
b 1 
c 2 

나는 테이블 (테스트)를 사용했지만, 나는 다음과 같은 오류를

> table(test) 
Error in table(test) : all arguments must have the same length 

답변

7
test <- list(c("a", "b", "c"), c("a"), c("c")) 
# If you want count accross all elements 
table(unlist(test)) 
## 
## a b c 
## 2 1 2 


# If you want seperate counts in each item of list 
lapply(test, table) 
## [[1]] 
## 
## a b c 
## 1 1 1 
## 
## [[2]] 
## 
## a 
## 1 
## 
## [[3]] 
## 
## c 
## 1 
## 
를 얻을 수
4

사용 unlist

table(unlist(test)) 
관련 문제