Skip to content

Commit 885e299

Browse files
code sample for backport pandas-dev#37305
1 parent f15701b commit 885e299

File tree

1 file changed

+74
-0
lines changed

1 file changed

+74
-0
lines changed

bisect/37305.py

+74
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
import numpy as np
2+
import pandas as pd
3+
4+
print(pd.__version__)
5+
6+
df = pd.DataFrame(
7+
{"col": range(10)}, index=pd.date_range("2012-01-01", periods=10, freq="20min")
8+
)
9+
df
10+
11+
df.index
12+
13+
# res = df.resample("H").apply(lambda group: len(group["col"].unique()))
14+
# res
15+
16+
# res.index
17+
18+
res = df.resample("H")
19+
res
20+
21+
res.axis
22+
23+
res.binner
24+
25+
res.grouper
26+
27+
res._set_binner()
28+
res
29+
30+
res.binner
31+
32+
res.grouper
33+
34+
func = lambda group: len(group["col"].unique())
35+
func
36+
37+
# from pandas.core.aggregation import aggregate
38+
39+
# result, how = aggregate(res, func)
40+
# result, how # (None, True)
41+
42+
# res.binner
43+
# # DatetimeIndex(['2012-01-01 00:00:00', '2012-01-01 01:00:00',
44+
# # '2012-01-01 02:00:00', '2012-01-01 03:00:00',
45+
# # '2012-01-01 04:00:00'],
46+
# # dtype='datetime64[ns]', freq='H')
47+
48+
# res.grouper
49+
# # <pandas.core.groupby.ops.BinGrouper at 0x2768ebbc550>
50+
51+
obj = res._selected_obj
52+
obj
53+
54+
obj is df
55+
56+
obj.index
57+
58+
grouper = res.grouper
59+
grouper
60+
61+
axis = res.axis
62+
axis
63+
64+
from pandas.core.groupby.groupby import get_groupby
65+
66+
grouped = get_groupby(obj, by=None, grouper=grouper, axis=axis)
67+
grouped
68+
69+
# result = grouped._aggregate_item_by_item(func)
70+
71+
result = grouped.apply(func)
72+
print(result)
73+
74+
assert result.index.freq is None

0 commit comments

Comments
 (0)