diff options
author | Christoph Helma <helma@in-silico.ch> | 2021-06-25 13:30:16 +0200 |
---|---|---|
committer | Christoph Helma <helma@in-silico.ch> | 2021-06-25 13:30:16 +0200 |
commit | 1f956a4963f62c90475ac8e1f713b989b5a99b36 (patch) | |
tree | 949d242c0d0085cfa6febb138a25dbf192646638 /scripts/pa-fingerprints.rb | |
parent | 7a6d28d9ad32198af1feb848352731ab2fd7e2f1 (diff) |
links fixed
Diffstat (limited to 'scripts/pa-fingerprints.rb')
-rwxr-xr-x | scripts/pa-fingerprints.rb | 33 |
1 files changed, 17 insertions, 16 deletions
diff --git a/scripts/pa-fingerprints.rb b/scripts/pa-fingerprints.rb index 344ba86..852af5c 100755 --- a/scripts/pa-fingerprints.rb +++ b/scripts/pa-fingerprints.rb @@ -1,20 +1,21 @@ #!/usr/bin/env ruby -require_relative "../../lazar/lib/lazar.rb" -training_fingerprints = `sed -n '1p' data/mutagenicity-fingerprints.csv`.chomp.split(",") -training_fingerprints.pop -puts training_fingerprints.join(",") -training_fingerprints.shift -File.readlines(File.join("pyrrolizidine-alkaloids","lazar","pa-smiles.csv")).each_with_index do |line,i| - if i > 0 - (id,smiles) = line.chomp.split(",") - c = Compound.new(smiles) - out = [c.smiles] - fp = c.fingerprint - training_fingerprints.each do |frag| - fp.include?(frag) ? out << 1 : out << 0 - end - puts out.join(",") +mp2d = {} +File.readlines(File.join("pyrrolizidine-alkaloids","pa-mp2d")).each do |line| + items = line.chomp.split(',') + smi = items.shift + mp2d[smi] = items +end +fps = [] +mp2d.each do |smi,fp| + fps += fp +end +fps = fps.sort.uniq +puts (["Canonical SMILES"]+fps).join(",") +mp2d.each do |smi,fp| + print smi + fps.each do |f| + fp.include?(f) ? print(",1") : print(",0") end + puts end - |