You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何计算DataFrame中对应某列前X个最高值行的price列均值

解决方法:提取指定列前X个最高值对应的price列均值

别慌,这个需求用Pandas的内置函数就能轻松搞定,两步就能出结果:

方法一:用nlargest(推荐,大数据量下更高效)

nlargest可以直接筛选出目标列前X个最大值对应的行,接着提取这些行的price列计算均值就好。

举个具体例子,假设你要取TTM_Si列前3个最高值对应的price均值,代码如下:

# 把X替换成你需要的数量,把'TTM_Si'替换成你要参考的目标列(比如TTM_F、Rev_Met都适用)
X = 3
target_column = 'TTM_Si'
top_x_price_mean = summary_percent_df.nlargest(X, target_column)['price'].mean()

方法二:先排序再取前X行

如果你更习惯用排序的思路,也可以先对目标列降序排序,再取前X行计算均值:

X = 3
target_column = 'TTM_Si'
top_x_price_mean = summary_percent_df.sort_values(target_column, ascending=False).head(X)['price'].mean()

用你的数据验证一下

拿你给出的数据集举例,取TTM_Si前3个最高值的行:

  • HELE(TTM_Si=0.005513)对应price=0.629727
  • REV(TTM_Si=-0.016126)对应price=0.218214
  • IPAR(TTM_Si=-0.024999)对应price=0.705969

计算均值:(0.629727 + 0.218214 + 0.705969) / 3 ≈ 0.51797,用上面的代码跑出来结果完全一致。

只要替换X和target_column,就能适配你想要的任意列和任意前X个最大值的需求啦!

内容的提问来源于stack exchange,提问作者TEKOrchestrator

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 04:06:39