python - 如何对“groupby”执行操作,例如美元重量等
问题描述
全部,
我有一个看起来像这样的 DF:
allHoldingsLookUp[['carry_dt','sedol','notional_current','carry_rate']]
carry_dt sedol notional_current carry_rate
21579 2018-05-18 B27WYK0 1.476290e+05 75.00
21659 2018-05-18 6433912 2.029608e+02 40.00
21992 2018-05-18 2386009 3.002272e+05 100.00
22453 2018-05-18 B671GT8 1.610390e+06 75.00
22700 2018-05-18 6350260 2.582623e+06 55.00
22722 2018-05-18 6418801 1.947338e+06 75.00
22839 2018-05-18 6683416 3.062509e+02 600.00
22917 2018-05-18 6180230 2.594927e+06 40.67
23011 2018-05-18 7302215 2.774702e+05 125.00
23043 2018-05-18 B04QR13 1.113231e+06 60.00
23069 2018-05-18 BYXZ2W5 4.182451e+05 100.00
23120 2018-05-18 6444066 9.507816e+05 35.00
23136 2018-05-18 6683449 1.701068e+06 35.00
23476 2018-05-18 BDVLJ72 1.004499e+07 40.00
23491 2018-05-18 BDVLJ72 1.875754e+05 200.00
23533 2018-05-18 B73XCZ3 3.313149e+02 40.00
23595 2018-05-18 BF20GG0 6.167594e+05 150.00
23620 2018-05-18 B671GT8 9.426840e+05 50.00
23674 2018-05-18 2599131 5.370326e+04 500.00
23824 2018-05-18 6568610 2.244832e+06 35.00
23831 2018-05-18 2311120 1.158353e+06 50.00
23836 2018-05-18 B04QR13 6.560241e+05 125.00
23914 2018-05-18 2599131 1.127563e+06 100.00
23926 2018-05-18 B3L2NF1 2.280907e+06 42.51
24014 2018-05-18 6771645 2.457539e+06 40.00
24067 2018-05-18 6536684 2.954588e+05 100.00
24238 2018-05-18 B613DJ9 1.055963e+06 47.00
24240 2018-05-18 2458771 6.187657e+02 20.00
24294 2018-05-18 6490917 2.855108e+06 35.00
24414 2018-05-18 2639349 1.483675e+05 50.00
现在我通常很容易做标准的分组操作,例如
allHoldingsLookUp.groupby(['carry_dt', 'sedol'], as_index=False)['carry_rate'].agg({"availMin": "min", "availSum":lambda x: sum(x)})
现在我想通过涉及另一列“notional_current”对 groupby 执行操作
我如何“名义上”加权“carry_rate”列?IE,
在 excel 中它会与此类似。
sumproduct(allHoldingsLookUp['notional_current'],allHoldingsLookUp['carry_rate'])/sum(allHoldingsLookUp['notional_current'])
更一般地说,我如何通过涉及另一列对“分组依据”执行操作?
非常感谢
解决方案
推荐阅读
- python - Django 搜索
- bash - 如何在 K8s pod 中执行但使用外部的 bash_profile?
- annotations - Mybatis注解与Typehandlers Bad语法错误
- api - 我无法将 GSuite Marketplace API 的可见性设置为 PUBLIC
- reactjs - 无法访问 handleSubmit 中的状态
- oracle - 将脏块写入磁盘仅在提交时执行?
- c++ - 如何为非成员和成员函数指针部分专门化结构模板
- excel - 累积输入到单个 Excel 单元格中的值
- java - 无法运行:系统找不到文件C:\ProgramData\Oracle\Java\javapath\java.exe
- python - 你将如何在 Python 中绘制这个 3D 可视化?