lib/polars/utils.rb in polars-df-0.1.1 vs lib/polars/utils.rb in polars-df-0.1.2
- old
+ new
@@ -1,6 +1,7 @@
module Polars
+ # @private
module Utils
DTYPE_TEMPORAL_UNITS = ["ns", "us", "ms"]
def self.wrap_s(s)
Series._from_rbseries(s)
@@ -52,9 +53,41 @@
end
# TODO fix
def self.rb_type_to_dtype(dtype)
dtype.to_s
+ end
+
+ def self._process_null_values(null_values)
+ if null_values.is_a?(Hash)
+ null_values.to_a
+ else
+ null_values
+ end
+ end
+
+ def self._prepare_row_count_args(row_count_name = nil, row_count_offset = 0)
+ if !row_count_name.nil?
+ [row_count_name, row_count_offset]
+ else
+ nil
+ end
+ end
+
+ def self.handle_projection_columns(columns)
+ projection = nil
+ if columns
+ raise Todo
+ # if columns.is_a?(String) || columns.is_a?(Symbol)
+ # columns = [columns]
+ # elsif is_int_sequence(columns)
+ # projection = columns.to_a
+ # columns = nil
+ # elsif !is_str_sequence(columns)
+ # raise ArgumentError, "columns arg should contain a list of all integers or all strings values."
+ # end
+ end
+ [projection, columns]
end
def self.scale_bytes(sz, to:)
scaling_factor = {
"b" => 1,