使用.loc方法筛选数据报错求助:提取DataFrame英国地区rating列
问题排查与修正
你的代码存在两个核心问题:
- 直接使用
company_location变量做判断,但这个变量并未定义,应该基于DataFrame的列来指定行筛选条件 - 逻辑顺序错误:你先提取了所有行的
rating列,再做条件判断,完全达不到筛选目标行的效果
正确代码
uk_ratings = choco_df.loc[choco_df["company_location"] == "U.K.", "rating"]
类比SQL写法帮你理解
你要实现的逻辑对应SQL语句:
SELECT rating FROM choco_df WHERE company_location = 'U.K.'
Pandas的.loc语法结构是[行筛选条件, 列名],刚好对应SQL里WHERE(行筛选)+SELECT(列选择)的逻辑。
内容的提问来源于stack exchange,提问作者Sarah
相关产品推荐
相关产品推荐

