Method: Statsample::Reliability::SkillScaleAnalysis#corrected_dataset

Defined in:
lib/statsample/reliability/skillscaleanalysis.rb

#corrected_datasetObject



59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
# File 'lib/statsample/reliability/skillscaleanalysis.rb', line 59

def corrected_dataset
  if @cds.nil?
    @cds = Daru::DataFrame.new({}, order: @ds.vectors, name: @ds.name)
    @ds.each_row do |row|
      out = {}
      row.each_with_index do |v, k|
        if @key.has_key? k
          if @ds[k].reject_values(*Daru::MISSING_VALUES).include_values? v
            out[k]= @key[k] == v ? 1 : 0
          else
            out[k] = nil
          end
        else
          out[k] = v
        end
      end

      @cds.add_row(Daru::Vector.new(out))
    end
    @cds.update
  end
  @cds
end