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

如何处理Seaborn绘制pairplot时的无穷值警告?

解决Seaborn pairplot的无穷值警告问题

这个警告是因为Seaborn内部依赖的use_inf_as_na参数已被pandas弃用,官方要求提前把无穷值转换成NaN再处理。按以下步骤修改代码即可解决:

  • 导入numpy(需用到np.inf和np.nan)
  • 将数据中的正无穷、负无穷全部替换为NaN
  • 可选:删除包含NaN的行(如果需要保留行,也可以用均值/中位数填充NaN,不过pairplot场景下删除缺失行最直接)
  • 执行pairplot绘制

修改后的完整代码:

import seaborn as sns
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd

# 替换无穷值为NaN
clean_df = df_train[cols].replace([np.inf, -np.inf], np.nan)
# 删除含NaN的行(若需保留行,可替换为填充逻辑:clean_df = clean_df.fillna(clean_df.mean()))
clean_df = clean_df.dropna()

# 绘制pairplot
sns.pairplot(clean_df, height=2.5)
plt.show()

若不想删除行,也可以用填充方式处理NaN,比如用列的均值填充:

clean_df = clean_df.fillna(clean_df.mean())

这样处理后,Seaborn就能正常绘制pairplot,不会再弹出弃用警告。

内容的提问来源于stack exchange,提问作者José Antonio Pino Morales

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.21 18:22:01