因此,我试图使用for循环为DatFrame中的所有连续变量绘制直方图,我已经使用countplot为分类变量完成了这一点,代码如下:
df1 = df.select_dtypes([np.object])
for i, col in enumerate(df1.columns):
plt.figure(i)
sns.countplot(x=col, data=df1)
我在这里找到的搜索。
但是现在我想用distplot做同样的事情,所以我试着修改上面的代码:
df1 = dftest.select_dtypes([np.int, np.float])
for i, col in enumerate(df1.columns):
plt.figure(i)
sns.distplot(df1)
但它只给了我一个空的情节。你觉得我能做什么?
编辑:例如DataFrame:
dftest = pd.DataFrame(np.random.randint(low=0, high=10, size=(5, 5)),
columns=['a', 'b', 'c', 'd', 'e'])
2条答案
按热度按时间xqkwcwgp1#
sns.distplot
已被sns.histplot
替换。请参见Emulating deprecated seaborn distplots以匹配distplot
。看起来你想生成一个 Dataframe 的每列都有
distplot
的图。因此,您需要指定每个特定图形使用的数据。正如seaborn documentation对于
distplot(a, ...)
所说的那样a
:系列、一维数组或列表。观测数据。所以在这个例子中:
hyrbngr72#
定义一个函数来绘制直方图
def histograms_plot(dataframe,features,rows,cols):
histograms_plot(df,df.columns,6,3)