comparison sdmpredictors_list_layers.R @ 0:f20914d71c9d draft default tip

planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/sdmpredictors commit a4635c2349750b45d47b50ff1cecc8c5fdeb58e0
author ecology
date Mon, 08 Apr 2024 16:33:11 +0000
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:f20914d71c9d
1 #!/bin/Rscript
2
3 args = commandArgs(trailingOnly=TRUE)
4
5 #lister les option pour future et paléo, source internet ?
6 #donner une erreur quand une option est incorrecte
7
8 library(sdmpredictors)
9
10 layers_modern_fun <- function(argument_number, file_number){
11
12 data_terrestrial = as.logical(args[argument_number+1])
13 data_marine = as.logical(args[argument_number+2])
14 data_freshwater = as.logical(args[argument_number+3])
15 data_monthly = as.logical(args[argument_number+4])
16 data_version = as.numeric(args[argument_number+5])
17
18 if(data_version==0){data_version <- NULL}
19
20 datasets <- list_datasets(terrestrial = data_terrestrial
21 , marine = data_marine
22 , freshwater = data_freshwater)
23
24 write.table(list_layers(datasets
25 , terrestrial = data_terrestrial
26 , marine = data_marine
27 , freshwater = data_freshwater
28 , monthly = data_monthly
29 , version = data_version
30 ), file = paste(as.character(file_number),"data_current.tabular", sep = "_"), sep = "\t", row.names=FALSE)
31 }
32
33 layers_future_fun <- function(argument_number, file_number){
34
35 data_terrestrial = as.logical(args[argument_number+1])
36 data_marine = as.logical(args[argument_number+2])
37 data_freshwater = as.logical(args[argument_number+3])
38 data_monthly = as.logical(args[argument_number+4])
39 data_version = as.numeric(args[argument_number+5])
40 data_scenario = as.character(args[argument_number+6])
41 data_year = as.numeric(args[argument_number+7])
42
43 if(data_version==0){data_version <- NULL}
44 if(data_scenario=="All"){data_scenario <- NA}
45 if(data_year==0){data_year <- NA}
46
47 datasets <- list_datasets(terrestrial = data_terrestrial
48 , marine = data_marine
49 , freshwater = data_freshwater)
50
51 write.table(list_layers_future(datasets
52 , terrestrial = data_terrestrial
53 , marine = data_marine
54 , freshwater = data_freshwater
55 , monthly = data_monthly
56 , version = data_version
57 , scenario = data_scenario
58 , year = data_year
59 ), file = paste(as.character(file_number),"data_future.tabular", sep = "_"), sep = "\t", row.names=FALSE)
60 }
61
62 layers_paleo_fun <- function(argument_number, file_number){
63
64 data_terrestrial = as.logical(args[argument_number+1])
65 data_marine = as.logical(args[argument_number+2])
66 data_freshwater = as.logical(args[argument_number+3])
67 data_monthly = as.logical(args[argument_number+4])
68 data_version = as.numeric(args[argument_number+5])
69 data_model_name = as.character(args[argument_number+6])
70 data_epoch = as.character(args[argument_number+7])
71 data_years_ago = as.numeric(args[argument_number+8])
72
73 if(data_version==0){data_versio <- NULL}
74 if(data_model_name=="All"){data_model_name <- NA}
75 if(data_epoch=="All"){data_epoch <- NA}
76 if(data_years_ago==0){data_years_ago <- NA}
77
78 datasets <- list_datasets(terrestrial = data_terrestrial
79 , marine = data_marine
80 , freshwater = data_freshwater)
81
82 write.table(list_layers_paleo(datasets
83 , terrestrial = data_terrestrial
84 , marine = data_marine
85 , freshwater = data_freshwater
86 , monthly = data_monthly
87 , version = data_versio
88 , model_name = data_model_name
89 , epoch = data_epoch
90 , years_ago = data_years_ago
91 ), file = paste(as.character(file_number),"data_paleo.tabular", sep = "_"), sep = "\t", row.names=FALSE)
92 }
93
94
95 if (length(args)<0){stop("not enough arguments")
96 }else{
97 n <- 1
98 for (a in 1:length(args)) {
99 if (as.character(args[a]) == "layers_current"){
100 layers_modern_fun(a,n)
101 n <- n+1
102 }
103
104 if (as.character(args[a]) == "layers_future"){
105 layers_future_fun(a,n)
106 n <- n+1
107 }
108
109 if (as.character(args[a]) == "layers_paleo"){
110 layers_paleo_fun(a,n)
111 n <- n+1
112 }
113 }}
114
115
116
117
118
119