summary_ENV_weather <- function(df.get_weather,env){
names(df.get_weather)[1] <- 'env'
ids_ <- c('env','LON','LAT','YEAR','MM','DD','DOY','YYYYMMDD',"daysFromStart")
ids_ <- names(df.get_weather)%in% ids_
df.get_weather[,!ids_][df.get_weather[,!ids_] == '-99'] <- NA
ids_ <- c('LON','LAT','YEAR','MM','DD','DOY','YYYYMMDD',"daysFromStart")
ids_ <- !names(df.get_weather) %in% c(ids_)
ts <- melt(df.get_weather[,ids_],id.vars = 'env')
ts$value <- as.numeric(ts$value)
avg_.<-dcast(ddply(ts,.(env,variable),summarise,avg=mean(value,na.rm=T)),env~variable,value.var = 'avg')
sum_.<-dcast(ddply(ts,.(env,variable),summarise,sum=sum(value,na.rm=T)),env~variable,value.var = 'sum')
med_.<-dcast(ddply(ts,.(env,variable),summarise,med=median(value,na.rm=T)),env~variable,value.var = 'med')
max_.<-dcast(ddply(ts,.(env,variable),summarise,max=max(value,na.rm=T)),env~variable,value.var = 'max')
min_.<-dcast(ddply(ts,.(env,variable),summarise,min=min(value,na.rm=T)),env~variable,value.var = 'min')
W.<-ldply(list(avg=avg_., sum = sum_.,med = med_., max = max_., min=min_.),.id = "statistics")
ids_ <- c("env",'LON','LAT','YEAR','MM','DD','DOY','YYYYMMDD',"daysFromStart",'stage',"statistics")
W.<-acast(melt(W.,id.vars = ids_[ids_ %in% names(W.)]),statistics+variable~env,value.var='value')
return(W.)
}
summary_ENVSTG_weather <- function(df.get_weather,env){
names(df.get_weather)[1] <- 'env'
ids_ <- c('env','stage','LON','LAT','YEAR','MM','DD','DOY','YYYYMMDD',"daysFromStart")
ids_ <- names(df.get_weather)%in% ids_
df.get_weather[,!ids_][df.get_weather[,!ids_] == '-99'] <- NA
ids_ <- c('LON','LAT','YEAR','MM','DD','DOY','YYYYMMDD',"daysFromStart")
ids_ <- !names(df.get_weather) %in% c(ids_)
ts <- melt(df.get_weather[,ids_],id.vars = c('env','stage'))
ts$value <- as.numeric(ts$value)
avg_.<-dcast(ddply(ts,.(env,stage,variable),summarise,avg=mean(value,na.rm=T)),env+stage~variable,value.var = 'avg')
sum_.<-dcast(ddply(ts,.(env,stage,variable),summarise,sum=sum(value,na.rm=T)),env+stage~variable,value.var = 'sum')
med_.<-dcast(ddply(ts,.(env,stage,variable),summarise,med=median(value,na.rm=T)),env+stage~variable,value.var = 'med')
max_.<-dcast(ddply(ts,.(env,stage,variable),summarise,max=max(value,na.rm=T)),env+stage~variable,value.var = 'max')
min_.<-dcast(ddply(ts,.(env,stage,variable),summarise,min=min(value,na.rm=T)),env+stage~variable,value.var = 'min')
W.<-ldply(list(avg=avg_., sum = sum_.,med = med_., max = max_., min=min_.),.id = "statistics")
ids_ <- c("env",'LON','LAT','YEAR','MM','DD','DOY','YYYYMMDD',"daysFromStart",'stage',"statistics")
W.<-acast(melt(W.,id.vars = ids_[ids_ %in% names(W.)]),statistics+variable+stage~env,value.var='value')
return(W.)
}
summary_get_weather <- function(df.get_weather,
env,
by.stage = TRUE,
stage = NULL,
breaks = NULL,
name.stages = NULL){
if(!isTRUE(by.stage)){
W<-summary_ENV_weather(df.get_weather=df.get_weather,env = env)
return(W)
}
if(isTRUE(by.stage)){
df.get_weather$stage <- stage.by.dae(.dae = df.get_weather$daysFromStart,
.breaks = breaks,.names = name.stages)
W <-summary_ENVSTG_weather(df.get_weather=df.get_weather,env = env)
return(W)
}
}
stage.by.dae = function(.dae=NULL, .breaks=NULL, .names=NULL){
if(is.null(.dae)){stop(".dae is missing")}
if(is.null(.breaks)){.breaks<-seq(from=1-min(.dae),to=max(.dae)+10,by=10)}
if(is.null(.names)){.names <-paste0("stage_",.breaks)}
pstage = cut(x = .dae,breaks=.breaks,right = F)
levels(pstage) = .names
return(pstage)
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.