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

Pandas复杂查询求助:特定演员关联电影查询无结果排查

问题分析与解决

你的代码问题出在获取《Armageddon》主演时拿到的是Series对象,而非单个字符串,直接转成str会带上索引和元数据,导致后续匹配完全不生效,所以返回空结果。另外代码里的bruce变量未定义,属于笔误。

修正步骤:

  1. 正确提取《Armageddon》的actor_1_name
    原代码data.actor_1_name[data.movie_title == 'Armageddon']返回的是一个Series(就算只有一条数据),你需要提取其中的单个字符串值,用.iloc[0]或者.item()都可以:

    # 获取Armageddon的第一主演,得到字符串
    armageddon_actor1 = data.loc[data['movie_title'] == 'Armageddon', 'actor_1_name'].iloc[0]
    

    或者更简洁的写法:

    armageddon_actor1 = data[data['movie_title'] == 'Armageddon']['actor_1_name'].item()
    
  2. 完成第二个任务的匹配
    用拿到的字符串做条件筛选,注意逻辑与&的两侧条件要分别加括号:

    # 筛选actor_3_name为Piolo Pascual且actor_1_name是Armageddon主演的电影
    target_movies = data[(data['actor_3_name'] == 'Piolo Pascual') & 
                        (data['actor_1_name'] == armageddon_actor1)]
    # 提取并打印目标电影名
    print(target_movies['movie_title'])
    

额外优化(第一个任务)

如果确认票房67344392的电影只有一部,你可以直接提取单个值而非Series:

# 获取票房恰好为67344392的电影的actor_1_name
target_actor1 = data[data['gross'] == 67344392]['actor_1_name'].item()
print(target_actor1)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 11:03:32