def take(self, indices, axis=0, convert=True): """ Analogous to ndarray.take, return SparseDataFrame corresponding to requested indices along an axis Parameters ---------- indices : list / array of ints axis : {0, 1} convert : convert indices for negative values, check bounds, default True mainly useful for an user routine calling Returns ------- taken : SparseDataFrame """ indices = com._ensure_platform_int(indices) # check/convert indicies here if convert: indices = _maybe_convert_indices(indices, len(self._get_axis(axis))) new_values = self.values.take(indices, axis=axis) if axis == 0: new_columns = self.columns new_index = self.index.take(indices) else: new_columns = self.columns.take(indices) new_index = self.index return self._constructor(new_values, index=new_index, columns=new_columns)
def take(self, indices, axis=0, convert=True): """ Analogous to ndarray.take Parameters ---------- indices : list / array of ints axis : int, default 0 convert : translate neg to pos indices (default) Returns ------- taken : type of caller """ # check/convert indicies here if convert: axis = self._get_axis_number(axis) indices = _maybe_convert_indices(indices, len(self._get_axis(axis))) if axis == 0: labels = self._get_axis(axis) new_items = labels.take(indices) new_data = self._data.reindex_axis(new_items, axis=0) else: new_data = self._data.take(indices, axis=axis, verify=False) return self._constructor(new_data)