Class: Statsample::SpreadsheetBase

Inherits:
Object
  • Object
show all
Defined in:
lib/statsample/converters.rb

Direct Known Subclasses

CSV, Excel, PlainText

Class Method Summary collapse

Class Method Details

.convert_to_scale_and_date(ds, fields) ⇒ Object



111
112
113
114
115
116
117
118
119
# File 'lib/statsample/converters.rb', line 111

def convert_to_scale_and_date(ds,fields)
  fields.each do |f|
    if ds[f].can_be_scale?
      ds[f].type=:scale
    elsif ds[f].can_be_date?
      ds[f].type=:date
    end
  end
end

.extract_fields(row) ⇒ Object



78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
# File 'lib/statsample/converters.rb', line 78

def extract_fields(row)
=begin
  fields=[]
  row.to_a.collect {|c|
    if c.nil?
      break
    else
      fields.push(c)
    end
  }
=end
raise "Should'nt be empty headers: [#{row.to_a.join(",")}]" if row.to_a.find_all {|c| c.nil?}.size>0
  fields=row.to_a.collect{|c| c.downcase}
  fields.recode_repeated
end

.process_row(row, empty) ⇒ Object



94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
# File 'lib/statsample/converters.rb', line 94

def process_row(row,empty)
  row.to_a.collect do |c|
    if empty.include?(c)
        nil
    else
      if c.is_a? String and c.is_number?
        if c=~/^\d+$/
          c.to_i
        else
          c.gsub(",",".").to_f
        end
      else
        c
      end
    end
  end
end