大家好!我从数据接口导入了一个dataframe,其中内容是截止2021年12月31日所有基金的持仓情况,如下图:
ts_code: 基金代码
symbol: 所持股票代码
mkv: 持有股票市值(元)
amount: 持有股票数量(股)
stk_mkv_ratio: 占股票市值比
stk_float_ratio: 占流通股本比例
问题一:
我现在需要使用groupby对symbol分组计算其中每个股票的mkv、amount、stk_mkv_ratio、stk_float_ratio之和,并且保留其原始明细数据,请问应该怎么做?
问题二:
下图是我将dataframe导入excel后用数据透视表对每个股票的stk_mkv_ratio(占股票市值比)求和的结果,可以看到标黄的部分显示,对股票000001.SZ的求和结果大于100%,理论上基金的持股占股票市值的比例不可能超过100%,请问这是怎么回事?如果您知道请告知,谢谢!
1、groupby之后不会保留原始数据。比较好的做法是agg之后添加行。当然也可以直接添加行(对所有列求和)
2、原始数据的问题,例如数据并不是同时统计的。(有些情况下A基会持有B基。。。。)