-
-
Notifications
You must be signed in to change notification settings - Fork 19.4k
Open
Labels
Accessorsaccessor registration mechanism (not .str, .dt, .cat)accessor registration mechanism (not .str, .dt, .cat)EnhancementIntervalInterval data typeInterval data type
Description
similar to how we work with .dt, .str, and .cat accessors, it might be nice to expose an .interval accessor; in particular this might make nice indexing expressions, xref to #16316
In [13]: df = pd.DataFrame({'month': [1, 1, 2, 2], 'distances': range(4), 'value': range(4)})
In [14]: df
Out[14]:
distances month value
0 0 1 0
1 1 1 1
2 2 2 2
3 3 2 3
In [15]: result = df.groupby(['month', pd.cut(df.distances, 2)]).value.mean()
In [16]: result
Out[16]:
month distances
1 (-0.003, 1.5] 0.5
2 (1.5, 3.0] 2.5
Name: value, dtype: float64
In [17]: pd.IntervalIndex(result.index.get_level_values('distances')).left
Out[17]: Float64Index([-0.003, 1.5], dtype='float64')
In [18]: pd.IntervalIndex(result.index.get_level_values('distances')).right
Out[18]: Float64Index([1.5, 3.0], dtype='float64')
In [19]: pd.IntervalIndex(result.index.get_level_values('distances')).mid
Out[19]: Float64Index([0.7485, 2.25], dtype='float64')
Metadata
Metadata
Assignees
Labels
Accessorsaccessor registration mechanism (not .str, .dt, .cat)accessor registration mechanism (not .str, .dt, .cat)EnhancementIntervalInterval data typeInterval data type