gene_assembler 0.0.9
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +22 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +22 -0
- data/README.md +29 -0
- data/Rakefile +2 -0
- data/bin/GeneAssembler +233 -0
- data/bin/phytozome_scan +60 -0
- data/gene_assembler.gemspec +25 -0
- data/lib/gene_assembler.rb +5 -0
- data/lib/gene_assembler/blast_type_parser.rb +41 -0
- data/lib/gene_assembler/contig.rb +643 -0
- data/lib/gene_assembler/dataset.rb +532 -0
- data/lib/gene_assembler/exonerate_result.rb +230 -0
- data/lib/gene_assembler/gff_contig.rb +67 -0
- data/lib/gene_assembler/gff_dataset.rb +152 -0
- data/lib/gene_assembler/gff_feature.rb +175 -0
- data/lib/gene_assembler/gff_frameshift.rb +6 -0
- data/lib/gene_assembler/gff_go.rb +13 -0
- data/lib/gene_assembler/gff_hit.rb +53 -0
- data/lib/gene_assembler/gff_hsp.rb +6 -0
- data/lib/gene_assembler/gff_localization.rb +6 -0
- data/lib/gene_assembler/gff_master_feature.rb +5 -0
- data/lib/gene_assembler/gff_parser.rb +35 -0
- data/lib/gene_assembler/gff_snp.rb +21 -0
- data/lib/gene_assembler/gff_stop.rb +6 -0
- data/lib/gene_assembler/go.rb +13 -0
- data/lib/gene_assembler/hit.rb +191 -0
- data/lib/gene_assembler/hsp.rb +100 -0
- data/lib/gene_assembler/other_functions.rb +228 -0
- data/lib/gene_assembler/parser.rb +25 -0
- data/lib/gene_assembler/parser_blast.rb +12 -0
- data/lib/gene_assembler/parser_exonerate.rb +16 -0
- data/lib/gene_assembler/rebuild.rb +975 -0
- data/lib/gene_assembler/report.rb +13 -0
- data/lib/gene_assembler/report_gff.rb +30 -0
- data/lib/gene_assembler/snp.rb +13 -0
- data/lib/gene_assembler/version.rb +3 -0
- metadata +149 -0
@@ -0,0 +1,13 @@
|
|
1
|
+
class Report
|
2
|
+
def initialize(dataset,path,name_mode)
|
3
|
+
@dataset=dataset #Almacena los datos de los que se va a hacer un report, se transforman al formato deseado y se guardan en @content_file
|
4
|
+
@path=path #Contiene la direccion donde se ha de poner el archivo report
|
5
|
+
@content_file=[] #Almacena los datos que se imprimiran en el archivo de salida
|
6
|
+
@name_mode=name_mode #Especifica como se quiere mostrar los nombres, si solo el identificador externo o identificador+ tipo de objeto
|
7
|
+
end
|
8
|
+
|
9
|
+
#Escribe el archivo de report
|
10
|
+
def create #Cada clase hija se le especifica opciones de escritura aqui
|
11
|
+
#Operaciones de Conversion y escritura para cada tipo de formato report
|
12
|
+
end
|
13
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
require 'report'
|
2
|
+
require 'gff_contig'
|
3
|
+
|
4
|
+
class ReportGff < Report
|
5
|
+
def create(output_file_mode,parent=nil) #output_file_mode se pone a 'w' si los contig presentes en el dataset son independientes entre si, x lo q no se especifica el parent. En caso de que tengamos contigs dependientes, se ha de escribir primero el contig principal especificando el modo 'a'. Luego se escriben los contigs dependientes especificando el modo 'a' y el nombre del parent (que sera el contig principal que se ha escrito antes)
|
6
|
+
|
7
|
+
#Escribir cabecero del gff3
|
8
|
+
if parent.nil? && !File.exists?(@path) || !File.exists?(@path)
|
9
|
+
@content_file << '##gff-version 3'
|
10
|
+
end
|
11
|
+
|
12
|
+
#Conversion de datos de dataset a content_file
|
13
|
+
gff_contig=GffContig.new
|
14
|
+
@dataset.each_contig{|contig|
|
15
|
+
if contig.has_hit?
|
16
|
+
@content_file << gff_contig.report(contig,contig.name,parent,@name_mode)
|
17
|
+
end
|
18
|
+
}
|
19
|
+
@content_file.flatten!
|
20
|
+
|
21
|
+
#Write content_file
|
22
|
+
gff=File.open(@path,output_file_mode)
|
23
|
+
@content_file.each do |line|
|
24
|
+
gff.puts line
|
25
|
+
end
|
26
|
+
gff.close
|
27
|
+
|
28
|
+
end
|
29
|
+
|
30
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
class SNP
|
2
|
+
attr_accessor :position, :ref, :var, :source, :depth, :zygosity, :mapping_qual, :strand_bias
|
3
|
+
def initialize(position)
|
4
|
+
@position=position
|
5
|
+
@ref=nil
|
6
|
+
@var=nil
|
7
|
+
@source=nil
|
8
|
+
@depth=nil
|
9
|
+
@zygosity=nil
|
10
|
+
@mapping_qual=nil
|
11
|
+
@strand_bias=nil
|
12
|
+
end
|
13
|
+
end
|
metadata
ADDED
@@ -0,0 +1,149 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: gene_assembler
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.9
|
5
|
+
prerelease:
|
6
|
+
platform: ruby
|
7
|
+
authors:
|
8
|
+
- Pedro Seoane
|
9
|
+
autorequire:
|
10
|
+
bindir: bin
|
11
|
+
cert_chain: []
|
12
|
+
date: 2015-04-08 00:00:00.000000000 Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
15
|
+
name: scbi_blast
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
18
|
+
requirements:
|
19
|
+
- - ! '>='
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: 0.0.43
|
22
|
+
type: :runtime
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
26
|
+
requirements:
|
27
|
+
- - ! '>='
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: 0.0.43
|
30
|
+
- !ruby/object:Gem::Dependency
|
31
|
+
name: scbi_fasta
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
33
|
+
none: false
|
34
|
+
requirements:
|
35
|
+
- - ! '>='
|
36
|
+
- !ruby/object:Gem::Version
|
37
|
+
version: 0.1.9
|
38
|
+
type: :runtime
|
39
|
+
prerelease: false
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - ! '>='
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: 0.1.9
|
46
|
+
- !ruby/object:Gem::Dependency
|
47
|
+
name: bundler
|
48
|
+
requirement: !ruby/object:Gem::Requirement
|
49
|
+
none: false
|
50
|
+
requirements:
|
51
|
+
- - ~>
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: '1.6'
|
54
|
+
type: :development
|
55
|
+
prerelease: false
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
58
|
+
requirements:
|
59
|
+
- - ~>
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '1.6'
|
62
|
+
- !ruby/object:Gem::Dependency
|
63
|
+
name: rake
|
64
|
+
requirement: !ruby/object:Gem::Requirement
|
65
|
+
none: false
|
66
|
+
requirements:
|
67
|
+
- - ! '>='
|
68
|
+
- !ruby/object:Gem::Version
|
69
|
+
version: '0'
|
70
|
+
type: :development
|
71
|
+
prerelease: false
|
72
|
+
version_requirements: !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
74
|
+
requirements:
|
75
|
+
- - ! '>='
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: '0'
|
78
|
+
description: Use this siftware with techniques like genecapture
|
79
|
+
email:
|
80
|
+
- seoanezonjic@hotmail.es
|
81
|
+
executables:
|
82
|
+
- GeneAssembler
|
83
|
+
- phytozome_scan
|
84
|
+
extensions: []
|
85
|
+
extra_rdoc_files: []
|
86
|
+
files:
|
87
|
+
- .gitignore
|
88
|
+
- Gemfile
|
89
|
+
- LICENSE.txt
|
90
|
+
- README.md
|
91
|
+
- Rakefile
|
92
|
+
- bin/GeneAssembler
|
93
|
+
- bin/phytozome_scan
|
94
|
+
- gene_assembler.gemspec
|
95
|
+
- lib/gene_assembler.rb
|
96
|
+
- lib/gene_assembler/blast_type_parser.rb
|
97
|
+
- lib/gene_assembler/contig.rb
|
98
|
+
- lib/gene_assembler/dataset.rb
|
99
|
+
- lib/gene_assembler/exonerate_result.rb
|
100
|
+
- lib/gene_assembler/gff_contig.rb
|
101
|
+
- lib/gene_assembler/gff_dataset.rb
|
102
|
+
- lib/gene_assembler/gff_feature.rb
|
103
|
+
- lib/gene_assembler/gff_frameshift.rb
|
104
|
+
- lib/gene_assembler/gff_go.rb
|
105
|
+
- lib/gene_assembler/gff_hit.rb
|
106
|
+
- lib/gene_assembler/gff_hsp.rb
|
107
|
+
- lib/gene_assembler/gff_localization.rb
|
108
|
+
- lib/gene_assembler/gff_master_feature.rb
|
109
|
+
- lib/gene_assembler/gff_parser.rb
|
110
|
+
- lib/gene_assembler/gff_snp.rb
|
111
|
+
- lib/gene_assembler/gff_stop.rb
|
112
|
+
- lib/gene_assembler/go.rb
|
113
|
+
- lib/gene_assembler/hit.rb
|
114
|
+
- lib/gene_assembler/hsp.rb
|
115
|
+
- lib/gene_assembler/other_functions.rb
|
116
|
+
- lib/gene_assembler/parser.rb
|
117
|
+
- lib/gene_assembler/parser_blast.rb
|
118
|
+
- lib/gene_assembler/parser_exonerate.rb
|
119
|
+
- lib/gene_assembler/rebuild.rb
|
120
|
+
- lib/gene_assembler/report.rb
|
121
|
+
- lib/gene_assembler/report_gff.rb
|
122
|
+
- lib/gene_assembler/snp.rb
|
123
|
+
- lib/gene_assembler/version.rb
|
124
|
+
homepage: ''
|
125
|
+
licenses:
|
126
|
+
- MIT
|
127
|
+
post_install_message:
|
128
|
+
rdoc_options: []
|
129
|
+
require_paths:
|
130
|
+
- lib
|
131
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
132
|
+
none: false
|
133
|
+
requirements:
|
134
|
+
- - ! '>='
|
135
|
+
- !ruby/object:Gem::Version
|
136
|
+
version: '0'
|
137
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
138
|
+
none: false
|
139
|
+
requirements:
|
140
|
+
- - ! '>='
|
141
|
+
- !ruby/object:Gem::Version
|
142
|
+
version: '0'
|
143
|
+
requirements: []
|
144
|
+
rubyforge_project:
|
145
|
+
rubygems_version: 1.8.23
|
146
|
+
signing_key:
|
147
|
+
specification_version: 3
|
148
|
+
summary: This gem builds gene models using fragmented genome information.
|
149
|
+
test_files: []
|