diff options
Diffstat (limited to 'scripts/pa-lazar-padel-model.rb')
-rwxr-xr-x | scripts/pa-lazar-padel-model.rb | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/scripts/pa-lazar-padel-model.rb b/scripts/pa-lazar-padel-model.rb new file mode 100755 index 0000000..ee6e2f8 --- /dev/null +++ b/scripts/pa-lazar-padel-model.rb @@ -0,0 +1,25 @@ +#!/usr/bin/env ruby + +model_descriptor_names = File.read("10-fold-crossvalidations/lazar-padel/independent_variable_names").chomp.split(",").collect{|d| d.gsub('"','')} +model_descriptors = File.readlines("10-fold-crossvalidations/lazar-padel/independent_variables").collect{|d| d.chomp.split(",")} +model_means = File.read("10-fold-crossvalidations/lazar-padel/means").chomp.split(",").collect{|d| d.to_f} +model_stdev = File.read("10-fold-crossvalidations/lazar-padel/standard_deviations").chomp.split(",").collect{|d| d.to_f} + +pa_descriptors = File.readlines("pyrrolizidine-alkaloids/PA-Padel-2D_m2.csv") +pa_descriptor_names = pa_descriptors.shift.split(";") +pa_descriptors = pa_descriptors.collect{|d| d.chomp.split(";").collect{|i| i.sub(',','.').to_f}} + +common_descriptor_names = model_descriptor_names & pa_descriptor_names +common_descriptors_model_idx = common_descriptor_names.collect{ |n| model_descriptor_names.index n } +common_descriptors_pa_idx = common_descriptor_names.collect{ |n| pa_descriptor_names.index n } + +new_model_descriptors = model_descriptors.collect { |row| common_descriptors_model_idx.collect{|i| row[i]} } +new_pa_descriptors = pa_descriptors.collect { |row| common_descriptors_pa_idx.collect{|i| row[i] } } +new_means = common_descriptors_model_idx.collect{|i| model_means[i]} +new_stdev = common_descriptors_model_idx.collect{|i| model_stdev[i]} + +new_pa_descriptors = new_pa_descriptors.collect{|row| row.collect{|d| i = row.index(d); (d-new_means[i])/new_stdev[i]}} + +File.open("10-fold-crossvalidations/lazar-pa-padel/independent_variable_names","w+") {|f| f.puts common_descriptor_names.join(",")} +File.open("10-fold-crossvalidations/lazar-pa-padel/independent_variables","w+") {|f| f.puts new_model_descriptors.collect{|d| d.join(",")}.join("\n")} +File.open("10-fold-crossvalidations/lazar-pa-padel/pa_independent_variables","w+") {|f| f.puts new_pa_descriptors.collect{|d| d.join(",")}.join("\n")} |