다른 변수 값을 범위로 나누어 관측 수를 계산하고 싶습니다. 첫 번째 변수 (새)를 그룹화 할 수 있었고 관측 수를 셀 수있었습니다. 그러나 두 번째 변수에 대한 관측 수를 얻으려고 할 때 아래에 표시된 것처럼 잘못된 답이있었습니다. 어떻게이 점을 극복 할 수 있습니까? 발행물? 여기 범위로 나눈 다른 변수 값을 기준으로 관측 수를 계산하는 방법
내 데이터 프레임의 샘플입니다 :dat$mbirds <- with(dat, ave(birds, birdsrange, FUN=length))
dat$mwolfs <- with(dat, ave(wolfs, birdsrange, FUN=length))
: 나는 두 개의 코드 라인을 추가보다
dat$birdsrange <- cut(dat$birds, breaks=seq(0, 1000, 25))
: 나는 그룹을 얻을 코드 줄을 실행
dat <- read.table(text = " birds wolfs snakes
2 9 7
90 8 4
90 2 8
100 2 3
100 8 3
660 1 2
660 7 1
660 1 5
500 9 7
30 8 7
40 2 7
10 2 3
70 6 3
60 1 1
60 3 9
60 1 1 ",header = TRUE)
그래서 출력을 얻었습니다 :
birds wolfs snakes birdsrange mbirds mwolfs
1 2 9 7 (0,25] 2 2
2 90 8 4 (75,100] 4 4
3 90 2 8 (75,100] 4 4
4 100 2 3 (75,100] 4 4
5 100 8 3 (75,100] 4 4
6 660 1 2 (650,675] 3 3
7 660 7 1 (650,675] 3 3
8 660 1 5 (650,675] 3 3
9 500 9 7 (475,500] 1 1
10 30 8 7 (25,50] 2 2
11 40 2 7 (25,50] 2 2
12 10 2 3 (0,25] 2 2
13 70 6 3 (50,75] 4 4
14 60 1 1 (50,75] 4 4
15 60 3 9 (50,75] 4 4
16 60 1 1 (50,75] 4 4
"mbirds"수는 좋지만 그룹에 대한 16 회의 관찰을 기대할 때 "늑대"가 좋지 않습니다 : 다른 그룹의 경우 (0,25) 및 "0". 문제를 어떻게 해결할 수 있습니까? 원하는 결과는해야한다 : 내가 제대로 이해하면
range mbirds mwolfs
(0,25] 2 16
(25,50] 2 0
(50,75] 4 0
...
왜 늑대가 16이 될 것으로 예상합니까? –
@beginneR을 이해하지 못합니다. 25 개 이상의 늑대가 포함 된 행이 없기 때문에 –
맞습니다. @David Arenburg –