Mercurial > repos > fabio > iwtomics
comparison loadandplot.R @ 74:2bb6b44093ba draft
Uploaded 20170619
author | fabio |
---|---|
date | Mon, 19 Jun 2017 12:08:59 -0400 |
parents | fcc0eb90fb07 |
children |
comparison
equal
deleted
inserted
replaced
73:156b29da2f0b | 74:2bb6b44093ba |
---|---|
17 # as second column the corresponding ids and as third column the names | 17 # as second column the corresponding ids and as third column the names |
18 tryCatch({ | 18 tryCatch({ |
19 regionsheader=read.delim(args_values$regionsheaderfile,header=FALSE,stringsAsFactors=FALSE,row.names=1,sep="\t") | 19 regionsheader=read.delim(args_values$regionsheaderfile,header=FALSE,stringsAsFactors=FALSE,row.names=1,sep="\t") |
20 regionsfilenames=unlist(strsplit(args_values$regionsfilenames,'\\|')) | 20 regionsfilenames=unlist(strsplit(args_values$regionsfilenames,'\\|')) |
21 if(length(setdiff(regionsfilenames,row.names(regionsheader)))) { | 21 if(length(setdiff(regionsfilenames,row.names(regionsheader)))) { |
22 write("IWTomics message: Not all region files are present in the first column of header file for regions.", stderr()) | |
22 quit(save="no", status=11) | 23 quit(save="no", status=11) |
23 stop('Not all regionsfilenames are present in the first column of regionsheader.') | |
24 } | 24 } |
25 id_regions=regionsheader[regionsfilenames,1] | 25 id_regions=regionsheader[regionsfilenames,1] |
26 name_regions=regionsheader[regionsfilenames,2] | 26 name_regions=regionsheader[regionsfilenames,2] |
27 }, error = function(err) { | 27 }, error = function(err) { |
28 write("IWTomics message: An error has occurred reading the header file for regions. Please try again.", stderr()) | |
28 quit(save="no", status=10) #error on header file | 29 quit(save="no", status=10) #error on header file |
29 stop(err) | |
30 }) | 30 }) |
31 }else{ | 31 }else{ |
32 eval(parse(text=args[[which(args_names=='regionsgalaxyids')]])) | 32 eval(parse(text=args[[which(args_names=='regionsgalaxyids')]])) |
33 id_regions=paste0('data_',regionsgalaxyids) | 33 id_regions=paste0('data_',regionsgalaxyids) |
34 name_regions=paste0('data_',regionsgalaxyids) | 34 name_regions=paste0('data_',regionsgalaxyids) |
39 # as second column the corresponding ids and as third column the names | 39 # as second column the corresponding ids and as third column the names |
40 tryCatch({ | 40 tryCatch({ |
41 featuresheader=read.delim(args_values$featuresheaderfile,header=FALSE,stringsAsFactors=FALSE,row.names=1,sep="\t") | 41 featuresheader=read.delim(args_values$featuresheaderfile,header=FALSE,stringsAsFactors=FALSE,row.names=1,sep="\t") |
42 featuresfilenames=unlist(strsplit(args_values$featuresfilenames,'\\|')) | 42 featuresfilenames=unlist(strsplit(args_values$featuresfilenames,'\\|')) |
43 if(length(setdiff(featuresfilenames,row.names(featuresheader)))) { | 43 if(length(setdiff(featuresfilenames,row.names(featuresheader)))) { |
44 write("IWTomics message: Not all feature files are present in the first column of header file for features.", stderr()) | |
44 quit(save="no", status=21) | 45 quit(save="no", status=21) |
45 stop('Not all featuresfilenames are present in the first column of featuresheader.') | |
46 } | 46 } |
47 id_features=featuresheader[featuresfilenames,1] | 47 id_features=featuresheader[featuresfilenames,1] |
48 name_features=featuresheader[featuresfilenames,2] | 48 name_features=featuresheader[featuresfilenames,2] |
49 }, error = function(err) { | 49 }, error = function(err) { |
50 write("IWTomics message: An error has occurred reading the header file for features. Please try again.", stderr()) | |
50 quit(save="no", status=20) #error on header file | 51 quit(save="no", status=20) #error on header file |
51 stop(err) | |
52 }) | 52 }) |
53 }else{ | 53 }else{ |
54 eval(parse(text=args[[which(args_names=='featuresgalaxyids')]])) | 54 eval(parse(text=args[[which(args_names=='featuresgalaxyids')]])) |
55 id_features=paste0('data_',featuresgalaxyids) | 55 id_features=paste0('data_',featuresgalaxyids) |
56 name_features=paste0('data_',featuresgalaxyids) | 56 name_features=paste0('data_',featuresgalaxyids) |
65 tryCatch({ | 65 tryCatch({ |
66 regionsFeatures=IWTomicsData(regionspaths,featurespaths,alignment, | 66 regionsFeatures=IWTomicsData(regionspaths,featurespaths,alignment, |
67 id_regions,name_regions,id_features,name_features,start.are.0based=start.are.0based) | 67 id_regions,name_regions,id_features,name_features,start.are.0based=start.are.0based) |
68 }, error = function(err) { | 68 }, error = function(err) { |
69 if(grepl('invalid format',err$message)){ | 69 if(grepl('invalid format',err$message)){ |
70 write("IWTomics message: Not enough columns in input file.", stderr()) | |
70 quit(save="no", status=31) # error, not enough columns in input file | 71 quit(save="no", status=31) # error, not enough columns in input file |
71 }else if(grepl('duplicated regions',err$message)){ | 72 }else if(grepl('duplicated regions',err$message)){ |
73 write("IWTomics message: Duplicated regions in region file.", stderr()) | |
72 quit(save="no", status=32) # error, duplicated regions in region file | 74 quit(save="no", status=32) # error, duplicated regions in region file |
73 }else if(grepl('duplicated windows',err$message)){ | 75 }else if(grepl('duplicated windows',err$message)){ |
76 write("IWTomics message: Duplicated windows in feature file.", stderr()) | |
74 quit(save="no", status=33) # error, duplicated windows in feature file | 77 quit(save="no", status=33) # error, duplicated windows in feature file |
75 }else if(grepl('overlapping windows',err$message)){ | 78 }else if(grepl('overlapping windows',err$message)){ |
79 write("IWTomics message: Overlapping windows in feature file.", stderr()) | |
76 quit(save="no", status=34) # error, overlapping windows in feature file | 80 quit(save="no", status=34) # error, overlapping windows in feature file |
77 }else if(grepl('not all regions in datasets',err$message)){ | 81 }else if(grepl('not all regions in datasets',err$message)){ |
82 write("IWTomics message: Windows in feature files do not cover all regions in region files.", stderr()) | |
78 quit(save="no", status=35) # error, windows in feature files do not cover all regions in region files | 83 quit(save="no", status=35) # error, windows in feature files do not cover all regions in region files |
79 }else if(grepl('ifferent size windows',err$message)){ | 84 }else if(grepl('ifferent size windows',err$message)){ |
85 write("IWTomics message: All windows in a feature file must have the same size.", stderr()) | |
80 quit(save="no", status=36) # error, all windows in a feature files must have the same size | 86 quit(save="no", status=36) # error, all windows in a feature files must have the same size |
81 } | 87 } |
82 #error loading data | 88 #error loading data |
83 | 89 write("IWTomics message: An error has occurred reading the data. Please try again.", stderr()) |
84 stop(err) | 90 quit(save="no", status=30) |
85 | |
86 quit(save="no", status=30) | |
87 | |
88 }) | 91 }) |
89 | 92 |
90 # smooth data | 93 # smooth data |
91 if(smoothing!='no'){ | 94 if(smoothing!='no'){ |
92 tryCatch({ | 95 tryCatch({ |
109 }else{ | 112 }else{ |
110 regionsFeatures=smooth(regionsFeatures,type=smoothing,fill_gaps=fill_gaps, | 113 regionsFeatures=smooth(regionsFeatures,type=smoothing,fill_gaps=fill_gaps, |
111 bandwidth=bandwidth,degree=degree,dist_knots=dist_knots) | 114 bandwidth=bandwidth,degree=degree,dist_knots=dist_knots) |
112 } | 115 } |
113 }, error = function(err) { | 116 }, error = function(err) { |
117 write("IWTomics message: An error has occurred smoothing the data. Please try again.", stderr()) | |
114 quit(save="no", status=40) #error on smoothing | 118 quit(save="no", status=40) #error on smoothing |
115 stop(err) | |
116 }) | 119 }) |
117 } | 120 } |
118 | 121 |
119 # plot data | 122 # plot data |
120 pdf(outpdf,width=10,height=8) | 123 pdf(outpdf,width=10,height=8) |
134 #write.table(cbind(unlist(strsplit(args_values$featuresfilenames,'\\|')),idFeatures(regionsFeatures),nameFeatures(regionsFeatures)), | 137 #write.table(cbind(unlist(strsplit(args_values$featuresfilenames,'\\|')),idFeatures(regionsFeatures),nameFeatures(regionsFeatures)), |
135 #file=outfeatures,quote=FALSE,sep='\t',row.names=FALSE,col.names=FALSE) | 138 #file=outfeatures,quote=FALSE,sep='\t',row.names=FALSE,col.names=FALSE) |
136 write.table(as.data.frame(t(idFeatures(regionsFeatures))),file=outfeatures,quote=FALSE,sep='\t',row.names=FALSE,col.names=FALSE) | 139 write.table(as.data.frame(t(idFeatures(regionsFeatures))),file=outfeatures,quote=FALSE,sep='\t',row.names=FALSE,col.names=FALSE) |
137 save(regionsFeatures,file=outrdata) | 140 save(regionsFeatures,file=outrdata) |
138 }else{ | 141 }else{ |
142 write("IWTomics message: Missing IWTomics package. Please be sure to have it installed before using this tool.", stderr()) | |
139 quit(save="no", status=255) | 143 quit(save="no", status=255) |
140 stop("Missing IWTomics package") | |
141 } | 144 } |