Method: EasyML::Data::Preprocessor::SimpleImputer#save

Defined in:
lib/easy_ml/data/preprocessor/simple_imputer.rb

#saveObject



139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
# File 'lib/easy_ml/data/preprocessor/simple_imputer.rb', line 139

def save
  FileUtils.mkdir_p(File.dirname(file_path))

  all_statistics = (File.exist?(file_path) ? JSON.parse(File.read(file_path)) : {}).deep_symbolize_keys

  deep_symbolize_keys!

  serialized = serialize_statistics(@statistics)
  all_statistics[attribute] = {} unless all_statistics.key?(attribute)
  all_statistics[attribute][@strategy] = serialized[attribute.to_sym][@strategy.to_sym]

  File.open(file_path, "w") do |file|
    file.write(JSON.pretty_generate(all_statistics))
  end
end