@@ -222,7 +222,7 @@ def _from_factorized(cls, values, original):
222
222
values = values .astype (original .dtype .subtype )
223
223
return cls (values , closed = original .closed )
224
224
225
- _interval_shared_docs ['from_breaks' ] = """
225
+ _interval_shared_docs ['from_breaks' ] = textwrap . dedent ( """\
226
226
Construct an %(klass)s from an array of splits.
227
227
228
228
Parameters
@@ -249,23 +249,28 @@ def _from_factorized(cls, values, original):
249
249
%(klass)s.from_arrays : Construct from a left and right array.
250
250
%(klass)s.from_tuples : Construct from a sequence of tuples.
251
251
252
- Examples
253
- --------
254
- >>> pd.%(qualname)s.from_breaks([0, 1, 2, 3])
255
- %(klass)s([(0, 1], (1, 2], (2, 3]],
256
- closed='right',
257
- dtype='interval[int64]')
258
- """
252
+ %(examples)s\
253
+ """ )
259
254
260
255
@classmethod
261
- @Appender (_interval_shared_docs ['from_breaks' ] % _shared_docs_kwargs )
256
+ @Appender (_interval_shared_docs ['from_breaks' ] % dict (
257
+ klass = 'IntervalArray' ,
258
+ examples = textwrap .dedent ("""\
259
+ Examples
260
+ --------
261
+ >>> pd.arrays.IntervalArray.from_breaks([0, 1, 2, 3])
262
+ <IntervalArray>
263
+ [(0, 1], (1, 2], (2, 3]]
264
+ Length: 3, closed: right, dtype: interval[int64]
265
+ """ ),
266
+ ))
262
267
def from_breaks (cls , breaks , closed = 'right' , copy = False , dtype = None ):
263
268
breaks = maybe_convert_platform_interval (breaks )
264
269
265
270
return cls .from_arrays (breaks [:- 1 ], breaks [1 :], closed , copy = copy ,
266
271
dtype = dtype )
267
272
268
- _interval_shared_docs ['from_arrays' ] = """
273
+ _interval_shared_docs ['from_arrays' ] = textwrap . dedent ( """
269
274
Construct from two arrays defining the left and right bounds.
270
275
271
276
Parameters
@@ -311,16 +316,19 @@ def from_breaks(cls, breaks, closed='right', copy=False, dtype=None):
311
316
using an unsupported type for `left` or `right`. At the moment,
312
317
'category', 'object', and 'string' subtypes are not supported.
313
318
314
- Examples
315
- --------
316
- >>> %(klass)s.from_arrays([0, 1, 2], [1, 2, 3])
317
- %(klass)s([(0, 1], (1, 2], (2, 3]],
318
- closed='right',
319
- dtype='interval[int64]')
320
- """
319
+ %(examples)s\
320
+ """ )
321
321
322
322
@classmethod
323
- @Appender (_interval_shared_docs ['from_arrays' ] % _shared_docs_kwargs )
323
+ @Appender (_interval_shared_docs ['from_arrays' ] % dict (
324
+ klass = 'IntervalArray' ,
325
+ examples = textwrap .dedent ("""\
326
+ >>> pd.arrays.IntervalArray.from_arrays([0, 1, 2], [1, 2, 3])
327
+ <IntervalArray>
328
+ [(0, 1], (1, 2], (2, 3]]
329
+ Length: 3, closed: right, dtype: interval[int64]
330
+ """ ),
331
+ ))
324
332
def from_arrays (cls , left , right , closed = 'right' , copy = False , dtype = None ):
325
333
left = maybe_convert_platform_interval (left )
326
334
right = maybe_convert_platform_interval (right )
@@ -370,7 +378,7 @@ def from_arrays(cls, left, right, closed='right', copy=False, dtype=None):
370
378
closed='right', dtype='interval[int64]')
371
379
"""
372
380
373
- _interval_shared_docs ['from_tuples' ] = """
381
+ _interval_shared_docs ['from_tuples' ] = textwrap . dedent ( """\
374
382
Construct an %(klass)s from an array-like of tuples
375
383
376
384
Parameters
@@ -399,15 +407,21 @@ def from_arrays(cls, left, right, closed='right', copy=False, dtype=None):
399
407
%(klass)s.from_breaks : Construct an %(klass)s from an array of
400
408
splits.
401
409
402
- Examples
403
- --------
404
- >>> pd.%(qualname)s.from_tuples([(0, 1), (1, 2)])
405
- %(klass)s([(0, 1], (1, 2]],
406
- closed='right', dtype='interval[int64]')
407
- """
410
+ %(examples)s\
411
+ """ )
408
412
409
413
@classmethod
410
- @Appender (_interval_shared_docs ['from_tuples' ] % _shared_docs_kwargs )
414
+ @Appender (_interval_shared_docs ['from_tuples' ] % dict (
415
+ klass = 'IntervalArray' ,
416
+ examples = textwrap .dedent ("""\
417
+ Examples
418
+ --------
419
+ >>> pd.arrays.IntervalArray.from_tuples([(0, 1), (1, 2)])
420
+ <IntervalArray>
421
+ [(0, 1], (1, 2]]
422
+ Length: 2, closed: right, dtype: interval[int64]
423
+ """ ),
424
+ ))
411
425
def from_tuples (cls , data , closed = 'right' , copy = False , dtype = None ):
412
426
if len (data ):
413
427
left , right = [], []
@@ -886,7 +900,7 @@ def closed(self):
886
900
"""
887
901
return self ._closed
888
902
889
- _interval_shared_docs ['set_closed' ] = """
903
+ _interval_shared_docs ['set_closed' ] = textwrap . dedent ( """\
890
904
Return an %(klass)s identical to the current one, but closed on the
891
905
specified side
892
906
@@ -902,20 +916,25 @@ def closed(self):
902
916
-------
903
917
new_index : %(klass)s
904
918
919
+ %(examples)s\
920
+ """ )
921
+
922
+ @Appender (_interval_shared_docs ['set_closed' ] % dict (
923
+ klass = 'IntervalArray' ,
924
+ examples = textwrap .dedent ("""\
905
925
Examples
906
926
--------
907
- >>> index = pd.interval_range(0, 3 )
927
+ >>> index = pd.arrays.IntervalArray.from_breaks(range(4) )
908
928
>>> index
909
- IntervalIndex([(0, 1], (1, 2], (2, 3]],
910
- closed='right',
911
- dtype=' interval[int64]')
929
+ <IntervalArray>
930
+ [(0, 1], (1, 2], (2, 3]]
931
+ Length: 3, closed: right, dtype: interval[int64]
912
932
>>> index.set_closed('both')
913
- IntervalIndex([[0, 1], [1, 2], [2, 3]],
914
- closed='both',
915
- dtype='interval[int64]')
916
- """
917
-
918
- @Appender (_interval_shared_docs ['set_closed' ] % _shared_docs_kwargs )
933
+ <IntervalArray>
934
+ [[0, 1], [1, 2], [2, 3]]
935
+ Length: 3, closed: both, dtype: interval[int64]
936
+ """ ),
937
+ ))
919
938
def set_closed (self , closed ):
920
939
if closed not in _VALID_CLOSED :
921
940
msg = "invalid option for 'closed': {closed}"
@@ -1028,7 +1047,7 @@ def repeat(self, repeats, axis=None):
1028
1047
right_repeat = self .right .repeat (repeats )
1029
1048
return self ._shallow_copy (left = left_repeat , right = right_repeat )
1030
1049
1031
- _interval_shared_docs ['overlaps' ] = """
1050
+ _interval_shared_docs ['overlaps' ] = textwrap . dedent ( """
1032
1051
Check elementwise if an Interval overlaps the values in the %(klass)s.
1033
1052
1034
1053
Two intervals overlap if they share a common point, including closed
@@ -1039,7 +1058,7 @@ def repeat(self, repeats, axis=None):
1039
1058
1040
1059
Parameters
1041
1060
----------
1042
- other : Interval
1061
+ other : %(klass)s
1043
1062
Interval to check against for an overlap.
1044
1063
1045
1064
Returns
@@ -1053,11 +1072,7 @@ def repeat(self, repeats, axis=None):
1053
1072
1054
1073
Examples
1055
1074
--------
1056
- >>> intervals = pd.%(qualname)s.from_tuples([(0, 1), (1, 3), (2, 4)])
1057
- >>> intervals
1058
- <%(klass)s>
1059
- [(0, 1], (1, 3], (2, 4]]
1060
- Length: 3, closed: right, dtype: interval[int64]
1075
+ %(examples)s
1061
1076
1062
1077
>>> intervals.overlaps(pd.Interval(0.5, 1.5))
1063
1078
array([ True, True, False])
@@ -1071,9 +1086,20 @@ def repeat(self, repeats, axis=None):
1071
1086
1072
1087
>>> intervals.overlaps(pd.Interval(1, 2, closed='right'))
1073
1088
array([False, True, False])
1074
- """
1075
1089
1076
- @Appender (_interval_shared_docs ['overlaps' ] % _shared_docs_kwargs )
1090
+ """ )
1091
+
1092
+ @Appender (_interval_shared_docs ['overlaps' ] % dict (
1093
+ klass = 'IntervalArray' ,
1094
+ examples = textwrap .dedent ("""\
1095
+ >>> intervals = pd.arrays.IntervalArray.from_tuples([(0, 1), (1, 3),\
1096
+ (2, 4)])
1097
+ >>> intervals
1098
+ <IntervalArray>
1099
+ [(0, 1], (1, 3], (2, 4]]
1100
+ Length: 3, closed: right, dtype: interval[int64]
1101
+ """ ),
1102
+ ))
1077
1103
def overlaps (self , other ):
1078
1104
if isinstance (other , (IntervalArray , ABCIntervalIndex )):
1079
1105
raise NotImplementedError
0 commit comments