Sha256: 7ac142d3a2ae5561d4e7ae75567e53e800770e8888549b3e59cc0808981479ae
Contents?: true
Size: 962 Bytes
Versions: 8
Compression:
Stored size: 962 Bytes
Contents
# frozen_string_literal: true module RedAmber # mix-ins for the class DataFrame module DataFrameIndexable # Common method def map_indices(*indices) return self if indices.empty? indices = indices[0].data if indices[0].is_a?(Vector) new_dataframe_by(indices) end # @param sort_keys [Arrow::SortKey] # :key, "key" or "+key" denotes ascending, # "-key" denotes descending order # @return [RedAmber::Vector] Sorted indices in Vector def sort_indices(*sort_keys) indices = @table.sort_indices(sort_keys.flatten) Vector.new(indices) end # @return [RedAmber::DataFrame] Sorted DataFrame def sort(*sort_keys) indices = @table.sort_indices(sort_keys.flatten) new_dataframe_by(indices) end private def new_dataframe_by(index_array) t = Arrow::Function.find(:take).execute([@table, index_array]).value RedAmber::DataFrame.new(t) end end end
Version data entries
8 entries across 8 versions & 1 rubygems