Mercurial > repos > ecology > ecoregion_brt_analysis
annotate cluster_ceamarc.R @ 3:d63d74194100 draft default tip
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit ced658540f05bb07e1e687af30a3fa4ea8e4803c
| author | ecology | 
|---|---|
| date | Wed, 28 May 2025 10:10:52 +0000 | 
| parents | 44dcc1ae3489 | 
| children | 
| rev | line source | 
|---|---|
| 
0
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
1 ##13/04/2023 | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
2 ##Seguineau Pauline | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
3 ### Clustering with Clara algorithm | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
4 | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
5 #load library | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
6 library(cluster) | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
7 library(dplyr) | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
8 library(tidyverse) | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
9 | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
10 #load arguments | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
11 args = commandArgs(trailingOnly=TRUE) | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
12 if (length(args)==0) | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
13 { | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
14 stop("This tool needs at least one argument") | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
15 }else{ | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
16 data <- args[1] | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
17 enviro <- args[2] | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
18 data.bio <- args[3] | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
19 k <- as.numeric(args[4]) | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
20 metric <- args[5] | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
21 sample <- as.numeric(args[6]) | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
22 } | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
23 | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
24 #load data | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
25 env.data <- read.table(enviro, header=TRUE, sep="\t",dec = ".", na.strings = "-9999") | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
26 data.bio <- read.table(data.bio, header=TRUE, sep="\t") | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
27 test3 <- read.table(data, header = TRUE, sep="\t") | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
28 | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
29 ###################################################################################################### | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
30 #Make clustering | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
31 | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
32 k <- k #number of clusters | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
33 test5 <- clara(test3, k, metric = metric, samples = sample, sampsize = min(nrow(test3), (nrow(data.bio)/nrow(test3))+2*k)) | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
34 | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
35 ####################################################################################################### | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
36 #save results | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
37 | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
38 png("sih.png") | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
39 plot(silhouette(test5)) | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
40 dev.off() | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
41 | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
42 clus <- cbind(data.bio[1:nrow(test3), 1:2],test5$clustering) | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
43 names(clus) <- c("lat", "long", "cluster") | 
| 
2
 
44dcc1ae3489
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit c41939f1cdc03331ec021d47495576a6b0c5fd14
 
ecology 
parents: 
0 
diff
changeset
 | 
44 clus <- cbind(clus,test3,env.data[,3:ncol(env.data)]) | 
| 
0
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
45 | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
46 write.table(clus[1:3], file = "points_clus.tsv", quote = FALSE, sep="\t", row.names = FALSE) | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
47 write.table(clus, file = "clus.tsv", quote = FALSE, sep="\t", row.names = FALSE) | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
48 | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
49 | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
50 | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
51 | 
| 
 
7d77be8fab92
planemo upload for repository https://github.com/galaxyecology/tools-ecology/tree/master/tools/Ecoregionalization_workflow commit e03df85746a3b61a382a5ee7e3357a8bf42a5097
 
ecology 
parents:  
diff
changeset
 | 
52 | 
