데이터 세트에 NA
두 개가있는 데이터 세트가 있습니다. 롤링 평균을 취하여 창에 NA
이없는 경우 롤링 평균은 NA
과 반대되는 숫자를 생성해야하지만 rollmeanr
은 zoo
인 것으로 보이지 않습니다. 예 :누락 된 값 (누락)이있을 때 롤 만 사용
require(zoo)
z = zoo(cbind(a=0:10, b=c(NA,10:1), c=sample(1:11,11)), 1:11)
rollmeanr(z, k=3, fill=NA)
a b c
1 NA NA NA
2 NA NA NA
3 1 NA 3.333333
4 2 NA 4.666667
5 3 NA 4.000000
6 4 NA 6.333333
7 5 NA 7.000000
8 6 NA 9.333333
9 7 NA 8.333333
10 8 NA 8.666667
11 9 NA 5.666667
rollapply(z, width=3, FUN=mean, by=1, by.column=TRUE, fill=NA, align="right")
a b c
1 NA NA NA
2 NA NA NA
3 1 NA 3.333333
4 2 9 4.666667
5 3 8 4.000000
6 4 7 6.333333
7 5 6 7.000000
8 6 5 9.333333
9 7 4 8.333333
10 8 3 8.666667
11 9 2 5.666667
이 두 호출이 동일한 결과를 생성 할 것으로 기대합니다. 의견을 부탁합니다. 일부 세션 정보 :
sessionInfo()
R version 3.0.1 (2013-05-16)
Platform: x86_64-unknown-linux-gnu (64-bit)
locale:
[1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C
[3] LC_TIME=en_US.UTF-8 LC_COLLATE=en_US.UTF-8
[5] LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8
[7] LC_PAPER=C LC_NAME=C
[9] LC_ADDRESS=C LC_TELEPHONE=C
[11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] zoo_1.7-10
loaded via a namespace (and not attached):
[1] grid_3.0.1 lattice_0.20-15
도움말 파일에서 '기본'롤 만 ' '에 'NA'가 포함 된 입력을 처리하지 않습니다. 그런 경우 'rollapply' 대신 사용하십시오. – dickoa
예, 알았습니다. rollapply가 na.rm = TRUE를 넘겨 줄 수 있으므로 NA를 건너 뛰는 것을 허용하지 않는다고 가정했습니다. NA가있을 때 그것이 깨지면 읽어야합니까? – Alex