protk 1.2.6.pre2 → 1.2.6.pre3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +3 -9
- data/bin/interprophet.rb +7 -1
- data/bin/msgfplus_search.rb +1 -1
- data/bin/peptide_prophet.rb +8 -0
- data/bin/sixframe.rb +20 -2
- data/lib/protk/constants.rb +1 -5
- data/lib/protk/galaxy_util.rb +15 -4
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d2c799502e7cdd09fc7067d8b2bdfbeba270805e
|
4
|
+
data.tar.gz: 39ba2f20593785f7a9720be1d48fa1e37f694b22
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 897eebcb8fd0e49b7373aa466bfbd7fe20a7b5fd7f0fbc08a6e015bdc808158416ac225d5f2703acbeb4f4421c79b1393460b1d69ebe55f010fd24a4854a9b0d
|
7
|
+
data.tar.gz: f61d8418f78b958d2b586c2a2f975fc6caf6b0ef4bb9838a5a9c7f5f7b90f22e96b6210cef3b27c91f038aa0764089481318cfe7f71793726c77e80f379b3705
|
data/README.md
CHANGED
@@ -1,3 +1,6 @@
|
|
1
|
+
|
2
|
+
[![Build Status](https://travis-ci.org/iracooke/protk.png?branch=master)](https://travis-ci.org/iracooke/protk)
|
3
|
+
|
1
4
|
# protk ( Proteomics toolkit )
|
2
5
|
|
3
6
|
|
@@ -6,15 +9,6 @@
|
|
6
9
|
|
7
10
|
Protk is a wrapper for various proteomics tools. It aims to present a consistent interface to a wide variety of tools and provides support for managing protein databases.
|
8
11
|
|
9
|
-
***
|
10
|
-
|
11
|
-
## Table of Contents
|
12
|
-
|
13
|
-
* [Protk](#what-is-it?)
|
14
|
-
* [Installation](#installation)
|
15
|
-
* [Configuration](#configuration)
|
16
|
-
|
17
|
-
|
18
12
|
|
19
13
|
## Installation
|
20
14
|
|
data/bin/interprophet.rb
CHANGED
@@ -10,6 +10,8 @@
|
|
10
10
|
require 'protk/constants'
|
11
11
|
require 'protk/command_runner'
|
12
12
|
require 'protk/prophet_tool'
|
13
|
+
require 'protk/galaxy_util'
|
14
|
+
|
13
15
|
|
14
16
|
# Setup specific command-line options for this tool. Other options are inherited from ProphetTool
|
15
17
|
#
|
@@ -70,7 +72,11 @@ if ( !Pathname.new(output_file).exist? || prophet_tool.over_write )
|
|
70
72
|
cmd << " MINPROB=#{prophet_tool.min_prob}" if ( prophet_tool.min_prob !="" )
|
71
73
|
|
72
74
|
inputs = ARGV.collect {|file_name|
|
73
|
-
file_name.chomp
|
75
|
+
input_name=file_name.chomp
|
76
|
+
unless input_name !~/pep\.xml$/
|
77
|
+
input_name = GalaxyStager.new(input_name, :extension => ".pep.xml").staged_path
|
78
|
+
end
|
79
|
+
input_name
|
74
80
|
}
|
75
81
|
|
76
82
|
cmd << " #{inputs.join(" ")} #{output_file}"
|
data/bin/msgfplus_search.rb
CHANGED
@@ -238,7 +238,7 @@ ARGV.each do |filename|
|
|
238
238
|
#if search_tool.explicit_output
|
239
239
|
cmd << ";ruby -pi.bak -e \"gsub('post=\\\"?','post=\\\"X')\" #{mzid_output_path}"
|
240
240
|
cmd << ";ruby -pi.bak -e \"gsub('pre=\\\"?','pre=\\\"X')\" #{mzid_output_path}"
|
241
|
-
cmd << ";
|
241
|
+
cmd << ";idconvert #{mzid_output_path} --pepXML -o #{Pathname.new(mzid_output_path).dirname}"
|
242
242
|
#Then copy the pepxml to the final output path
|
243
243
|
cmd << "; mv #{mzid_output_path.chomp('.mzid')}.pepXML #{output_path}"
|
244
244
|
end
|
data/bin/peptide_prophet.rb
CHANGED
@@ -10,6 +10,9 @@
|
|
10
10
|
require 'protk/constants'
|
11
11
|
require 'protk/command_runner'
|
12
12
|
require 'protk/prophet_tool'
|
13
|
+
require 'protk/galaxy_util'
|
14
|
+
|
15
|
+
galaxy_util = GalaxyUtil.new
|
13
16
|
|
14
17
|
# Setup specific command-line options for this tool. Other options are inherited from ProphetTool
|
15
18
|
#
|
@@ -116,6 +119,11 @@ throw "When --output and -F options are set only one file at a time can be run"
|
|
116
119
|
genv=Constants.new
|
117
120
|
|
118
121
|
|
122
|
+
inputs=ARGV.collect { |file_name| file_name.chomp}
|
123
|
+
if galaxy_util.for_galaxy?
|
124
|
+
inputs = inputs.collect {|ip| galaxy_util.stage_pepxml(ip) }
|
125
|
+
end
|
126
|
+
|
119
127
|
# Interrogate all the input files to obtain the database and search engine from them
|
120
128
|
#
|
121
129
|
genv.log("Determining search engine and database used to create input files ...",:info)
|
data/bin/sixframe.rb
CHANGED
@@ -31,6 +31,16 @@ end
|
|
31
31
|
tool=Tool.new([:explicit_output])
|
32
32
|
tool.option_parser.banner = "Create a sixframe translation of a genome.\n\nUsage: sixframe.rb [options] genome.fasta"
|
33
33
|
|
34
|
+
tool.options.print_coords=false
|
35
|
+
tool.option_parser.on( '--coords', 'Write genomic coordinates in the fasta header' ) do
|
36
|
+
tool.options.print_coords=true
|
37
|
+
end
|
38
|
+
|
39
|
+
tool.options.keep_header=true
|
40
|
+
tool.option_parser.on( '--strip-header', 'Dont write sequence definition' ) do
|
41
|
+
tool.options.keep_header=false
|
42
|
+
end
|
43
|
+
|
34
44
|
exit unless tool.check_options
|
35
45
|
|
36
46
|
if ( ARGV[0].nil? )
|
@@ -86,12 +96,20 @@ file.each do |entry|
|
|
86
96
|
ncbi_scaffold_id = entry.entry_id.gsub('|','_').gsub(' ','_')
|
87
97
|
ncbi_accession = "lcl|#{ncbi_scaffold_id}_frame_#{frame}_orf_#{oi}"
|
88
98
|
|
89
|
-
|
99
|
+
defline=">#{ncbi_accession}"
|
100
|
+
|
101
|
+
if tool.print_coords
|
102
|
+
defline << " #{position_start}|#{position_end}"
|
103
|
+
end
|
104
|
+
|
105
|
+
if tool.keep_header
|
106
|
+
defline << " #{entry.definition}"
|
107
|
+
end
|
90
108
|
|
91
109
|
# Output in fasta format
|
92
110
|
# start and end positions are always relative to the forward strand
|
93
111
|
|
94
|
-
outfile.write("
|
112
|
+
outfile.write("#{defline}\n#{orf}\n")
|
95
113
|
|
96
114
|
end
|
97
115
|
position += orf.length*3+3
|
data/lib/protk/constants.rb
CHANGED
@@ -145,10 +145,6 @@ class Constants
|
|
145
145
|
end
|
146
146
|
end
|
147
147
|
|
148
|
-
def idconvert
|
149
|
-
return "#{self.pwiz_root}/idconvert"
|
150
|
-
end
|
151
|
-
|
152
148
|
def msconvert
|
153
149
|
return "#{self.pwiz_root}/msconvert"
|
154
150
|
end
|
@@ -206,7 +202,7 @@ class Constants
|
|
206
202
|
end
|
207
203
|
|
208
204
|
def makeblastdb
|
209
|
-
return "
|
205
|
+
return "makeblastdb"
|
210
206
|
end
|
211
207
|
|
212
208
|
def searchblastdb
|
data/lib/protk/galaxy_util.rb
CHANGED
@@ -6,12 +6,20 @@ require 'fileutils'
|
|
6
6
|
|
7
7
|
class GalaxyUtil
|
8
8
|
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
9
|
+
attr_accessor :for_galaxy
|
10
|
+
attr_accessor :stagers
|
11
|
+
|
12
|
+
def initialize()
|
13
|
+
@for_galaxy= ARGV[0]=="--galaxy"
|
14
|
+
ARGV.shift if @for_galaxy
|
15
|
+
@stagers=[]
|
13
16
|
end
|
14
17
|
|
18
|
+
def stage_pepxml(input_pepxml_path)
|
19
|
+
stager = GalaxyStager.new(input_pepxml_path, :extension => ".pep.xml")
|
20
|
+
@stagers << stager
|
21
|
+
stager.staged_path
|
22
|
+
end
|
15
23
|
|
16
24
|
def self.stage_protxml(input_protxml_path)
|
17
25
|
# This method takes in the path to a protxml created in Galaxy,
|
@@ -43,4 +51,7 @@ class GalaxyUtil
|
|
43
51
|
protxml_path
|
44
52
|
end
|
45
53
|
|
54
|
+
|
55
|
+
|
56
|
+
|
46
57
|
end
|