Sha256: 0740d3decc69b426db367f39425b7e255aad15e549313332c28bc000ff2e9cbc

Contents?: true

Size: 517 Bytes

Versions: 4

Compression:

Stored size: 517 Bytes

Contents

module EasyML::Transforms
  def self.included(base)
    base.extend(ClassMethods)
  end

  module ClassMethods
    def transforms
      @transforms ||= []
    end

    def transform(method_name)
      transforms << method_name
    end

    def apply_transforms(df)
      new.apply_transforms(df)
    end
  end

  def missing_any?(list1, list2)
    (list1 - list2).any?
  end

  def apply_transforms(df)
    self.class.transforms.reduce(df) do |df, transform_method|
      send(transform_method, df)
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
easy_ml-0.1.4 lib/easy_ml/transforms.rb
easy_ml-0.1.3 lib/easy_ml/transforms.rb
easy_ml-0.1.2 lib/easy_ml/transforms.rb
easy_ml-0.1.1 lib/easy_ml/transforms.rb