Seaborn调用countplot触发FutureWarning警告的修复方法
问题原因
Seaborn 自0.12版本开始调整了函数传参规范:仅data支持作为位置参数传入,其余绘图相关的参数必须显式指定关键字,旧版本直接传列名作为第一个位置参数的写法会触发该警告。
修复方案
只需要给countplot的第一个参数显式添加x关键字即可,修改后代码如下:
plt.figure(figsize = (15,30)) for i in enumerate(feature): plt.subplot(6, 3, i[0]+1) # 新增x=关键字声明 sns.countplot(x = i[1], hue = 'Loan_Status', data = Loan_data )
*可选优化:可以把enumerate的返回值拆分为索引和列名两个变量,提升代码可读性:
plt.figure(figsize = (15,30)) for idx, col_name in enumerate(feature): plt.subplot(6, 3, idx+1) sns.countplot(x = col_name, hue = 'Loan_Status', data = Loan_data )
如果需要绘制横向的计数柱状图,把x关键字替换为y即可。
内容的提问来源于stack exchange,提问作者Keeran
相关产品推荐
相关产品推荐

