macroape 3.3.6 → 3.3.7
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +18 -18
- data/Gemfile +4 -4
- data/LICENSE +21 -21
- data/README.md +69 -67
- data/TODO.txt +1 -1
- data/benchmark/benchmark_helper.rb +5 -0
- data/benchmark/similarity_benchmark.rb +1 -4
- data/bin/align_motifs +1 -1
- data/bin/eval_alignment +1 -1
- data/bin/eval_similarity +1 -1
- data/bin/find_pvalue +1 -1
- data/bin/find_threshold +1 -1
- data/bin/preprocess_collection +1 -1
- data/bin/scan_collection +1 -1
- data/lib/macroape/aligned_pair_intersection.rb +1 -1
- data/lib/macroape/cli/align_motifs.rb +4 -4
- data/lib/macroape/cli/eval_alignment.rb +9 -6
- data/lib/macroape/cli/eval_similarity.rb +9 -6
- data/lib/macroape/cli/find_pvalue.rb +3 -3
- data/lib/macroape/cli/find_threshold.rb +3 -3
- data/lib/macroape/cli/preprocess_collection.rb +37 -13
- data/lib/macroape/cli/scan_collection.rb +28 -21
- data/lib/macroape/counting.rb +7 -13
- data/lib/macroape/pwm_compare.rb +8 -15
- data/lib/macroape/pwm_compare_aligned.rb +11 -38
- data/lib/macroape/version.rb +1 -1
- data/lib/macroape.rb +6 -7
- data/macroape.gemspec +1 -1
- data/spec/count_distribution_spec.rb +2 -3
- data/spec/spec_helper.rb +2 -2
- data/test/align_motifs_test.rb +1 -1
- data/test/data/KLF4_f2_scan_results_all.txt +4 -4
- data/test/data/KLF4_f2_scan_results_precise_mode.txt +4 -4
- data/test/data/collection_pcm_without_thresholds.yaml +185 -0
- data/test/data/collection_without_thresholds.yaml +185 -0
- data/test/data/medium_motif.pat +8 -0
- data/test/data/short_motif.pat +7 -0
- data/test/data/test_collection.yaml +27 -18
- data/test/eval_alignment_test.rb +1 -1
- data/test/eval_similarity_test.rb +1 -1
- data/test/find_pvalue_test.rb +1 -1
- data/test/find_threshold_test.rb +1 -1
- data/test/preprocess_collection_test.rb +59 -37
- data/test/scan_collection_test.rb +10 -1
- data/test/test_helper.rb +13 -9
- metadata +15 -6
@@ -1,4 +1,4 @@
|
|
1
|
-
|
1
|
+
require_relative '../../macroape'
|
2
2
|
require 'yaml'
|
3
3
|
|
4
4
|
module Macroape
|
@@ -31,7 +31,7 @@ module Macroape
|
|
31
31
|
cat motifs/KLF4.pat | ruby scan_collection.rb .stdin collection.yaml -p 0.005 --precise 0.03
|
32
32
|
}
|
33
33
|
|
34
|
-
if
|
34
|
+
if ['-h', '--h', '-help', '--help'].any?{|help_option| argv.include?(help_option)}
|
35
35
|
STDERR.puts help_string
|
36
36
|
exit
|
37
37
|
end
|
@@ -90,34 +90,41 @@ module Macroape
|
|
90
90
|
end
|
91
91
|
|
92
92
|
query_pwm = data_model.new(query_input).to_pwm
|
93
|
-
query_pwm.background
|
93
|
+
query_pwm.set_parameters(background: background_query, max_hash_size: max_hash_size)
|
94
94
|
|
95
95
|
query_pwm_rough = query_pwm.discrete(collection.parameters.rough_discretization)
|
96
96
|
query_pwm_precise = query_pwm.discrete(collection.parameters.precise_discretization)
|
97
97
|
|
98
|
-
query_threshold_rough = query_pwm_rough.
|
99
|
-
query_threshold_precise = query_pwm_precise.
|
98
|
+
query_threshold_rough, query_rough_real_pvalue = query_pwm_rough.threshold_and_real_pvalue(pvalue)
|
99
|
+
query_threshold_precise, query_precise_real_pvalue = query_pwm_precise.threshold_and_real_pvalue(pvalue)
|
100
|
+
|
101
|
+
if query_precise_real_pvalue == 0
|
102
|
+
$stderr.puts "Query motif #{query_pwm.name} gives 0 recognized words for a given P-value of #{pvalue} with the precise discretization level of #{collection.parameters.precise_discretization}. It's impossible to scan collection for this motif"
|
103
|
+
return
|
104
|
+
end
|
105
|
+
|
106
|
+
if query_rough_real_pvalue == 0
|
107
|
+
query_pwm_rough, query_threshold_rough = query_pwm_precise, query_threshold_precise
|
108
|
+
$stderr.puts "Query motif #{query_pwm.name} gives 0 recognized words for a given P-value of #{pvalue} with the rough discretization level of #{collection.parameters.rough_discretization}. Forcing precise discretization level of #{collection.parameters.precise_discretization}"
|
109
|
+
end
|
100
110
|
|
101
111
|
similarities = {}
|
102
112
|
precision_file_mode = {}
|
103
113
|
|
104
|
-
collection.each do |
|
105
|
-
name =
|
106
|
-
pwm.background(collection.parameters.background).max_hash_size(max_hash_size)
|
107
|
-
pwm_rough = pwm.discrete(collection.parameters.rough_discretization)
|
108
|
-
pwm_precise = pwm.discrete(collection.parameters.precise_discretization)
|
109
|
-
|
110
|
-
pwm_threshold_rough = pwm_info.rough[pvalue] * collection.parameters.rough_discretization
|
111
|
-
pwm_threshold_precise = pwm_info.precise[pvalue] * collection.parameters.precise_discretization
|
112
|
-
|
114
|
+
collection.each do |collection_pwm, pwm_info|
|
115
|
+
name = collection_pwm.name
|
113
116
|
STDERR.puts name unless silent
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
117
|
+
collection_pwm.set_parameters(background: collection.parameters.background, max_hash_size: max_hash_size)
|
118
|
+
if pwm_info.rough
|
119
|
+
collection_pwm_rough = collection_pwm.discrete(collection.parameters.rough_discretization)
|
120
|
+
collection_threshold_rough = pwm_info.rough[pvalue] * collection.parameters.rough_discretization
|
121
|
+
info = Macroape::PWMCompare.new(query_pwm_rough, collection_pwm_rough).set_parameters(max_pair_hash_size: max_pair_hash_size).jaccard(query_threshold_rough, collection_threshold_rough)
|
122
|
+
precision_file_mode[name] = :rough
|
123
|
+
end
|
124
|
+
if !pwm_info.rough || (precision_mode == :precise) && (info[:similarity] >= minimal_similarity)
|
125
|
+
collection_pwm_precise = collection_pwm.discrete(collection.parameters.precise_discretization)
|
126
|
+
collection_threshold_precise = pwm_info.precise[pvalue] * collection.parameters.precise_discretization
|
127
|
+
info = Macroape::PWMCompare.new(query_pwm_precise, collection_pwm_precise).set_parameters(max_pair_hash_size: max_pair_hash_size).jaccard(query_threshold_precise, collection_threshold_precise)
|
121
128
|
precision_file_mode[name] = :precise
|
122
129
|
end
|
123
130
|
similarities[name] = info
|
data/lib/macroape/counting.rb
CHANGED
@@ -1,22 +1,16 @@
|
|
1
|
+
require 'bioinform'
|
2
|
+
|
1
3
|
module Bioinform
|
2
4
|
class PWM
|
3
5
|
# sets or gets limit size of calculation hash. It's a defence against overuse CPU resources by non-appropriate data
|
4
|
-
|
5
|
-
@max_hash_size = new_max_hash_size
|
6
|
-
self
|
7
|
-
end
|
8
|
-
|
9
|
-
def max_hash_size(*args)
|
10
|
-
case args.size
|
11
|
-
when 0 then @max_hash_size
|
12
|
-
when 1 then max_hash_size!(args.first)
|
13
|
-
else raise ArgumentError, '#max_hash_size method can get 0 or 1 argument'
|
14
|
-
end
|
15
|
-
end
|
6
|
+
make_parameters :max_hash_size
|
16
7
|
|
17
8
|
def threshold(pvalue)
|
18
9
|
thresholds(pvalue){|_, thresh, _| return thresh }
|
19
10
|
end
|
11
|
+
def threshold_and_real_pvalue(pvalue)
|
12
|
+
thresholds(pvalue){|_, thresh, real_pv| return thresh, real_pv }
|
13
|
+
end
|
20
14
|
|
21
15
|
def thresholds(*pvalues)
|
22
16
|
thresholds_by_pvalues(*pvalues).each do |pvalue,(thresholds, counts)|
|
@@ -80,7 +74,7 @@ module Bioinform
|
|
80
74
|
4.times do |letter|
|
81
75
|
new_score = score + column[letter]
|
82
76
|
if new_score >= least_sufficient
|
83
|
-
new_scores[new_score] += count *
|
77
|
+
new_scores[new_score] += count * background[letter]
|
84
78
|
end
|
85
79
|
end
|
86
80
|
end
|
data/lib/macroape/pwm_compare.rb
CHANGED
@@ -1,21 +1,14 @@
|
|
1
|
+
require 'bioinform/support/parameters'
|
2
|
+
|
1
3
|
module Macroape
|
2
4
|
class PWMCompare
|
5
|
+
include Parameters
|
3
6
|
# sets or gets limit of summary size of calculation hash. It's a defence against overuse CPU resources by non-appropriate data
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
end
|
8
|
-
|
9
|
-
def max_hash_size(*args)
|
10
|
-
case args.size
|
11
|
-
when 0 then @max_hash_size
|
12
|
-
when 1 then max_hash_size!(args.first)
|
13
|
-
else raise ArgumentError, '#max_hash_size method can get 0 or 1 argument'
|
14
|
-
end
|
15
|
-
end
|
16
|
-
|
17
|
-
attr_reader :first, :second
|
7
|
+
make_parameters :max_pair_hash_size
|
8
|
+
|
9
|
+
attr_reader :first, :second, :parameters
|
18
10
|
def initialize(first, second)
|
11
|
+
@parameters = OpenStruct.new
|
19
12
|
@first = first
|
20
13
|
@second = second
|
21
14
|
end
|
@@ -34,7 +27,7 @@ module Macroape
|
|
34
27
|
|
35
28
|
def each_alignment
|
36
29
|
(-second.length..first.length).to_a.product([:direct,:revcomp]) do |shift, orientation|
|
37
|
-
yield PWMCompareAligned.new(first, second, shift, orientation).
|
30
|
+
yield PWMCompareAligned.new(first, second, shift, orientation).set_parameters(max_pair_hash_size: max_pair_hash_size)
|
38
31
|
end
|
39
32
|
end
|
40
33
|
|
@@ -1,9 +1,16 @@
|
|
1
|
-
require '
|
1
|
+
require 'bioinform/support/parameters'
|
2
|
+
require_relative './aligned_pair_intersection'
|
2
3
|
|
3
4
|
module Macroape
|
4
5
|
class PWMCompareAligned
|
5
|
-
|
6
|
+
include Parameters
|
7
|
+
# sets or gets limit of summary size of calculation hash. It's a defence against overuse CPU resources by non-appropriate data
|
8
|
+
make_parameters :max_pair_hash_size
|
9
|
+
|
10
|
+
attr_reader :first, :second, :length, :shift, :orientation, :first_length, :second_length, :parameters
|
11
|
+
|
6
12
|
def initialize(first_unaligned, second_unaligned, shift, orientation)
|
13
|
+
@parameters = OpenStruct.new
|
7
14
|
@shift, @orientation = shift, orientation
|
8
15
|
|
9
16
|
@first_length, @second_length = first_unaligned.length, second_unaligned.length
|
@@ -21,6 +28,8 @@ module Macroape
|
|
21
28
|
@first = first.right_augment(@length - first.length)
|
22
29
|
@second = second.right_augment(@length - second.length)
|
23
30
|
end
|
31
|
+
|
32
|
+
|
24
33
|
|
25
34
|
def direct?
|
26
35
|
orientation == :direct
|
@@ -80,26 +89,6 @@ module Macroape
|
|
80
89
|
end
|
81
90
|
end
|
82
91
|
|
83
|
-
=begin
|
84
|
-
def discrete(rate)
|
85
|
-
PWMCompareAligned.new(first.discrete(rate), second.discrete(rate))
|
86
|
-
end
|
87
|
-
|
88
|
-
def sort_pair_of_matrices_by(&block)
|
89
|
-
mat = first.pwm.zip(second.pwm).sort_by(&block).transpose
|
90
|
-
PWMCompareAligned.new(SinglePWM(mat[0],first.probabilities), SinglePWM(mat[1], second.probabilities))
|
91
|
-
end
|
92
|
-
def sort_decreasing_max
|
93
|
-
PWMCompareAligned.new(*sort_pair_of_matrices_by{|col_pair| -col_pair[0].max} )
|
94
|
-
end
|
95
|
-
def sort_increasing_min
|
96
|
-
PWMCompareAligned.new(*sort_pair_of_matrices_by{|col_pair| col_pair[0].min} )
|
97
|
-
end
|
98
|
-
def permute_columns(permutation_index)
|
99
|
-
PWMCompareAligned.new(first.permute(permutation_index), second.permute(permutation_index))
|
100
|
-
end
|
101
|
-
=end
|
102
|
-
|
103
92
|
def jaccard(first_threshold, second_threshold)
|
104
93
|
f = first.counts_by_thresholds(first_threshold).first
|
105
94
|
s = second.counts_by_thresholds(second_threshold).first
|
@@ -131,22 +120,6 @@ module Macroape
|
|
131
120
|
[first_len - shift, second_len].max
|
132
121
|
end
|
133
122
|
end
|
134
|
-
|
135
|
-
# sets or gets limit of summary size of calculation hash. It's a defence against overuse CPU resources by non-appropriate data
|
136
|
-
def max_hash_size!(new_max_hash_size)
|
137
|
-
@max_hash_size = new_max_hash_size
|
138
|
-
self
|
139
|
-
end
|
140
|
-
|
141
|
-
def max_hash_size(*args)
|
142
|
-
case args.size
|
143
|
-
when 0 then @max_hash_size
|
144
|
-
when 1 then max_hash_size!(args.first)
|
145
|
-
else raise ArgumentError, '#max_hash_size method can get 0 or 1 argument'
|
146
|
-
end
|
147
|
-
end
|
148
|
-
|
149
|
-
|
150
123
|
end
|
151
124
|
|
152
125
|
end
|
data/lib/macroape/version.rb
CHANGED
data/lib/macroape.rb
CHANGED
@@ -1,11 +1,10 @@
|
|
1
|
-
|
1
|
+
require_relative 'macroape/version'
|
2
2
|
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
require 'macroape/pwm_compare'
|
3
|
+
require_relative 'macroape/counting'
|
4
|
+
require_relative 'macroape/aligned_pair_intersection'
|
5
|
+
require_relative 'macroape/pwm_compare_aligned'
|
6
|
+
require_relative 'macroape/pwm_compare'
|
7
|
+
require_relative 'macroape/cli'
|
9
8
|
|
10
9
|
module Macroape
|
11
10
|
# Your code goes here...
|
data/macroape.gemspec
CHANGED
data/spec/spec_helper.rb
CHANGED
data/test/align_motifs_test.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
#pwm similarity shift overlap orientation
|
2
|
-
KLF4_f2 1.0 0 10 direct
|
3
|
-
SP1_f1 0.22754919499105544 -1 10 direct
|
4
|
-
GABPA_f1 0.00043527658136684877 -8 5 direct
|
1
|
+
#pwm similarity shift overlap orientation
|
2
|
+
KLF4_f2 1.0 0 10 direct
|
3
|
+
SP1_f1 0.22754919499105544 -1 10 direct
|
4
|
+
GABPA_f1 0.00043527658136684877 -8 5 direct
|
@@ -1,4 +1,4 @@
|
|
1
|
-
#pwm similarity shift overlap orientation
|
2
|
-
KLF4_f2 1.0 0 10 direct *
|
3
|
-
SP1_f1 0.2420758234928527 -1 10 direct *
|
4
|
-
GABPA_f1 0.00043527658136684877 -8 5 direct
|
1
|
+
#pwm similarity shift overlap orientation
|
2
|
+
KLF4_f2 1.0 0 10 direct *
|
3
|
+
SP1_f1 0.2420758234928527 -1 10 direct *
|
4
|
+
GABPA_f1 0.00043527658136684877 -8 5 direct
|
@@ -0,0 +1,185 @@
|
|
1
|
+
--- &18345276 !ruby/object:Bioinform::Collection
|
2
|
+
collection:
|
3
|
+
- - !ruby/object:Bioinform::PCM
|
4
|
+
parameters: !ruby/object:OpenStruct
|
5
|
+
table:
|
6
|
+
:name: GABPA_f1
|
7
|
+
:tags:
|
8
|
+
- *18345276
|
9
|
+
:background:
|
10
|
+
- 1
|
11
|
+
- 1
|
12
|
+
- 1
|
13
|
+
- 1
|
14
|
+
modifiable: true
|
15
|
+
matrix:
|
16
|
+
- - 615.2572649050138
|
17
|
+
- 697.0698715160123
|
18
|
+
- 1261.1903440712872
|
19
|
+
- 176.43506582414153
|
20
|
+
- - 996.4929869323321
|
21
|
+
- 805.1878697364007
|
22
|
+
- 693.7695793644275
|
23
|
+
- 254.5021102832924
|
24
|
+
- - 1106.9888035794224
|
25
|
+
- 508.19444415177276
|
26
|
+
- 1029.8329748714536
|
27
|
+
- 104.93632371380718
|
28
|
+
- - 143.7121486195701
|
29
|
+
- 2086.4279160661263
|
30
|
+
- 518.37507049306
|
31
|
+
- 1.4374111377025893
|
32
|
+
- - 362.9541452731307
|
33
|
+
- 2369.473894845734
|
34
|
+
- 17.23702397004065
|
35
|
+
- 0.2874822275405179
|
36
|
+
- - 0.0
|
37
|
+
- 0.0
|
38
|
+
- 2749.952546316428
|
39
|
+
- 0.0
|
40
|
+
- - 0.0
|
41
|
+
- 0.0
|
42
|
+
- 2749.952546316428
|
43
|
+
- 0.0
|
44
|
+
- - 2748.2567506938462
|
45
|
+
- 1.695795622582083
|
46
|
+
- 0.0
|
47
|
+
- 0.0
|
48
|
+
- - 2726.6484322711017
|
49
|
+
- 1.1499289101620715
|
50
|
+
- 1.1499289101620715
|
51
|
+
- 21.00425622500253
|
52
|
+
- - 202.05697400573305
|
53
|
+
- 28.799402471063658
|
54
|
+
- 2518.808687612104
|
55
|
+
- 0.2874822275405179
|
56
|
+
- - 172.92889618879767
|
57
|
+
- 521.1240363384483
|
58
|
+
- 106.38197600987633
|
59
|
+
- 1949.517637779338
|
60
|
+
- - 398.1679460365911
|
61
|
+
- 424.20938204069563
|
62
|
+
- 1706.4024212088275
|
63
|
+
- 221.17279703034018
|
64
|
+
- - 764.2587933951809
|
65
|
+
- 675.0883944902433
|
66
|
+
- 1066.5413633225007
|
67
|
+
- 244.06399510852864
|
68
|
+
- !ruby/object:OpenStruct
|
69
|
+
table: {}
|
70
|
+
- - !ruby/object:Bioinform::PCM
|
71
|
+
parameters: !ruby/object:OpenStruct
|
72
|
+
table:
|
73
|
+
:name: KLF4_f2
|
74
|
+
:tags:
|
75
|
+
- *18345276
|
76
|
+
:background:
|
77
|
+
- 1
|
78
|
+
- 1
|
79
|
+
- 1
|
80
|
+
- 1
|
81
|
+
modifiable: true
|
82
|
+
matrix:
|
83
|
+
- - 1233.46088405354
|
84
|
+
- 93.18173277811673
|
85
|
+
- 1036.6014857092885
|
86
|
+
- 1258.2948629970272
|
87
|
+
- - 263.979242343185
|
88
|
+
- 5.314520555872139
|
89
|
+
- 3347.5949971525274
|
90
|
+
- 4.650205486388122
|
91
|
+
- - 76.7700780003465
|
92
|
+
- 6.643150694840173
|
93
|
+
- 3529.4896409394937
|
94
|
+
- 8.636095903292224
|
95
|
+
- - 57.86097393406657
|
96
|
+
- 18.102585643439472
|
97
|
+
- 3520.3342027139347
|
98
|
+
- 25.24120324653207
|
99
|
+
- - 518.1947904009378
|
100
|
+
- 1545.9062946905135
|
101
|
+
- 22.396758181071043
|
102
|
+
- 1535.0411222654507
|
103
|
+
- - 137.98151691820345
|
104
|
+
- 9.300410972776241
|
105
|
+
- 3456.320530770924
|
106
|
+
- 17.936506876068467
|
107
|
+
- - 115.27647661640499
|
108
|
+
- 81.51802997128804
|
109
|
+
- 1861.9425868567278
|
110
|
+
- 1562.801872093553
|
111
|
+
- - 227.8095486111286
|
112
|
+
- 42.84555258785854
|
113
|
+
- 3278.6396005325996
|
114
|
+
- 72.244263806387
|
115
|
+
- - 108.73384179997886
|
116
|
+
- 134.47328134862394
|
117
|
+
- 3162.880454846513
|
118
|
+
- 215.45138754285665
|
119
|
+
- - 238.49636899561344
|
120
|
+
- 2225.9561104691043
|
121
|
+
- 402.40727964384774
|
122
|
+
- 754.6792064294074
|
123
|
+
- !ruby/object:OpenStruct
|
124
|
+
table: {}
|
125
|
+
- - !ruby/object:Bioinform::PCM
|
126
|
+
parameters: !ruby/object:OpenStruct
|
127
|
+
table:
|
128
|
+
:name: SP1_f1
|
129
|
+
:tags:
|
130
|
+
- *18345276
|
131
|
+
:background:
|
132
|
+
- 1
|
133
|
+
- 1
|
134
|
+
- 1
|
135
|
+
- 1
|
136
|
+
modifiable: true
|
137
|
+
matrix:
|
138
|
+
- - 682.6436366358055
|
139
|
+
- 443.1455214015781
|
140
|
+
- 2075.655346294993
|
141
|
+
- 287.211468117951
|
142
|
+
- - 299.8883246804867
|
143
|
+
- 103.74338315843572
|
144
|
+
- 2613.8927022405364
|
145
|
+
- 471.1315623708902
|
146
|
+
- - 591.4892493324709
|
147
|
+
- 42.631827541794564
|
148
|
+
- 2845.1654083148564
|
149
|
+
- 9.36948726124641
|
150
|
+
- - 7.071084742361592
|
151
|
+
- 45.29093411231232
|
152
|
+
- 3432.8847704374107
|
153
|
+
- 3.409183158303573
|
154
|
+
- - 91.308984085713
|
155
|
+
- 19.1536481364332
|
156
|
+
- 3373.656949880137
|
157
|
+
- 4.5363903481026
|
158
|
+
- - 809.2082973387932
|
159
|
+
- 2246.941954176211
|
160
|
+
- 61.30766021687515
|
161
|
+
- 371.19806071846244
|
162
|
+
- - 120.56476435866055
|
163
|
+
- 42.4349244403591
|
164
|
+
- 3242.1560628684038
|
165
|
+
- 83.50022078295852
|
166
|
+
- - 13.72524477409959
|
167
|
+
- 35.858220519297525
|
168
|
+
- 3332.4066864946167
|
169
|
+
- 106.66582066236779
|
170
|
+
- - 558.1188080161639
|
171
|
+
- 90.0084504200356
|
172
|
+
- 2694.854973210736
|
173
|
+
- 145.67374080342415
|
174
|
+
- - 264.0088462230318
|
175
|
+
- 254.7175868081866
|
176
|
+
- 2796.88087480315
|
177
|
+
- 173.0486646159857
|
178
|
+
- - 519.46013914282
|
179
|
+
- 1874.9349086474765
|
180
|
+
- 654.5411208373813
|
181
|
+
- 439.7198038226514
|
182
|
+
- !ruby/object:OpenStruct
|
183
|
+
table: {}
|
184
|
+
parameters: !ruby/object:OpenStruct
|
185
|
+
table: {}
|
@@ -0,0 +1,185 @@
|
|
1
|
+
--- &18740484 !ruby/object:Bioinform::Collection
|
2
|
+
collection:
|
3
|
+
- - !ruby/object:Bioinform::PWM
|
4
|
+
parameters: !ruby/object:OpenStruct
|
5
|
+
table:
|
6
|
+
:name: GABPA_f1
|
7
|
+
:tags:
|
8
|
+
- *18740484
|
9
|
+
:background:
|
10
|
+
- 1
|
11
|
+
- 1
|
12
|
+
- 1
|
13
|
+
- 1
|
14
|
+
modifiable: true
|
15
|
+
matrix:
|
16
|
+
- - -0.1106670158341858
|
17
|
+
- 0.013801606113892391
|
18
|
+
- 0.6054596108973699
|
19
|
+
- -1.3518085041421573
|
20
|
+
- - 0.37030668921643345
|
21
|
+
- 0.15761121480429963
|
22
|
+
- 0.009069314183831202
|
23
|
+
- -0.9888619717703562
|
24
|
+
- - 0.47526546359546684
|
25
|
+
- -0.3011678534572083
|
26
|
+
- 0.4031522994412777
|
27
|
+
- -1.8638752827041059
|
28
|
+
- - -1.5544255540164373
|
29
|
+
- 1.1082369687811506
|
30
|
+
- -0.2814091552834454
|
31
|
+
- -5.30708531823271
|
32
|
+
- - -0.6362037835776368
|
33
|
+
- 1.235338189985594
|
34
|
+
- -3.5801322928552253
|
35
|
+
- -5.717323067092849
|
36
|
+
- - -5.852906870733575
|
37
|
+
- -5.852906870733575
|
38
|
+
- 1.3841383838057746
|
39
|
+
- -5.852906870733575
|
40
|
+
- - -5.852906870733575
|
41
|
+
- -5.852906870733575
|
42
|
+
- 1.3841383838057746
|
43
|
+
- -5.852906870733575
|
44
|
+
- - 1.3835219739184708
|
45
|
+
- -5.2341956006430985
|
46
|
+
- -5.852906870733575
|
47
|
+
- -5.852906870733575
|
48
|
+
- - 1.3756340514956562
|
49
|
+
- -5.394962755562375
|
50
|
+
- -5.394962755562375
|
51
|
+
- -3.401117964959733
|
52
|
+
- - -1.2176198315414444
|
53
|
+
- -3.109079898175411
|
54
|
+
- 1.2964067931472216
|
55
|
+
- -5.717323067092849
|
56
|
+
- - -1.3716559438167257
|
57
|
+
- -0.2761401935045069
|
58
|
+
- -1.8504445165866068
|
59
|
+
- 1.0404320473626856
|
60
|
+
- - -0.5440863133031895
|
61
|
+
- -0.48103682561971345
|
62
|
+
- 0.907381908447086
|
63
|
+
- -1.1280642594012078
|
64
|
+
- - 0.10557340209290218
|
65
|
+
- -0.01814819455289191
|
66
|
+
- 0.4381106695354074
|
67
|
+
- -1.0304105539540915
|
68
|
+
- !ruby/object:OpenStruct
|
69
|
+
table: {}
|
70
|
+
- - !ruby/object:Bioinform::PWM
|
71
|
+
parameters: !ruby/object:OpenStruct
|
72
|
+
table:
|
73
|
+
:name: KLF4_f2
|
74
|
+
:tags:
|
75
|
+
- *18740484
|
76
|
+
:background:
|
77
|
+
- 1
|
78
|
+
- 1
|
79
|
+
- 1
|
80
|
+
- 1
|
81
|
+
modifiable: true
|
82
|
+
matrix:
|
83
|
+
- - 0.30861857265872605
|
84
|
+
- -2.254321000121579
|
85
|
+
- 0.13505703522674192
|
86
|
+
- 0.3285194224375633
|
87
|
+
- - -1.227018967707036
|
88
|
+
- -4.814127713368663
|
89
|
+
- 1.3059890687390967
|
90
|
+
- -4.908681463544344
|
91
|
+
- - -2.443469374521196
|
92
|
+
- -4.648238485031404
|
93
|
+
- 1.3588686548279805
|
94
|
+
- -4.441801801188402
|
95
|
+
- - -2.7177827948276123
|
96
|
+
- -3.8073538975356565
|
97
|
+
- 1.356272809724262
|
98
|
+
- -3.504104725510225
|
99
|
+
- - -0.5563232977367343
|
100
|
+
- 0.5340697765121405
|
101
|
+
- -3.61417723090579
|
102
|
+
- 0.5270259776377405
|
103
|
+
- - -1.8687622060887386
|
104
|
+
- -4.381483976582316
|
105
|
+
- 1.337932245336098
|
106
|
+
- -3.815629658877517
|
107
|
+
- - -2.045671123823928
|
108
|
+
- -2.384975142213679
|
109
|
+
- 0.7198551207724355
|
110
|
+
- 0.5449254135616948
|
111
|
+
- - -1.373157530374372
|
112
|
+
- -3.0063112097748217
|
113
|
+
- 1.285188335493552
|
114
|
+
- -2.5026044231773543
|
115
|
+
- - -2.1030513122772208
|
116
|
+
- -1.8941348100402244
|
117
|
+
- 1.249265758393991
|
118
|
+
- -1.4284210948906104
|
119
|
+
- - -1.3277128628152939
|
120
|
+
- 0.8982415633049462
|
121
|
+
- -0.8080773665408135
|
122
|
+
- -0.18161647647456935
|
123
|
+
- !ruby/object:OpenStruct
|
124
|
+
table: {}
|
125
|
+
- - !ruby/object:Bioinform::PWM
|
126
|
+
parameters: !ruby/object:OpenStruct
|
127
|
+
table:
|
128
|
+
:name: SP1_f1
|
129
|
+
:tags:
|
130
|
+
- *18740484
|
131
|
+
:background:
|
132
|
+
- 1
|
133
|
+
- 1
|
134
|
+
- 1
|
135
|
+
- 1
|
136
|
+
modifiable: true
|
137
|
+
matrix:
|
138
|
+
- - -0.24435707885585292
|
139
|
+
- -0.674823404693731
|
140
|
+
- 0.8657012535789866
|
141
|
+
- -1.1060188862599287
|
142
|
+
- - -1.0631255752097797
|
143
|
+
- -2.111925969423868
|
144
|
+
- 1.0960627561110403
|
145
|
+
- -0.6138563775211977
|
146
|
+
- - -0.3872276234760535
|
147
|
+
- -2.9739851913218045
|
148
|
+
- 1.1807800242010378
|
149
|
+
- -4.338927525031566
|
150
|
+
- - -4.563896055436894
|
151
|
+
- -2.9161633002532277
|
152
|
+
- 1.3684371349982638
|
153
|
+
- -5.077972423609655
|
154
|
+
- - -2.2369752892820083
|
155
|
+
- -3.7196436313301846
|
156
|
+
- 1.3510439136452734
|
157
|
+
- -4.889930670508233
|
158
|
+
- - -0.07473964149330865
|
159
|
+
- 0.944919654762011
|
160
|
+
- -2.6246857648086044
|
161
|
+
- -0.8510983487822436
|
162
|
+
- - -1.9643526491643322
|
163
|
+
- -2.978402770880115
|
164
|
+
- 1.3113096718240573
|
165
|
+
- -2.324334259499025
|
166
|
+
- - -4.0155484139655835
|
167
|
+
- -3.1384268078096667
|
168
|
+
- 1.3387488589788057
|
169
|
+
- -2.084673903537648
|
170
|
+
- - -0.44509385828355363
|
171
|
+
- -2.2510053061629702
|
172
|
+
- 1.1265431574368685
|
173
|
+
- -1.7780413702431372
|
174
|
+
- - -1.1896356092245048
|
175
|
+
- -1.2251832285630027
|
176
|
+
- 1.1636760063747527
|
177
|
+
- -1.6080243648157353
|
178
|
+
- - -0.5166047365590571
|
179
|
+
- 0.7641033353626657
|
180
|
+
- -0.2862677570028208
|
181
|
+
- -0.68254820978656
|
182
|
+
- !ruby/object:OpenStruct
|
183
|
+
table: {}
|
184
|
+
parameters: !ruby/object:OpenStruct
|
185
|
+
table: {}
|
@@ -0,0 +1,8 @@
|
|
1
|
+
medium_motif_name
|
2
|
+
0.30861857265872605 -2.254321000121579 0.13505703522674192 0.3285194224375633
|
3
|
+
-1.227018967707036 -4.814127713368663 1.3059890687390967 -4.908681463544344
|
4
|
+
-2.443469374521196 -4.648238485031404 1.3588686548279805 -4.441801801188402
|
5
|
+
-2.7177827948276123 -3.8073538975356565 1.356272809724262 -3.504104725510225
|
6
|
+
-0.5563232977367343 0.5340697765121405 -3.61417723090579 0.5270259776377405
|
7
|
+
-1.8687622060887386 -4.381483976582316 1.337932245336098 -3.815629658877517
|
8
|
+
-2.045671123823928 -2.384975142213679 0.7198551207724355 0.5449254135616948
|