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

如何修改代码让下拉框展示两个DataFrame共有的Opp名称?

解决方法

修改后的代码如下:

[{'label': i, 'value': i} for i in sorted(dff[dff.Opp.isin(df2['Name'])]['Opp'].unique())]

问题分析

你原来的代码dff.Opp.isin(df2['Name'])返回的是布尔值序列(每个元素对应dff中Opp列的值是否存在于df2的Name列),后续调用.unique()得到的就是[True, False]这两个值,所以下拉框才会显示这两个选项。

修改逻辑

  1. 先用dff.Opp.isin(df2['Name'])作为筛选条件,从dff中提取出Opp列值存在于df2 Name列的行
  2. 从筛选后的结果中取出Opp列,再调用.unique()得到所有共有的唯一值
  3. 最后对这些值排序,生成下拉框需要的label和value结构

验证结果

结合你给出的DataFrame示例,修改后的代码会生成:

[{'label': 'Test2', 'value': 'Test2'}, {'label': 'Test4', 'value': 'Test4'}]

完全符合你预期的下拉框选项。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.25 23:31:36