annotate IdCorrect_2ndLayer.R @ 0:0e3db3a308c0 draft default tip

Uploaded
author mnhn65mo
date Mon, 06 Aug 2018 09:13:29 -0400
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
1 library(data.table)
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
2 library(randomForest)
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
3 args <- commandArgs(trailingOnly = TRUE)
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
4
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
5 set.seed(1) #To test reproductibility
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
6
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
7
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
8 #for test
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
9 #inputest=list.files("C:/Users/Yves Bas/Documents/GitHub/65MO_Galaxy-E/raw_scripts/Vigie-Chiro/input_examples",full.names=T,pattern="participation-")
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
10 #for (i in 1:length(inputest))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
11 #{
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
12 # args=c(inputest[i],"ClassifEspC2b_180222.learner")
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
13 #args[3]=basename(args[1])
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
14
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
15 filename=args[3]
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
16 if (exists("ClassifEspC2b")==F){load(args[2])}
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
17
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
18 DataPar=fread(args[1]) #id to be corrected
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
19 DataPar$participation=substr(filename,nchar(filename)-40,nchar(filename)-17)
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
20 test1=duplicated(cbind(DataPar$'nom du fichier',DataPar$tadarida_taxon))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
21 test2=(DataPar$tadarida_taxon=="empty")
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
22 DataPar=subset(DataPar,(!test1)|(test2))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
23 DataPar$tadarida_probabilite[DataPar$tadarida_probabilite==""]="0"
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
24 DataPar$tadarida_probabilite=as.numeric(DataPar$tadarida_probabilite)
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
25
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
26
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
27 #tableau comptabilisant le nombre de contacts par espèces
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
28 nbcT=as.matrix(table(DataPar$participation,DataPar$tadarida_taxon))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
29
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
30 DataPar$tadarida_probabilite=as.numeric(DataPar$tadarida_probabilite)
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
31
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
32 #generating input variables for second layer classification
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
33
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
34 Q25=vector()
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
35 Q50=vector()
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
36 Q75=vector()
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
37 Q90=vector()
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
38 Q95=vector()
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
39 Q98=vector()
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
40 Q100=vector()
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
41 compt=0
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
42 PropSp=nbcT[0,]
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
43 VoteO=DataPar[0,]
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
44 for (j in 1:nlevels(as.factor(DataPar$tadarida_taxon)))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
45 {
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
46 Datasub2=subset(DataPar,DataPar$tadarida_taxon==levels(as.factor(DataPar$tadarida_taxon))[j])
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
47
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
48 Q25=c(Q25,rep(quantile(Datasub2$tadarida_probabilite,0.25),nrow(Datasub2)))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
49 Q50=c(Q50,rep(quantile(Datasub2$tadarida_probabilite,0.50),nrow(Datasub2)))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
50 Q75=c(Q75,rep(quantile(Datasub2$tadarida_probabilite,0.75),nrow(Datasub2)))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
51 Q90=c(Q90,rep(quantile(Datasub2$tadarida_probabilite,0.90),nrow(Datasub2)))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
52 Q95=c(Q95,rep(quantile(Datasub2$tadarida_probabilite,0.95),nrow(Datasub2)))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
53 Q98=c(Q98,rep(quantile(Datasub2$tadarida_probabilite,0.98),nrow(Datasub2)))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
54 Q100=c(Q100,rep(max(Datasub2$tadarida_probabilite),nrow(Datasub2)))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
55 Ncont1=nrow(Datasub2)
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
56 VoteO=rbind(VoteO,Datasub2)
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
57 PropSp0=nbcT/Ncont1
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
58 PropSp=rbind(PropSp,PropSp0[rep(seq_len(nrow(PropSp0)),nrow(Datasub2)),])
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
59 compt=compt+nrow(Datasub2)
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
60 #print(paste(compt,levels(as.factor(DataPar$tadarida_taxon))[j]))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
61 }
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
62
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
63 VoteC2=cbind(VoteO,PropSp,Q25,Q50,Q75,Q90,Q95,Q98,Q100)
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
64
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
65
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
66 #édition des titres de colonne pour identifier les variables de type "proportions d'abondances"
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
67 for (i in 15:(ncol(VoteC2)-7))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
68 {
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
69 colnames(VoteC2)[i]=paste0(names(VoteC2)[i],"_prop")
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
70 }
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
71
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
72 #rajouter les espèces manquantes
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
73 EspForm=subset(row.names(ClassifEspC2b$importance)
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
74 ,substr(row.names(ClassifEspC2b$importance)
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
75 ,nchar(row.names(ClassifEspC2b$importance))-4
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
76 ,nchar(row.names(ClassifEspC2b$importance)))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
77 =="_prop")
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
78 test=match(EspForm,colnames(VoteC2))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
79 EspM=subset(EspForm,is.na(test))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
80 Zeros=matrix(nrow=nrow(VoteC2),ncol=length(EspM))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
81 Zeros[is.na(Zeros)]=0
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
82 colnames(Zeros)=EspM
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
83 VoteC2=cbind(VoteC2,Zeros)
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
84
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
85 ListDV=levels(as.factor(DataPar$'nom du fichier'))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
86 #calcule les probabilités max par espèce et par fichier
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
87 #(utile pour corriger les erreurs dues à la coexistence de taxons dans le même fichier
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
88 #ex: cris sociaux de Pipistrelles identifiées comme autre chose (Noctule, oreillard...))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
89 MaxI=tapply(DataPar$tadarida_probabilite
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
90 ,INDEX=list(c(DataPar$'nom du fichier'),c(DataPar$tadarida_taxon))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
91 ,FUN=max)
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
92 MaxI2=as.data.frame(cbind(row.names(MaxI),MaxI))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
93 for (i in 2:ncol(MaxI2))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
94 {
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
95 MaxI2[,i]=as.numeric(as.character(MaxI2[,i]))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
96 }
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
97 MaxI2[is.na(MaxI2)]=0
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
98
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
99 #édition des titres de colonne pour identifier les variables de type "indices max"
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
100 for (i in 2:(ncol(MaxI2)))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
101 {
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
102 colnames(MaxI2)[i]=paste0(names(MaxI2)[i],"_maxI")
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
103 }
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
104
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
105
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
106 #rajouter les espèces manquantes
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
107 EspForm=subset(row.names(ClassifEspC2b$importance)
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
108 ,substr(row.names(ClassifEspC2b$importance)
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
109 ,nchar(row.names(ClassifEspC2b$importance))-4
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
110 ,nchar(row.names(ClassifEspC2b$importance)))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
111 =="_maxI")
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
112 test=match(EspForm,colnames(MaxI2))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
113 EspM=subset(EspForm,is.na(test))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
114 Zeros=matrix(nrow=nrow(MaxI2),ncol=length(EspM))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
115 Zeros[is.na(Zeros)]=0
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
116 colnames(Zeros)=EspM
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
117 MaxI2=cbind(MaxI2,Zeros)
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
118
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
119
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
120
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
121
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
122 #indice de confiance à l'echelle de l'observation (groupe de cris identifié comme provenant d'une seule espèce par la première couche)
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
123 if(exists("IdS3")){rm(IdS3)}
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
124 for (i in 1:nlevels(as.factor(DataPar$tadarida_taxon)))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
125 {
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
126 Idsub=subset(DataPar,DataPar$tadarida_taxon==levels(as.factor(DataPar$tadarida_taxon))[i])
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
127 IdS2=cbind('nom du fichier'=Idsub$'nom du fichier',tadarida_taxon=Idsub$tadarida_taxon,prob=Idsub$tadarida_probabilite)
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
128 colnames(IdS2)[3]=paste(levels(as.factor(DataPar$tadarida_taxon))[i])
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
129 if(exists("IdS3")){IdS3=merge(IdS3,IdS2,all=T)}else{IdS3=IdS2}
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
130 #print(i)
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
131 }
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
132
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
133 for (i in 3:ncol(IdS3))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
134 {
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
135 IdS3[,i]=as.numeric(as.character(IdS3[,i]))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
136 }
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
137
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
138 #édition des titres de colonne pour identifier les variables de type "indices de l'observation"
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
139 for (i in 3:(ncol(IdS3)))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
140 {
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
141 colnames(IdS3)[i]=paste0(names(IdS3)[i],"_ValI")
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
142 }
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
143
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
144 IdS3[is.na(IdS3)]=0
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
145
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
146 #rajouter les espèces manquantes
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
147 EspForm=subset(row.names(ClassifEspC2b$importance)
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
148 ,substr(row.names(ClassifEspC2b$importance)
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
149 ,nchar(row.names(ClassifEspC2b$importance))-4
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
150 ,nchar(row.names(ClassifEspC2b$importance)))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
151 =="_ValI")
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
152 test=match(EspForm,colnames(IdS3))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
153 EspM=subset(EspForm,is.na(test))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
154 Zeros=matrix(nrow=nrow(IdS3),ncol=length(EspM))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
155 Zeros[is.na(Zeros)]=0
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
156 colnames(Zeros)=EspM
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
157 IdS3=cbind(IdS3,Zeros)
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
158
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
159 #on merge les prop d'espèces, les quantiles et les indices par fichiers et par observations
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
160 VoteC3=merge(VoteC2,MaxI2,by.x="nom du fichier",by.y="V1")
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
161 VoteC4=merge(VoteC3,IdS3,by=c("nom du fichier","tadarida_taxon"))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
162 VoteC4$temps_fin=as.numeric(as.character(VoteC4$temps_fin))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
163 VoteC4$temps_debut=as.numeric(as.character(VoteC4$temps_debut))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
164 VoteC4$frequence=as.numeric(as.character(VoteC4$frequence_mediane))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
165 VoteC4$durseq=VoteC4$temps_fin-VoteC4$temps_debut
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
166
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
167 ProbEsp_C2b=predict(ClassifEspC2b,VoteC4,type="prob",norm.votes=TRUE)
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
168 ProbEsp_C2bs=predict(ClassifEspC2b,VoteC4,type="response",norm.votes=TRUE)
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
169
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
170 colnum=match("participation",colnames(VoteC4))
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
171 DataCorrC2=cbind(VoteC4[,1:colnum],ProbEsp_C2b,ProbEsp_C2bs)
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
172 DataCorrC2=DataCorrC2[order(DataCorrC2$tadarida_probabilite,decreasing=T),]
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
173 DataCorrC2=DataCorrC2[order(DataCorrC2$'nom du fichier'),]
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
174
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
175 DataCorrC2$ProbEsp_C2bs=as.character(DataCorrC2$ProbEsp_C2bs)
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
176 DataCorrC2$ProbEsp_C2bs[is.na(DataCorrC2$ProbEsp_C2bs)]="empty"
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
177
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
178 fout_name="output.tabular"
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
179
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
180 write.table(DataCorrC2,file=fout_name,row.names=FALSE,sep="\t")
0e3db3a308c0 Uploaded
mnhn65mo
parents:
diff changeset
181 #write.table(DataCorrC2,paste0(substr(args[1],nchar(args[1])-40,nchar(args[1])-17),"-DataCorrC2.csv"),row.names=F,sep="\t")