gpt4 book ai didi

python - 每月基于列的大值的子集数据框

转载 作者:行者123 更新时间:2023-12-02 15:56:14 25 4
gpt4 key购买 nike

我有一个这样的 df:

<表类="s-表"><头><日>月 股票MV<正文>1994-07一个501994-07B601994-07C701994-07D801994-08一个901994-08B601994-08C701994-08D951994-08E1001994-08F110

我想以一种我每月只有最高 MV 的 50% 的方式对我的 df 进行子集化。对于 July/1994,我只有 4 个股票,所以 50% 将是 2 个最高的 MV。之后的一个月,我有 6 只股票,这给了我 3 个最高值:

<表类="s-表"><头><日>月 股票MV<正文>1994-07C701994-07D801994-08D951994-08E1001994-08F110

我试过:

df = df.groupby(pd.Grouper(freq="M")).nlargest(2, "MV")

但我收到错误:AttributeError: 'DataFrameGroupBy' object has no attribute 'nlargest'此外,每个月的 n 值都需要不同。我也不确定如何处理。

最佳答案

df.groupby('month').apply(lambda monthly_data: monthly_data[monthly_data['MV'] >= monthly_data['MV'].median())

关于python - 每月基于列的大值的子集数据框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71468905/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com