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

如何从Pandas DataFrame中提取指定开头的字符串?

解决Pandas DataFrame提取以CA开头字符串的问题

以下是几种可靠的实现方法,附代码示例:

方法1:使用str.startswith()筛选(最直观)

这个方法专门用于判断字符串前缀,无需正则表达式,代码简洁:

import pandas as pd

# 构造示例数据
data = {'Column1': ['CA_1', 'CA_2', 'CA_3', 'BA_1', 'BA_2', 'BA_3', 'CA_4', 'BA_12', 'CA_6']}
df = pd.DataFrame(data)

# 筛选Column1以CA开头的行
filtered_df = df[df['Column1'].str.startswith('CA')]

执行后filtered_df将只保留Column1值为CA_1、CA_2、CA_3、CA_4、CA_6的行。

方法2:使用str.contains()正则匹配

如果需要更灵活的正则规则,用^CA表示匹配以CA开头的字符串(^是正则里的行首锚定符):

filtered_df = df[df['Column1'].str.contains(r'^CA', regex=True)]

若之前使用contains失败,大概率是没加^,导致匹配到字符串中间包含CA的情况。

方法3:使用str.extract()提取并过滤

如果需要从Column1中提取符合条件的内容(比如字段内有多个字符串的场景),可以用提取+去空值的方式:

# 提取以CA开头的完整字符串,不符合的会返回NaN
df['CA_values'] = df['Column1'].str.extract(r'(^CA.*)')
# 过滤掉空值行
filtered_df = df.dropna(subset=['CA_values'])

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 04:25:31