76 lines
3.6 KiB
R
76 lines
3.6 KiB
R
WD <- as.matrix(WD)
|
|
GET_CUTOFF <- function(DIST){
|
|
WD_MAT <- as.matrix(WD)
|
|
WD_PICK <- as.matrix(WD)
|
|
WD_PICK[WD_MAT<=DIST] <- TRUE
|
|
WD_PICK[WD_MAT>DIST] <- FALSE
|
|
diag(WD_PICK) <- FALSE
|
|
return(WD_PICK)
|
|
}
|
|
COND_MAT <- function(SEL_LIST,DIST){
|
|
NUM_RES <- colSums(GET_CUTOFF(DIST)*(colnames(WD) %in% SEL_LIST))
|
|
return(cbind(colnames(WD),NUM_RES) %>% as_tibble%>% mutate(NUM_RES=as.numeric(NUM_RES),IN=ifelse(NUM_RES>0,TRUE,FALSE)) %>% rename(GW_wdid=V1))
|
|
}
|
|
|
|
|
|
GET_CREP_DAT <- function(DIS){
|
|
for(i in c(2014,2015,2016,2017,2018,2019,2020)){
|
|
SEL_LIST <- IN_CREP %>% filter(CREP_Year==i,PERM_CREP==0) %>% pull(GW_wdid)
|
|
if(!exists("RES")){RES <- COND_MAT(SEL_LIST,DIS)%>% mutate(CREP_CLOSE_YEAR=i)}else{RES <- rbind(RES,COND_MAT(SEL_LIST,DIS)%>% mutate(CREP_CLOSE_YEAR=i))}
|
|
}
|
|
RES$PERM_CREP <- 0
|
|
for(i in c(2014,2015,2016,2018,2020,2021)){
|
|
SEL_LIST <- IN_CREP %>% filter(CREP_Year==i,PERM_CREP==1) %>% pull(GW_wdid)
|
|
RES <- rbind(RES,COND_MAT(SEL_LIST,DIS)%>% mutate(CREP_CLOSE_YEAR=i,PERM_CREP=1))
|
|
}
|
|
for(i in 2014:2021){
|
|
CREP <- RES %>% filter(CREP_CLOSE_YEAR<=i) %>% group_by(GW_wdid) %>% summarize(CREP_CLOSE_NUM=sum(NUM_RES),CREP_CLOSE_TREAT=max(IN),Year=i)
|
|
TEMP <- RES %>% filter(CREP_CLOSE_YEAR<=i,PERM_CREP==0) %>% group_by(GW_wdid) %>% summarize(TEMP_CLOSE_NUM=sum(NUM_RES),TEMP_CLOSE_TREAT=max(IN),Year=i)
|
|
PERM <- RES %>% filter(CREP_CLOSE_YEAR<=i,PERM_CREP==1) %>% group_by(GW_wdid) %>% summarize(PERM_CLOSE_NUM=sum(NUM_RES),PERM_CLOSE_TREAT=max(IN),Year=i)
|
|
|
|
ALL <- full_join(full_join(CREP,TEMP),PERM)
|
|
if(!exists("NUM_RES")){NUM_RES <- ALL}else{NUM_RES <- rbind(NUM_RES,ALL)}
|
|
}
|
|
for(i in 2009:2013){
|
|
temp <- NUM_RES %>% filter(Year==2014)
|
|
temp[,-1] <- 0
|
|
temp$Year <- i
|
|
NUM_RES <- rbind(NUM_RES,temp)
|
|
}
|
|
|
|
POLICY_SUM <- full_join(RES %>% filter(PERM_CREP==0) %>% group_by(GW_wdid) %>% summarize(TEMP_CLOSE_YEAR=min(ifelse(IN,CREP_CLOSE_YEAR,Inf))),RES %>% filter(PERM_CREP==1) %>% group_by(GW_wdid) %>% summarize(PERM_CLOSE_YEAR=min(ifelse(IN,CREP_CLOSE_YEAR,Inf))))
|
|
POLICY_SUM <- POLICY_SUM %>% left_join(RES %>% group_by(GW_wdid) %>% summarize(CREP_CLOSE_YEAR=min(ifelse(IN,CREP_CLOSE_YEAR,Inf))))
|
|
|
|
POLICY_SUM <- POLICY_SUM %>% full_join(NUM_RES) %>% select(GW_wdid,Year,everything()) %>% arrange(GW_wdid,Year)
|
|
return(POLICY_SUM)
|
|
}
|
|
#####
|
|
GET_CLOSE_FALLOW <- function(YEAR,DIST){
|
|
OR <- colnames(WD)
|
|
FALL <- well_df %>% filter(Year==YEAR) %>% arrange(GW_wdid==OR) %>% mutate(FALLOW=(AF==0)) %>% pull(FALLOW)
|
|
WD <- as.matrix(WD)
|
|
CLOSE_FALLOW <- cbind(OR,rep(YEAR,nrow(WD)),rowSums(WD[,FALL] <DIST)) %>% as_tibble
|
|
colnames(CLOSE_FALLOW) <- c("GW_wdid","Year","NUM_CLOSE_FALLOW")
|
|
CLOSE_FALLOW$Year <- as.numeric(CLOSE_FALLOW$Year)
|
|
CLOSE_FALLOW$NUM_CLOSE_FALLOW<- as.integer(CLOSE_FALLOW$NUM_CLOSE_FALLOW)
|
|
return(CLOSE_FALLOW)
|
|
}
|
|
DF_CLOSE_FALL <- function(DIST){
|
|
CLOSE_FAL <- GET_CLOSE_FALLOW(2009,DIST)
|
|
for(x in 2010:2021){
|
|
CLOSE_FAL <- rbind(CLOSE_FAL,GET_CLOSE_FALLOW(x,DIST))
|
|
}
|
|
CLOSE_FAL <- CLOSE_FAL %>% mutate(HAS_CLOSE_FALL=ifelse(NUM_CLOSE_FALLOW>0,1,0))
|
|
return(CLOSE_FAL)
|
|
}
|
|
###################################################################################
|
|
GET_FALLOW_PROG_DAT <- function(DIS){
|
|
for(i in c(2020,2021)){
|
|
SEL_LIST <- FALL_PROG %>% filter(FALL_PROG_YEAR==i) %>% pull(GW_wdid)
|
|
if(!exists("RES")){RES <- COND_MAT(SEL_LIST,DIS)%>% mutate(FALL_PROG_CLOSE_YEAR=i)}else{RES <- rbind(RES,COND_MAT(SEL_LIST,DIS)%>% mutate(FALL_PROG_CLOSE_YEAR=i))}
|
|
}
|
|
RES <- RES %>% filter(IN) %>% select(GW_wdid,FALL_PROG_CLOSE_YEAR)
|
|
RES <- RES %>% group_by(GW_wdid) %>% mutate(FALL_PROG_CLOSE_YEAR=min(FALL_PROG_CLOSE_YEAR)) %>% unique
|
|
return(RES)
|
|
}
|