13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
# File 'lib/rust/core/types/matrix.rb', line 13
def self.pull_variable(variable, type, klass)
if Rust._pull("length(#{variable})") == 1
core = ::Matrix[[Rust._pull("#{variable}[1]")]]
else
core = Rust._pull(variable)
end
row_names = [Rust["rownames(#{variable})"]].flatten
column_names = [Rust["colnames(#{variable})"]].flatten
row_names = nil if row_names.all? { |v| v == nil }
column_names = nil if column_names.all? { |v| v == nil }
Matrix.new(core, row_names, column_names)
end
|