summaryrefslogtreecommitdiff
path: root/scripts/mp2d-fingerprints.rb
blob: d016594f03121e99b465995551f314a244ad4cc8 (plain)
1
2
3
4
5
6
7
8
9
10
11
#!/usr/bin/env ruby

lines = File.readlines(ARGV[0])
header = lines.shift.chomp.split(",")
i = header.index("Canonical SMILES")
smi = lines.collect{|l| l.chomp.split(",")[i]}
File.open("/tmp/smi","w+"){|f| f.puts smi.join("\n")} # avoid "Argument list too long (Errno::E2BIG)"
mp2d = `cat /tmp/smi | obabel -ismi - -ompd`.split("\n").collect{|l| l.split("\t")[1..-1]}
smi.each_with_index do |s,i|
  puts ([s]+mp2d[i]).join(",")
end