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

基于TrialNumber与BlockNumber多条件筛选DataFrame的Stimulus值

Pandas DataFrame 多条件筛选解决方案

当然可以实现一行代码完成这个多条件筛选!Pandas提供了几种简洁的方式来满足你的需求,下面给你两种常用的写法:

方法一:使用loc布尔索引

这是Pandas最标准的筛选方式,逻辑清晰直观:

target_stimulus = plot_data.loc[(plot_data['TrialNumber'] == 99) & (plot_data['BlockNumber'] == 8), 'Stimulus'].values[0]
  • 这里的(plot_data['TrialNumber'] == 99) & (plot_data['BlockNumber'] == 8)是组合的布尔条件,注意每个条件都要加括号,并且用&表示逻辑与
  • loc方法的第一个参数是筛选的行条件,第二个参数指定要提取的列Stimulus
  • .values[0]是将筛选得到的Series转换为单个值(对应你要的目标值34)

方法二:使用query方法(更贴近自然语言)

如果你偏爱更简洁的语法,可以用query方法,写法像日常描述一样:

target_stimulus = plot_data.query('TrialNumber == 99 and BlockNumber == 8')['Stimulus'].values[0]

这种方式不需要处理括号和逻辑运算符的格式,可读性拉满,适合快速编写筛选逻辑。

两种方法都能直接帮你拿到目标的Stimulus值,选你觉得顺手的用就好~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.06 09:59:09