Fied some calcs

This commit is contained in:
alex 2026-10-04 22:56:24 -06:00
parent 1b50d9e509
commit 58c2b5010f
2 changed files with 42 additions and 4 deletions

View File

@ -148,7 +148,18 @@ ALL_TAX <- cbind(ALL_TAX,WY_TAX[,-1:-2])
############Employment
IMPLAN_EMPLOY <- IMPLAN %>% filter(Impact=='Employment',Source=='IMPLAN') %>% group_by(Year,Region,Impact) %>% summarize(value=sum(value)) %>% ungroup
IMPLAN_EMPLOY <- IMPLAN_EMPLOY %>% group_by(Year,Impact) %>% mutate(value=ifelse(Region=='US',value-min(value),value) ) %>% ungroup
##########
EMP_MAIN_SUMMARY <- IMPLAN %>% filter(Impact=='Employment',Source=='IMPLAN') %>% group_by(Year,Region,Type)%>% summarize(value=mean(value)) %>% group_by(Year,Type)
US <- EMP_MAIN_SUMMARY %>% filter(Region=='US') %>% rename(US_value=value) %>% ungroup %>% left_join(EMP_MAIN_SUMMARY %>% filter(Region=='WY') %>% select(-Region)) %>% mutate(US_value=US_value-value,US_value=ifelse(US_value<0,0,US_value)) %>% select(-value) %>% rename(value=US_value)
EMP_MAIN_SUMMARY <- rbind(US,EMP_MAIN_SUMMARY %>% filter(Region=='WY'))%>% mutate(Period=ifelse(Year>CONST_END_YEAR,'Operations',"Construction")) %>% group_by(Period,Region,Type) %>% summarize(value=mean(value)) %>% ungroup %>% pivot_wider(values_from=value,names_from=c(Period)) %>% arrange(desc(Region))
EMP_MAIN_SUMMARY$Region <- ifelse(EMP_MAIN_SUMMARY$Region=='WY','Wyoming','Other States')
EMP_MAIN_SUMMARY <- rbind(EMP_MAIN_SUMMARY,c("United States","Total",as.numeric(colSums(EMP_MAIN_SUMMARY[-1:-2]))))
EMP_MAIN_SUMMARY[,3] <- round(as.numeric(t(EMP_MAIN_SUMMARY[,3] )),0)
EMP_MAIN_SUMMARY[,4] <- round(as.numeric(t(EMP_MAIN_SUMMARY[,4] )),0)
##################
IMPLAN_EMPLOY$Region <- factor(ifelse(IMPLAN_EMPLOY$Region=="WY",'Wyoming',"Rest of United States"),levels=rev(c("Wyoming","Rest of United States")))
IMPLAN_EMPLOYMENT_PLOT <- ggplot(IMPLAN_EMPLOY ,aes(x=Year,y=value,fill=Region,group=Region))+geom_area()+ylab("Employment (Full-Time Equivalent)")+theme_bw()+ theme(plot.title = element_text(size = 22, face = "bold"), axis.title = element_text(size = 18),axis.text = element_text(size = 16),legend.text = element_text(size = 14),strip.text = element_text(size = 14),legend.position="top")+ theme(legend.title=element_blank())+scale_fill_manual(values=c("#3C3B6E","#FFC425"))+scale_x_continuous(breaks=seq(2025,2060,by=5))+scale_y_continuous(breaks=c(seq(0,50000,by=1000)),labels = label_comma())
@ -235,7 +246,8 @@ OP_EMP_SUMMARY <- EMP_SUMMARY %>% select(Occupation,Period,Wy_Employment,Wy_Peak
############Save results
HEADER <- "Data Center: "
HEADER <- "Data Center_"
write.csv(EMP_MAIN_SUMMARY ,paste0("./Results/",HEADER,"Employment_Summary.csv"),row.names=FALSE)
write.csv(WY_NPV,paste0("./Results/",HEADER,"Wyoming_NPV_Values.csv"),row.names=FALSE)
write.csv(US_NPV,paste0("./Results/",HEADER,"US_NPV_Values.csv"),row.names=FALSE)
write.csv(NPV,paste0("./Results/",HEADER,"NPV_Values.csv"),row.names=FALSE)

View File

@ -6,8 +6,11 @@ dir.create("Results", showWarnings = FALSE)
source("Scripts/Load_IMPLAN.r")
SINGLE <- FALSE
OUTPUT_RES <- function(SINGLE=FALSE){
#OUTPUT_RES <- function(SINGLE=FALSE,CONST_END_YEAR){
IMPLAN <- GET_IMPLAN_DATA(SINGLE)
CONST_END_YEAR <- ifelse(SINGLE,2030,2036)
IMPLAN_DOLLAR <- IMPLAN %>% filter(Impact!='Employment')
@ -18,6 +21,9 @@ IMPLAN_DOLLAR <- rbind(IMPLAN_DOLLAR,rbind(TEMP %>% mutate(Year=2025),TEMP %>% m
IMPLAN_DOLLAR$Impact <- factor(IMPLAN_DOLLAR$Impact,levels=c('Output','Value Added','Income','Federal','State','County'))
IMPLAN_DOLLAR$Region <- factor(ifelse(IMPLAN_DOLLAR$Region=="WY",'Wyoming',"Rest of United States"),levels=rev(c("Wyoming","Rest of United States")))
IMPLAN_DOLLAR_REGION <- IMPLAN_DOLLAR %>% filter(Impact %in% c('Income','Output','Value Added')) %>% group_by(Year,Region,Impact) %>% summarize(value=sum(value)) %>% ungroup
#IMPLAN_DOLLAR_REGION %>% filter(Year==2040) %>% group_by(Year,Impact) %>% summarize(value=sum(value)/10^9)
IMPLAN_DOLLAR_REGION %>% filter(Year==2040) %>% group_by(Year,Impact) %>% mutate(RATIO=value/sum(value))
########################Plot of total impact in US and in Wyoming
IMPLAN_REGION_DOLLAR_PLOT <- ggplot(IMPLAN_DOLLAR_REGION ,aes(x=Year,y=value/10^9,fill=Region,group=Region))+geom_area()+facet_wrap(~Impact,ncol=1)+ylab("Billion Dollars")+theme_bw()+ theme(plot.title = element_text(size = 22, face = "bold"), axis.title = element_text(size = 18),axis.text = element_text(size = 16),legend.text = element_text(size = 14),strip.text = element_text(size = 14),legend.position="top")+ theme(legend.title=element_blank())+scale_fill_manual(values=c("#3C3B6E","#FFC425"))+scale_x_continuous(breaks=seq(2025,2060,by=5))+scale_y_continuous(breaks=seq(0,5000,by=1))
@ -67,15 +73,34 @@ ALL_TAX <- cbind(ALL_TAX,WY_TAX[,-1:-2])
############Employment
IMPLAN_EMPLOY <- IMPLAN %>% filter(Impact=='Employment',Source=='IMPLAN') %>% group_by(Year,Region,Impact) %>% summarize(value=sum(value)) %>% ungroup
EMP_MAIN_SUMMARY <- IMPLAN %>% filter(Impact=='Employment',Source=='IMPLAN') %>% group_by(Year,Region,Type)%>% summarize(value=mean(value)) %>% group_by(Year,Type)
US <- EMP_MAIN_SUMMARY %>% filter(Region=='US') %>% rename(US_value=value) %>% ungroup %>% left_join(EMP_MAIN_SUMMARY %>% filter(Region=='WY') %>% select(-Region)) %>% mutate(US_value=US_value-value,US_value=ifelse(US_value<0,0,US_value)) %>% select(-value) %>% rename(value=US_value)
EMP_MAIN_SUMMARY <- rbind(US,EMP_MAIN_SUMMARY %>% filter(Region=='WY'))%>% mutate(Period=ifelse(Year>CONST_END_YEAR,'Operations',"Construction")) %>% group_by(Period,Region,Type) %>% summarize(value=mean(value)) %>% ungroup %>% pivot_wider(values_from=value,names_from=c(Period)) %>% arrange(desc(Region))
EMP_MAIN_SUMMARY$Region <- ifelse(EMP_MAIN_SUMMARY$Region=='WY','Wyoming','Other States')
EMP_MAIN_SUMMARY <- rbind(EMP_MAIN_SUMMARY,c("United States","Total",as.numeric(colSums(EMP_MAIN_SUMMARY[-1:-2]))))
EMP_MAIN_SUMMARY[,3] <- round(as.numeric(t(EMP_MAIN_SUMMARY[,3] )),0)
EMP_MAIN_SUMMARY[,4] <- round(as.numeric(t(EMP_MAIN_SUMMARY[,4] )),0)
IMPLAN_EMPLOY <- IMPLAN %>% filter(Impact=='Employment',Source=='IMPLAN') %>% group_by(Year,Region,Impact) %>% summarize(value=sum(value)) %>% ungroup
IMPLAN_EMPLOY <- IMPLAN_EMPLOY %>% group_by(Year,Impact) %>% mutate(value=ifelse(Region=='US',value-min(value),value) ) %>% ungroup
TEMP <- IMPLAN_EMPLOY %>% filter(Year==2028) %>% mutate(value=0)
IMPLAN_EMPLOY <- rbind(IMPLAN_EMPLOY,rbind(TEMP %>% mutate(Year=2025),TEMP %>% mutate(Year=2026),TEMP %>% mutate(Year=2027)))
IMPLAN_EMPLOY
IMPLAN_EMPLOY$Region <- factor(ifelse(IMPLAN_EMPLOY$Region=="WY",'Wyoming',"Rest of United States"),levels=rev(c("Wyoming","Rest of United States")))
IMPLAN_EMPLOYMENT_PLOT <- ggplot(IMPLAN_EMPLOY ,aes(x=Year,y=value,fill=Region,group=Region))+geom_area()+ylab("Employment (Full-Time Equivalent)")+theme_bw()+ theme(plot.title = element_text(size = 22, face = "bold"), axis.title = element_text(size = 18),axis.text = element_text(size = 16),legend.text = element_text(size = 14),strip.text = element_text(size = 14),legend.position="top")+ theme(legend.title=element_blank())+scale_fill_manual(values=c("#3C3B6E","#FFC425"))+scale_x_continuous(breaks=seq(2025,2060,by=5))+scale_y_continuous(breaks=c(seq(0,50000,by=1000)),labels = label_comma())
IMPLAN_EMPLOY %>% filter(Year<2036) %>% group_by(Year) %>% summarize(value=sum(value)) %>% filter(Year>2027) %>% pull(value) %>% mean
#############################Get Occupation Information
if(exists("RES")){rm(RES)}
for(YEAR in 2028:2036){
@ -152,8 +177,9 @@ OP_EMP_SUMMARY <- EMP_SUMMARY %>% select(Occupation,Period,Wy_Employment,Wy_Peak
#GRAPH_DATA <- EMP_SUMMARY %>% select(Occupation,Period,Rank,Total_Employment) %>% mutate(Occupation=as.factor(Occupation))
# ggplot(GRAPH_DATA, aes(x = Period, y = Total_Employment, fill = Occupation)) + geom_col(position = "stack")+ theme(plot.title = element_text(size = 22, face = "bold"), axis.title = element_text(size = 18),axis.text = element_text(size = 16),legend.text = element_text(size = 14),strip.text = element_text(size = 14),legend.position="top")
############Save results
HEADER <- ifelse(SINGLE,"Single Phase: ","")
HEADER <- ifelse(SINGLE,"Single Phase_ ","")
write.csv(EMP_MAIN_SUMMARY ,paste0("./Results/",HEADER,"Employment_Summary.csv"),row.names=FALSE)
write.csv(WY_NPV,paste0("./Results/",HEADER,"Wyoming_NPV_Values.csv"),row.names=FALSE)
write.csv(WY_NPV,paste0("./Results/",HEADER,"Wyoming_NPV_Values.csv"),row.names=FALSE)
write.csv(US_NPV,paste0("./Results/",HEADER,"US_NPV_Values.csv"),row.names=FALSE)
write.csv(NPV,paste0("./Results/",HEADER,"NPV_Values.csv"),row.names=FALSE)