【发布时间】:2018-12-07 17:56:30
【问题描述】:
这是我的数据框df:
col1 col2
-0.441406 2.523047
-0.321105 1.555589
-0.412857 2.223047
-0.356610 2.513048
当我检查df 时,我看到有一些无限值。
np.any(np.isnan(df))
np.all(np.isfinite(df))
False
True
NaN 和无穷大有什么区别?另外,如何在np.all(np.isfinite(X)) 中删除所有无限值以获取 True?
这是我尝试过的:
df = df.replace([np.inf, -np.inf], np.nan).dropna(how="all")
但infinite 的检查仍然给我 True。
此外,.apply(lambda s: s[np.isfinite(s)].dropna()).count() 给我的所有列的行数与简单的df.shape 相同,这表明缺少无限值。但在这种情况下,为什么np.all(np.isfinite(df)) 返回 True?
【问题讨论】: