多個索引我有一個數據幀,就像這一個:tapply基於R中
ref=rep(c("A","B"),each=240)
year=rep(rep(2014:2015,each=120),2)
month=rep(rep(1:12,each=10),4)
values=c(rep(NA,200),rnorm(100,2,1),rep(NA,50),rnorm(40,4,2),rep(NA,90))
DF=data.frame(ref,year,month,values)
我想計算每參考連續的NA的最大數目,每年。 我已經創建了一個函數,計算出連續NAs的最大數量,但只能基於一個變量。
例如,
func <- function(x) {
max(rle(is.na(x))$lengths)
}
with(DF, tapply(values,ref, func))
# A B
# 200 90
with(DF, tapply(values,year, func))
# 2014 2015
# 120 90
所以有最大的總參考文獻A 200個連續NAS和最多90在參考文獻B中,這是正確的是。也有120次來港在2014年,90在2015年
我想是每個ref和一年的結果,如:
A 2015 80
A 2014 120
B 2015 90
B 2014 50
這正是我想要的。謝謝! – sym246