2013-06-21 4 views
7

ID로 구성된 데이터 프레임 (이 DATA라고 함)의 열을 요약하여 주어진 열의 각 ID의 총 개수를 구합니다. 이 데이터를 다른 데이터 프레임 (이 TOTALNUM이라고 함)으로 변환하고 싶습니다. 그래서 두 개의 열이 있습니다. 첫 번째 열은 ID 자체이며 두 번째 열은 각 ID의 총 개수입니다. 이것이 가능한가?요약 출력을 데이터 프레임으로 변환하는 방법은 무엇입니까?

샘플 데이터 :

ids <- c(1,2,3,4,5,1,2,3,1,5,1,4,2,2,2) 
info <- c("A","B","C","A","B","C","A","B","C","A","B","C","A","B","C") 
DATA <- data.frame(ids, info) 
DATA$ids <- as.factor(DATA$ids) 

내가 데이터 프레임에 넣어 싶습니다 : 최고 행은 새로운 데이터 프레임의 첫 번째 열 것입니다. 두 번째 행은 새 데이터 프레임의 두 번째 열입니다.

summary(DATA$ids) 

이 내가 같이하는 데이터 프레임을하고 싶은 것입니다 :

ids nums 
1  4 
2  5 
3  2 
4  2 
5  2 

감사합니다! 당신의 접근 방식으로

답변

5

, 당신은 summaryids의 각 값에 대해 이름, 계수의 벡터를 반환한다는 사실을 이용할 수 있습니다 : -이 방법은 더 간단합니다 -

> my.summary <- summary(DATA$ids) 
> data.frame(ids=names(my.summary), nums=my.summary) 
    ids nums 
1 1 4 
2 2 5 
3 3 2 
4 4 2 
5 5 2 

또는 당신을 ids을 기반으로 빈도 테이블을 만든 다음 데이터 프레임으로 변환 할 수 있습니다.

> as.data.frame(table(ids), responseName="nums") 
    ids nums 
1 1 4 
2 2 5 
3 3 2 
4 4 2 
5 5 2 
+0

감사합니다. 두 번째 방법은 제가 사용했던 방법이었습니다. – Sheila

관련 문제