blob: e628f5122c44649d2eef49c6a381ff8021dd39c9 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
#!/usr/bin/env ruby
group_data = File.readlines(ARGV[0]).collect{|l| l.chomp.split(",")}
sa37 = File.readlines(ARGV[1]).collect{|l| l.chomp.split(",")}
group_names = group_data.shift
group_names.shift
sa37.shift
groups = {}
group_data.each do |d|
smi = d.shift
groups[smi] ||= []
d.each_with_index do |v,i|
groups[smi] << group_names[i] if v == "1"
end
end
mut = {}
n = {}
sa37.each do |pred|
smi = pred.shift
group_names.each do |g|
mut[g] ||= 0
n[g] ||= 0
if groups[smi].include? g
n[g]+=1
mut[g]+=1 if pred[0] == "1"
end
end
end
perc = {}
mut.each do |g,m|
perc[g] = (100.0*m/n[g]).round
end
p perc
|