Skip to content
Snippets Groups Projects
Select Git revision
  • 298d7d6eeb8facb9ef9929ab007e0d75756c0e13
  • main default protected
2 results

03_03_absence_preparation_random.R

Blame
  • Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    cli_01b.r 3.09 KiB
    library(optparse)
    
    # ------------------------------------------------------------------------------
    # defaults
    # ------------------------------------------------------------------------------
    
    default.max.inter.t <- 1
    default.nperm <- 99
    default.ncores <- 1
    # ------------------------------------------------------------------------------
    # parsing arguments
    # ------------------------------------------------------------------------------
    
    options <- list (
      
      make_option(
        opt_str = c("-c", "--ncores"),
        dest    = "ncores",
        type    = "integer",
        default = default.ncores,
        help    = paste0("number of CPU cores to use, defaults to ", default.ncores),
        metavar = "4"
      ),
      
      make_option(
        opt_str = c("-m", "--max.inter.t"),
        dest    = "max.inter.t",
        type    = "integer",
        default = default.max.inter.t,
        help    = "Max number of interactions for traits",
        metavar = "4"
      ),
      
      make_option(
        opt_str = c("-n", "--chunkn"),
        dest    = "chunkn",
        type    = "integer",
        default = 1,
        help    = "How many chunks?",
        metavar = "4"
      ),
      
      make_option(
        opt_str = c("-i", "--chunk.i"),
        dest    = "chunk.i",
        type    = "integer",
        default = NA,
        help    = "Which chunk?",
        metavar = "4"
      ), 
      make_option(
        opt_str = c("-p", "--nperm"),
        dest    = "nperm",
        type    = "integer",
        default = default.nperm,
        help    = "How many permutations?",
        metavar = "4"
      ), 
      make_option(
        opt_str = c("-s", "--start.round"),
        dest    = "start.round",
        type    = "integer",
        default = NA,
        help    = "Which start round?",
        metavar = "4"
      ), 
      make_option(
        opt_str = c("-x", "--relax.round"),
        dest    = "relax.round",
        type    = "integer",
        default = NA,
        help    = "After what round should the selection of new best combos stop being based on c.i.?",
        metavar = "4"
      )
    )
    
    parser <- OptionParser(
      usage       = "Rscript %prog [options] data dt_beals header output",
      option_list = options,
      description = "\nan awesome R script",
      epilogue    = "use with caution, the awesomeness might slap you in the face!"
    )
    
    cli <- parse_args(parser, positional_arguments = 5)
    
    # ------------------------------------------------------------------------------
    # assign a few shortcuts
    # ------------------------------------------------------------------------------
    
    species.path   <- cli$args[1]
    traits.path  <- cli$args[2]
    output       <- cli$args[3]
    myfunction   <- cli$args[4]
    combinations   <- cli$args[5]
    start.round    <- cli$options$start.round
    relax.round    <- cli$options$relax.round
    max.inter.t    <- cli$options$max.inter.t
    chunkn         <- cli$options$chunkn
    chunk.i        <- cli$options$chunk.i
    nperm          <- cli$options$nperm
    ncores         <- cli$options$ncores
    
    # ------------------------------------------------------------------------------
    # actual program
    # ------------------------------------------------------------------------------
    
    source("01b_MesobromionCluster.R")
    Mesobromion(species.path, traits.path, output, myfunction, combinations, start.round, relax.round, max.inter.t, chunk.n, chunk.i, nperm, ncores)