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

Pandas如何删除location列含非字母值或空值的对应行

Pandas删除location列含非英文字母/空值行的实现方案

你之前的代码仅修改列内字符,没有做行过滤逻辑,自然无法删除不符合要求的整行。正确实现如下:

核心实现代码

# 直接在原数据上过滤,仅保留location列全为英文字母且非空的行
data = data[data['location'].str.fullmatch(r'[a-zA-Z]+', na=False)]

# 如果需要保留原数据,存为新变量的写法
test = data[data['location'].str.fullmatch(r'[a-zA-Z]+', na=False)].copy()

代码说明

  • str.fullmatch(r'[a-zA-Z]+'):要求整行location字段完全由一个或多个英文字母组成,只要存在非英文字母就会判定为不匹配
  • na=False:空值(NaN)会被直接判定为不匹配,自动排除空值行
  • 外层的布尔索引会筛选所有判定为匹配的行,不符合要求的行直接被过滤删除

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 08:24:00