INNER CODE UNIT · Ruby
detect_dtype
yoshoku/rumale · rumale-core/lib/rumale/dataset.rb:206
def detect_dtype(data)
arr_type_str = Numo::NArray.array_type(data).to_s
type = '%s'
type = '%d' if ['Numo::Int8', 'Numo::Int16', 'Numo::Int32', 'Numo::Int64'].include?(arr_type_str)
type = '%d' if ['Numo::UInt8', 'Numo::UInt16', 'Numo::UInt32', 'Numo::UInt64'].include?(arr_type_str)
type = '%.10g' if ['Numo::SFloat', 'Numo::DFloat'].include?(arr_type_str)
type
end
def dump_libsvm_line(label, ftvec, label_type, value_type, zero_based)
line = dump_label(label, label_type.to_s)
ftvec.to_a.each_with_index do |val, n|
idx = n + (zero_based == false ? 1 : 0)
line += format(" %d:#{value_type}", idx, val) if val != 0
end
line
end