使用 Pandas DataFrame 时,有效处理丢失的数据至关重要。一项常见任务是删除特定列包含 NaN 值的行。
考虑以下 DataFrame:
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 值的所有行,结果如下DataFrame:
STK_ID EPS cash STK_ID RPT_Date 600016 20111231 600016 4.3 NaN 601939 20111231 601939 2.5 NaN
要完成此任务,您可以使用 df.dropna() 方法,该方法会删除任意值的行指定列中的值为 NaN。但是,在这种情况下,您只想删除“EPS”列包含 NaN 的行。要将其专门应用于“EPS”列,请使用以下代码:
df = df[df['EPS'].notna()]
此代码检查 DataFrame 中的每一行“EPS”列中的值是否为 NaN,以及是否为 NaN不,它保留行。如果为 NaN,则删除该行。生成的 DataFrame 将仅包含“EPS”列具有非 NaN 值的行。
以上是如何从特定的 Pandas DataFrame 列中删除具有 NaN 值的行?的详细内容。更多信息请关注PHP中文网其他相关文章!