diff options
Diffstat (limited to 'scripts/merge-mutagenicity.rb')
-rwxr-xr-x | scripts/merge-mutagenicity.rb | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/scripts/merge-mutagenicity.rb b/scripts/merge-mutagenicity.rb new file mode 100755 index 0000000..2de7d1c --- /dev/null +++ b/scripts/merge-mutagenicity.rb @@ -0,0 +1,30 @@ +#!/usr/bin/env ruby +require 'csv' +require 'json' + +acts = {} +ids = {} +ARGV.each do |csv| + CSV.foreach(csv) do |row| + acts[row[1]] ||= [] + acts[row[1]] << row[2] + ids[row[1]] ||= [] + ids[row[1]] << row[0] + end +end + +contradictions = {} +puts ["SMILES","Mutagenicity"].join(",") +acts.each do |s,a| + if a.uniq.size > 1 + contradictions[s] ||= {} + a.each_with_index do |act,i| + contradictions[s][ids[s][i]] = act + puts [s,act].join "," + end + else + puts [s,a.first].join "," + end +end + +File.open(File.join(File.dirname(__FILE__),"..","data","contradictions.json"),"w+") { |cont| cont.puts contradictions.to_json } |