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