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

如何筛选Pandas DataFrame中含空格的行并统计行数

Pandas筛选任意单元格含空格的行并统计行数

步骤1:生成每行的布尔判断标记

先对DataFrame的每个单元格检查是否包含空格,再判断每行是否存在至少一个含空格的单元格,得到一个布尔序列:

import pandas as pd

li = [['erer','sfsddf', 'dfdf dfdf'],['erer','sfs/ df', 'dfdf dfdf'],['erer','sfsd/df', 'dfdf dfdf'],['er/er','sfsddf', 'dfdf dfdf'],['er/er','sfsddf', 'dfdf dfdf'],['er er','sfsddf', 'dfdf dfdf']]
df = pd.DataFrame(li, columns=[str(i) for i in range(3)])

# 生成每行是否存在含空格单元格的布尔序列
has_space = df.apply(lambda col: col.str.contains(' ', na=False)).any(axis=1)

说明:col.str.contains(' ', na=False)检查列中每个元素是否含空格,any(axis=1)判断每行是否至少有一个True(即该行有单元格含空格)

步骤2:筛选原DataFrame

用上述布尔序列过滤原DataFrame,保留任意单元格含空格的行:

# 筛选出符合条件的行
filtered_df = df[has_space]

步骤3:统计行数

直接通过len()或shape[0]获取筛选后的数据行数:

# 统计行数
row_count = len(filtered_df)
# 或者用 row_count = filtered_df.shape[0]
print(f"含空格的行数:{row_count}")

简化写法

可以把步骤合并成一行代码:

filtered_df = df[df.apply(lambda col: col.str.contains(' ', na=False)).any(axis=1)]
row_count = len(filtered_df)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.16 19:25:22