从 Pandas DataFrame 中删除具有 NaN 值的行
Pandas DataFrame 可以包含表示为 NaN 的缺失值。这可能会给操作数据带来挑战。本文介绍如何有效地删除特定列包含 NaN 值的行。
问题:
考虑以下 DataFrame,我们只想保留 ' EPS 的专栏不是NaN:
STK_ID EPS cash STK_ID RPT_Date 601166 20111231 601166 NaN NaN 600036 20111231 600036 NaN 12 600016 20111231 600016 4.3 NaN 601009 20111231 601009 NaN NaN 601939 20111231 601939 2.5 NaN 000001 20111231 000001 NaN NaN
解决方案:
要删除“EPS”列中具有 NaN 值的行,我们可以使用 notna() 函数。此函数创建一个布尔掩码,其中 True 表示非 NaN 值。
df = df[df['EPS'].notna()]
此操作将仅选择 'EPS' 不为 NaN 的行,从而产生以下 DataFrame:
STK_ID EPS cash STK_ID RPT_Date 600016 20111231 600016 4.3 NaN 601939 20111231 601939 2.5 NaN
通过使用 notna() 函数,我们可以有效过滤掉指定列中包含 NaN 值的行。
以上是如何删除特定 Pandas DataFrame 列中具有 NaN 值的行?的详细内容。更多信息请关注PHP中文网其他相关文章!