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

如何在Polars中选取某列最后一个非空值及同行另一列的值

在Polars中获取最后一个非空值对应列的方法

你之前的代码仅单独提取了Open列最后一个非空值,但未将Time列与该值关联,导致无法拿到对应行的Time。

解决方案1:过滤非空行后取最后一行

直接筛选出Open不为空的所有行,再取最后一行,即可同时获取对应的Time和Open值:

sel = self.data.filter(pl.col('Open').is_not_null()).tail(1)

解决方案2:通过位置索引提取

先找到最后一个非空Open的位置索引,再提取对应行:

# 获取最后一个非空Open的索引
last_valid_idx = self.data.select(pl.col('Open').arg_last()).item()
# 提取该行数据
sel = self.data.slice(last_valid_idx, 1)

这两种方法都能精准拿到你需要的对应行数据。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.04 19:30:36