遍历数据框列并绘制所有变量?

我有35个变量的列表,想绘制所有变量直方图以查看分布类型。

fig,axs = plt.subplots(6,6)
for i in range(6):
    for j in range(6):
        for column in X.columns:
            axs[i,j] = sns.distplot(X[column],hist=True,kde=True,bins=int(180/5),color = 'darkblue',hist_kws={'edgecolor':'black'},kde_kws={'linewidth': 4})
            axs[i,j].set_title(column)

当前它仅打印最后的第35个变量。

wang2005727 回答:遍历数据框列并绘制所有变量?

这个小小的改变应该可以解决问题:

fig,axs = plt.subplots(6,6)
for i in range(6):
    for j in range(6):
        if (i*6) + j > 33:
            break
        curr_column = X.columns[(i*6) + j]
        sns.distplot(X[curr_column],hist=True,kde=True,ax=axs[i,j],bins=int(180/5),color = 'darkblue',hist_kws={'edgecolor':'black'},kde_kws={'linewidth': 4})
        axs[i,j].set_title(curr_column)
本文链接:https://www.f2er.com/3160988.html

大家都在问