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

如何统计字符串中的数值数量并筛选含4个以上数字的行

筛选包含4个以上数字的行

以下是两种基于Python pandas的实现方法,可直接用于筛选目标行:

方法一:遍历字符统计数字数量

先构造示例数据,再通过apply遍历每个字符串中的字符,统计数字个数后筛选:

import pandas as pd

# 构造示例数据
data = {
    'row_num': [1, 2, 3, 4],
    'column_1': ['fje8q934yeufoeha', '08kfdjaehewaoffe', '6fdiuewwiaei3eew', 'jfe0293ujfid22fe']
}
df = pd.DataFrame(data)

# 统计每行的数字个数
df['digit_count'] = df['column_1'].apply(lambda x: sum(c.isdigit() for c in x))
# 筛选数字个数大于4的行,移除临时统计列
result = df[df['digit_count'] > 4].drop('digit_count', axis=1)
print(result)

方法二:正则表达式提取数字

利用正则匹配所有数字字符,通过匹配结果的长度统计数字个数:

import pandas as pd
import re

# 构造示例数据
data = {
    'row_num': [1, 2, 3, 4],
    'column_1': ['fje8q934yeufoeha', '08kfdjaehewaoffe', '6fdiuewwiaei3eew', 'jfe0293ujfid22fe']
}
df = pd.DataFrame(data)

# 提取数字并统计数量
df['digit_count'] = df['column_1'].apply(lambda x: len(re.findall(r'\d', x)))
# 筛选符合条件的行
result = df[df['digit_count'] > 4].drop('digit_count', axis=1)
print(result)

两种方法执行后都会输出符合条件的行:

row_numcolumn_1
4jfe0293ujfid22fe

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 22:25:48