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

Pandas如何识别Series中的nan值 泰坦尼克号数据集Embarked列筛选问题

问题根因
  • pandas 读取数据时默认把空值识别为numpy.nan(浮点型),而nan的核心特性是不等于任何值,包括它本身,因此你用== 'nan'或者== np.nan的匹配逻辑永远返回False,自然筛选不到目标行。
解决方案

方案1:单独筛选Embarked列的空值行

使用pandas内置的isna()空值判定方法即可精准匹配:

import pandas as pd
df = pd.read_csv(<file_loc>, header=0)
# 筛选Embarked列为空的行
embarked_nan_rows = df[df['Embarked'].isna()]

方案2:直接筛选取值非'S'/'C'/'Q'的行(匹配你的核心需求)

不用单独判断空值,用isin()方法取反即可自动覆盖空值场景:

# 筛选所有Embarked取值不在指定列表中的行
invalid_embarked_rows = df[~df['Embarked'].isin(['S', 'C', 'Q'])]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 21:24:04