그룹으로 나누어 진 범주 형 변수의 data.frame이 있으며 각 그룹에 대한 개수가 있습니다.특정 그룹에 대한 상대 빈도 계산
My original data nyD looks like:
Source: local data frame [7 x 3]
Groups: v1, v2, v3
v1 v2 v3
1 a plus yes
2 a plus yes
3 a minus no
4 b minus yes
5 b x yes
6 c x notk
7 c x notk
I performed the following operations using dplyr:
ny1 <- nyD %>% group_by(v1,v2,v3)%>%
summarise(count=n()) %>%
mutate(prop = count/sum(count))
My data "ny1" looks like:
Source: local data frame [5 x 5]
Groups: v1, v2
v1 v2 v3 count prop
1 a minus no 1 1
2 a plus yes 2 1
3 b minus yes 1 1
4 b x yes 1 1
5 c x notk 2 1
나는 prop 변수의 V1 그룹과 관련하여 상대 빈도를 계산하려고합니다. prop 변수는 해당 계수를 "V1 그룹의 계수의 합"으로 나눈 값이어야합니다. V1 그룹에는 총 3 개의 "a", 2 개의 "b"및 1 개의 "c"가 있습니다. 즉, ny1 $ prop [1] < - 1/3, ny1 $ prop [2] <-2/3 .... count/sum (count)을 사용하는 mutate 연산이 올바르지 않습니다. 합계를 V1 그룹에만 실현하도록 지정해야합니다. 이것을 달성하기 위해 dplyr을 사용할 방법이 있습니까?
또는 짧은 비트 : '카운트 (DF, V1, V2) %> % 돌연변이 ((= N/합 소품 N))' –
감사 '내부 df'와 퍼팅 비록 'count'는 약간 부정 행위입니다 :)'summary '내에'df'를 넣을 수도 있습니다. 더 나은 해결책 더 나은 해결책 –
'group()'표현식의 변수 순서 또한 중요하며 상대 비율 계산 방법을 결정할 것임을 명심하십시오. –