lib/eps/data_frame.rb in eps-0.3.4 vs lib/eps/data_frame.rb in eps-0.3.5

- old
+ new

@@ -8,19 +8,21 @@ if data.is_a?(Eps::DataFrame) data.columns.each do |k, v| @columns[k] = v end - elsif daru?(data) + elsif rover?(data) || daru?(data) data.to_h.each do |k, v| @columns[k.to_s] = v.to_a end elsif data.is_a?(Hash) data.each do |k, v| @columns[k.to_s] = v.to_a end else + data = data.to_a if numo?(data) + if data.any? row = data[0] if row.is_a?(Hash) row.keys.each do |k| @@ -138,10 +140,18 @@ df end private + def numo?(x) + defined?(Numo::NArray) && x.is_a?(Numo::NArray) + end + + def rover?(x) + defined?(Rover::DataFrame) && x.is_a?(Rover::DataFrame) + end + def daru?(x) - defined?(Daru) && x.is_a?(Daru::DataFrame) + defined?(Daru::DataFrame) && x.is_a?(Daru::DataFrame) end end end