MCPcopy
hub / github.com/pydata/xarray / factorize

Method factorize

xarray/groupers.py:578–597  ·  view source on GitHub ↗
(self, group: T_Group)

Source from the content-addressed store, hash-verified

576 return first_items, codes
577
578 def factorize(self, group: T_Group) -> EncodedGroups:
579 self._init_properties(group)
580 full_index, first_items, codes_ = self._get_index_and_items()
581 sbins = first_items.values.astype(np.int64)
582 group_indices: GroupIndices = tuple(
583 list(itertools.starmap(slice, pairwise(sbins))) + [slice(sbins[-1], None)]
584 )
585
586 unique_coord = Variable(
587 dims=group.name, data=first_items.index, attrs=group.attrs
588 )
589 codes = group.copy(data=codes_.reshape(group.shape), deep=False)
590
591 return EncodedGroups(
592 codes=codes,
593 group_indices=group_indices,
594 full_index=full_index,
595 unique_coord=unique_coord,
596 coords=coordinates_from_variable(unique_coord),
597 )
598
599 def compute_chunks(self, variable: Variable, *, dim: Hashable) -> tuple[int, ...]:
600 """

Callers

nothing calls this directly

Calls 7

_init_propertiesMethod · 0.95
_get_index_and_itemsMethod · 0.95
VariableClass · 0.90
EncodedGroupsClass · 0.85
astypeMethod · 0.45
copyMethod · 0.45

Tested by

no test coverage detected