Skip to content
Snippets Groups Projects
Select Git revision
  • 4b729484a2751a6da473e51f5f71dc0ad4c8cb6c
  • main default
  • rennenBranch
  • JaakonBranch
4 results

LuoProjektiController.java

Blame
  • Forked from tie / ohj2 / ve / 2025 / kevat / ohj2
    Source project has a limited visibility.
    loadDB.R 2.66 KiB
    #####
    #
    # Import SIMO Results (SQLite-Databases) in R environment
    # CB
    # 2019-07-12
    #
    #####
    
    
    
    ## load libraries
    library(RSQLite)
    library(tidyr)
    library(dplyr)
    
    
    
    ### Select the columns that should be importat from the table UNIT (which was created before via a querry - script structure_SIMO_rslDB)
    # An overview on all available outcomes can be found under: params/Overview_outcomes_SIMO
    columns <-  paste0("id, 
                       year, 
                       branch, 
                       branch_desc, 
                       branching_group,
                       Age,
                       area,
                       cash_flow, 
                       V_total_deadwood, 
                       BA, 
                       V, 
                       N, 
                       H_dom, 
                       D_gm, 
                       Harvested_V,
                       Biomass,
                       income_biomass,
                       CARBON_STORAGE")
    
    
    # Variant 1: create a single dataframe for each SQL Database (selected columns of table UNIT)
    # Dataframes are given the names of the DB and column "test" is added with the name of the DB
    
    for (name in db_names){
      
      db <- dbConnect(dbDriver("SQLite"), dbname = paste0(path,"input_data/simulated_without_", name ,"_rsu.db"))
      rsl  <- dbGetQuery( db, paste0("select ", columns, " from UNIT"))
      rsl$gpkg <- name
      dbDisconnect(db)
      
      rsl <- rsl %>% 
        left_join(regime, by = "branching_group", all.x = TRUE)
      
      write.table(rsl, paste0(path, "output/rsl_",name,".csv" ), sep = ";", row.names = F, col.names = TRUE)
      
      # assign( paste("rsl",name, sep="_"), rsl)
      rm(db, rsl)
      
    }
    
    
    # Variant 2: create one hughe dataframe combining all SQL databases (selected columns of table UNIT)
    # Different DBs are indicated by an additional column "test"
    
    rslt <- NULL
    
    for (name in db_names){
      db <- dbConnect(dbDriver("SQLite"), dbname = paste0(path,"input_data/simulated_without_", name ,"_rsu.db"))
      rsl  <- dbGetQuery( db, paste0("select ", columns, " from UNIT"))
      rsl$gpkg <- name
      dbDisconnect(db)
      rslt <- rbind(rslt, rsl)
      rm(db, rsl) 
    }  
    
    rslt <- rslt %>% 
      left_join(regime, by= "branching_group", all.X = TRUE)
    
    write.table(rslt, paste0(path, "output/rslt_all.csv" ), sep = ";", row.names = F, col.names = TRUE)
    
    
    
    
    
    
    
    
    # ##### Getting all Colnames from a SQL querry
    # 
    # # was used to create List of SIMO output -> What indicators can be calculate for ES
    # # For comparison between countries and 
    # 
    # db <- dbConnect(dbDriver("SQLite"), dbname = paste0(path,"input_data/JENNI.db"))
    # rsl  <- dbGetQuery(db, 'select * from UNIT')
    # dbDisconnect(db)
    # 
    # colnames_FBE <- colnames(rsl) 
    # noquote(colnames_FBE)
    # write.table(colnames_FBE, paste0(path,"temp/colnames_FBE.csv"), row.names = FALSE)