annotate IdValidTidy.R @ 1:eb19a5089b56 draft default tip

planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
author ecology
date Fri, 26 Apr 2019 12:21:27 -0400
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
1 #!/usr/bin/env Rscript
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
2
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
3 args <- commandArgs(trailingOnly = TRUE)
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
4
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
5 #print(args)
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
6
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
7 library(data.table)
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
8 library(methods)
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
9
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
10
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
11 ValidHier=function(x,y) #used to write validator id over observer id
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
12 {
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
13 if(y==""){x}else{y}
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
14 }
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
15
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
16 f2p <- function(x) #get date-time data from recording file names
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
17 {
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
18 if (is(x)[1] == "data.frame") {pretemps <- vector(length = nrow(x))}
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
19 op <- options(digits.secs = 3)
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
20 pretemps <- paste(substr(x, nchar(x) - 18, nchar(x)-4), ".", substr(x, nchar(x) - 2, nchar(x)), sep = "")
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
21 strptime(pretemps, "%Y%m%d_%H%M%OS",tz="UTC")-7200
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
22 }
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
23
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
24
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
25 IdCorrect=fread(args[1])
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
26
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
27 #Step 0 :compute id score from 2nd Layer
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
28 IdCorrect$IdProb=IdCorrect$tadarida_probabilite
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
29
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
30 IdCorrect$observateur_taxon[is.na(IdCorrect$observateur_taxon)]=""
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
31 IdCorrect$observateur_probabilite[is.na(IdCorrect$observateur_probabilite)]=""
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
32 IdCorrect$validateur_taxon[is.na(IdCorrect$validateur_taxon)]=""
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
33 IdCorrect$validateur_probabilite[is.na(IdCorrect$validateur_probabilite)]=""
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
34
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
35
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
36
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
37 #Step 1 :compute id with confidence regarding a hierarchy (validator > observer)
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
38 IdCorrect$IdV=mapply(ValidHier,IdCorrect$observateur_taxon,IdCorrect$validateur_taxon)
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
39 IdCorrect$ConfV=mapply(ValidHier,IdCorrect$observateur_probabilite
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
40 ,IdCorrect$validateur_probabilite)
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
41
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
42
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
43 #print(paste(length(subset(IdCorrect$ConfV,IdCorrect$ConfV!=""))))
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
44
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
45 #Step 2: Get numerictime data
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
46 if (substr(IdCorrect$`nom du fichier`[1],2,2)=="i") #for car/walk transects
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
47 {
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
48 FileInfo=as.data.table(tstrsplit(IdCorrect$`nom du fichier`,"-"))
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
49 IdCorrect$Session=as.numeric(substr(FileInfo$V4,5,nchar(FileInfo$V4)))
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
50 TimeSec=as.data.table(tstrsplit(FileInfo$V5,"_"))
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
51 TimeSec=as.data.frame(TimeSec)
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
52 if(sum(TimeSec[,(ncol(TimeSec)-1)]!="00000")==0) #to deal with double Kaleidoscope treatments
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
53 {
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
54 print("NOMS DE FICHIERS NON CONFORMES")
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
55 print("Vous les avez probablement traiter 2 fois par Kaleidoscope")
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
56 stop("Merci de nous signaler cette erreur par mail pour correction")
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
57 }else{
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
58 IdCorrect$TimeNum=(IdCorrect$Session*800
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
59 +as.numeric(TimeSec[,(ncol(TimeSec)-1)])
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
60 +as.numeric(TimeSec[,(ncol(TimeSec))])/1000)
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
61 }
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
62
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
63 }else{
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
64 if(substr(IdCorrect$`nom du fichier`[1],2,2)=="a") #for stationary recordings
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
65 {
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
66 DateRec=as.POSIXlt(f2p(IdCorrect$`nom du fichier`))
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
67 Nuit=format(as.Date(DateRec-43200*(DateRec$hour<12)),format="%d/%m/%Y")
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
68 #Nuit[is.na(Nuit)]=0
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
69 IdCorrect$Session=Nuit
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
70 IdCorrect$TimeNum=as.numeric(DateRec)
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
71
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
72 }else{
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
73 print("NOMS DE FICHIERS NON CONFORMES")
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
74 stop("Ils doivent commencer par Cir (routier/pedestre) ou par Car (points fixes")
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
75 }
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
76 }
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
77
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
78 #hist(IdCorrect$TimeNum)
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
79
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
80
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
81
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
82
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
83 #Step 3 :treat sequentially each species identified by Tadarida-C
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
84 IdExtrap=vector() #to store the id extrapolated from validations
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
85 IdC2=IdCorrect[0,] #to store data in the right order
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
86 TypeE=vector() #to store the type of extrapolation made
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
87 for (j in 1:nlevels(as.factor(IdCorrect$tadarida_taxon)))
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
88 {
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
89 IdSp=subset(IdCorrect
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
90 ,IdCorrect$tadarida_taxon==levels(as.factor(IdCorrect$tadarida_taxon))[j])
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
91 if(sum(IdSp$IdV=="")==(nrow(IdSp))) #case 1 : no validation no change
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
92 {
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
93 IdC2=rbind(IdC2,IdSp)
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
94 IdExtrap=c(IdExtrap,rep(IdSp$tadarida_taxon[1],nrow(IdSp)))
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
95 TypeE=c(TypeE,rep(0,nrow(IdSp)))
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
96 }else{ #case 2: some validation
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
97 Vtemp=subset(IdSp,IdSp$IdV!="")
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
98 #case2A: validations are homogeneous
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
99 if(nlevels(as.factor(Vtemp$IdV))==1)
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
100 {
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
101 IdC2=rbind(IdC2,IdSp)
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
102 IdExtrap=c(IdExtrap,rep(Vtemp$IdV[1],nrow(IdSp)))
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
103 TypeE=c(TypeE,rep(2,nrow(IdSp)))
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
104 }else{
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
105 #case 2B: validations are heterogeneous
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
106 #case 2B1: some validations confirms the species identified by Tadarida and highest confidence are confirmed
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
107 subVT=subset(Vtemp,Vtemp$IdV==levels(as.factor(IdCorrect$tadarida_taxon))[j])
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
108 subVF=subset(Vtemp,Vtemp$IdV!=levels(as.factor(IdCorrect$tadarida_taxon))[j])
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
109 if((nrow(subVT)>0)&(max(subVT$IdProb)>max(subVF$IdProb)))
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
110 {
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
111 Vtemp=Vtemp[order(Vtemp$IdProb),]
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
112 test=(Vtemp$IdV!=Vtemp$tadarida_taxon)
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
113 Fr1=max(which(test == TRUE)) #find the error with highest indices
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
114 Thr1=mean(Vtemp$IdProb[(Fr1):(Fr1+1)]) #define first threshold as the median confidence between the first error and the confirmed ID right over it
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
115 #id over this threshold are considered right
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
116 IdHC=subset(IdSp,IdSp$IdProb>Thr1)
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
117 IdC2=rbind(IdC2,IdHC)
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
118 IdExtrap=c(IdExtrap,rep(Vtemp$IdV[nrow(Vtemp)],nrow(IdHC)))
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
119 TypeE=c(TypeE,rep(2,nrow(IdHC)))
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
120 #id under this threshold are attributed to validated id closest in time
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
121 Vtemp=Vtemp[order(Vtemp$TimeNum),]
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
122 cuts <- c(-Inf, Vtemp$TimeNum[-1]-diff(Vtemp$TimeNum)/2, Inf)
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
123 CorrV=findInterval(IdSp$TimeNum, cuts)
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
124 IdE=Vtemp$IdV[CorrV]
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
125 IdEL=subset(IdE,IdSp$IdProb<=Thr1)
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
126 IdLC=subset(IdSp,IdSp$IdProb<=Thr1)
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
127 IdExtrap=c(IdExtrap,IdEL)
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
128 TypeE=c(TypeE,rep(1,length(IdEL)))
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
129 IdC2=rbind(IdC2,IdLC)
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
130
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
131
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
132 }else{
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
133 #case 2B2: all validations concerns errors
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
134 #id are extrapolated on time only
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
135 Vtemp=Vtemp[order(Vtemp$TimeNum),]
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
136 cuts <- c(-Inf, Vtemp$TimeNum[-1]-diff(Vtemp$TimeNum)/2, Inf)
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
137 CorrV=findInterval(IdSp$TimeNum, cuts)
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
138 IdE=Vtemp$IdV[CorrV]
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
139 IdExtrap=c(IdExtrap,IdE)
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
140 TypeE=c(TypeE,rep(1,length(IdE)))
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
141 IdC2=rbind(IdC2,IdSp)
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
142 }
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
143 }
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
144
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
145
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
146 }
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
147
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
148 #print(paste(j,nrow(IdC2),length(IdExtrap)))
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
149
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
150 }
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
151 test1=(nrow(IdC2)==length(IdExtrap))
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
152 test2=(nrow(IdC2)==nrow(IdCorrect))
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
153 if((test1==F)|(test2==F))
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
154 {
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
155 (stop("Erreur de traitement !!!"))
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
156 }
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
157
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
158 IdC2$IdExtrap=IdExtrap
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
159 IdC2$TypeE=TypeE
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
160
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
161
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
162 IdC2=IdC2[order(IdC2$IdProb,decreasing=T),]
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
163 IdC2=IdC2[order(IdC2$ConfV,decreasing=T),]
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
164 IdC2=IdC2[order(IdC2$`nom du fichier`),]
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
165 #discard duplicated species within the same files (= false positives corrected by 2nd layer)
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
166 IdC2=unique(IdC2,by=c("nom du fichier","IdExtrap"))
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
167
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
168
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
169
eb19a5089b56 planemo upload for repository https://github.com/galaxyecology/tools-ecology/tools/vigiechiro commit 7ef0e58cbcbf41088e359f00b6c86504c773c271
ecology
parents:
diff changeset
170 write.table(IdC2,"IdValidTidy.tabular",row.names=F,sep="\t")