diff options
author | Christoph Helma <helma@in-silico.ch> | 2021-02-22 23:26:29 +0100 |
---|---|---|
committer | Christoph Helma <helma@in-silico.ch> | 2021-02-22 23:26:29 +0100 |
commit | ed83d4c5347ebf43b2de55782b290b66bada4561 (patch) | |
tree | ddf3ee1eb6d4f5d250835345798086b5204a23ee /scripts/tsne-mp2d-distances.rb | |
parent | 3af0c3d5c5b7f7d506a4582bbe3dca7d22bbefcc (diff) |
more script consolidations
Diffstat (limited to 'scripts/tsne-mp2d-distances.rb')
-rwxr-xr-x | scripts/tsne-mp2d-distances.rb | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/scripts/tsne-mp2d-distances.rb b/scripts/tsne-mp2d-distances.rb new file mode 100755 index 0000000..f0a3afd --- /dev/null +++ b/scripts/tsne-mp2d-distances.rb @@ -0,0 +1,30 @@ +#!/usr/bin/env ruby +require_relative "../../lazar/lib/similarity.rb" + +independent_variables = [] +smiles = [] +ARGV.each do |f| + File.readlines(f).each do |l| + items = l.chomp.split "," + smiles << items.shift + independent_variables << items + end +end + +dist = [] +independent_variables.each_with_index do |v1,i| + dist << [] + line = [] + independent_variables.each_with_index do |v2,j| + if j > i + d = 1-Similarity.tanimoto([v1,v2]) + dist[i][j] = d + elsif i == j + d = 0 + else + d = dist[j][i] + end + line << d + end + puts ([smiles[i]]+line).join(",") +end |