Я пытаюсь сделать следующее с пандами.Подсчет по штату с последующим выражением этого числа в процентах от промежуточной суммы.Мой фрейм данных имеет необработанные данные.Я могу получить количество, но как добавить еще один столбец для процентов?
state_grp = df.groupby(by=['date', 'state','ad_type'])
state_grp.ad_type.agg(['count'])

Я написал несколько sql, которые будут делать то же самоевещь, но как это сделать в пандах?
with cte1 as
(
select distinct date, state, ad_type, count(ad_type) over (partition by date, state, ad_type) as [# of Ads]
from propertylistings
),
cte2 as
(
select *, sum([# of Ads]) over (partition by state) as subtotal
from dhg
)
select date, state, ad_type, [# of Ads], round(cast([# of Ads] as float)/cast(subtotal as float) * 100, 1) as [%]
from cte2
order by date, state, ad_type
