MCPcopy Index your code
hub / github.com/dask/dask / valid_divisions

Function valid_divisions

dask/dataframe/utils.py:672–713  ·  view source on GitHub ↗

Are the provided divisions valid? Examples -------- >>> valid_divisions([1, 2, 3]) True >>> valid_divisions([3, 2, 1]) False >>> valid_divisions([1, 1, 1]) False >>> valid_divisions([0, 1, 1]) True >>> valid_divisions((1, 2, 3)) True >>> valid_div

(divisions)

Source from the content-addressed store, hash-verified

670
671
672def valid_divisions(divisions):
673 """Are the provided divisions valid?
674
675 Examples
676 --------
677 >>> valid_divisions([1, 2, 3])
678 True
679 >>> valid_divisions([3, 2, 1])
680 False
681 >>> valid_divisions([1, 1, 1])
682 False
683 >>> valid_divisions([0, 1, 1])
684 True
685 >>> valid_divisions((1, 2, 3))
686 True
687 >>> valid_divisions(123)
688 False
689 >>> valid_divisions([0, float('nan'), 1])
690 False
691 """
692 if not isinstance(divisions, (tuple, list)):
693 return False
694
695 # Cast tuples to lists as `pd.isnull` treats them differently
696 # https://github.com/pandas-dev/pandas/issues/52283
697 if isinstance(divisions, tuple):
698 divisions = list(divisions)
699
700 if pd.isnull(divisions).any():
701 return False
702
703 for i, x in enumerate(divisions[:-2]):
704 if x >= divisions[i + 1]:
705 return False
706 if isinstance(x, Number) and math.isnan(x):
707 return False
708
709 for x in divisions[-2:]:
710 if isinstance(x, Number) and math.isnan(x):
711 return False
712
713 return divisions[-2] <= divisions[-1]
714
715
716class AttributeNotImplementedError(NotImplementedError, AttributeError):

Callers 3

_divisionsMethod · 0.90
test_valid_divisionsFunction · 0.90

Calls 2

anyMethod · 0.45
isnullMethod · 0.45

Tested by 1

test_valid_divisionsFunction · 0.72

Used in the wild real call sites across dependent graphs

searching dependent graphs…