Python:许多变量的非常大的相关热图

时间:2018-07-05 00:28:00

标签: python pandas

我编写了以下代码,显示了Pandas DataFrames的相关矩阵/热图。它适用于具有20个或更少变量的DataFrame。但是,我正在寻找一种可以轻松处理许多变量的智能方法/功能,例如通过生成多个热图,以便将所有变量相互比较。

例如,具有100个变量的数据框将不会在单个相关性热图中一致地显示。

import seaborn as sns
fig, ax = plt.subplots(figsize=(15, 15))                   # Sample figsize in inches

cmap = sns.diverging_palette( 220 , 10 , as_cmap = True )  # color map
sns.heatmap(data      = df.corr(), 
            cmap      = cmap, 
            square    = True, 
            cbar_kws  = {'shrink': .3}, 
            annot     = True, 
            annot_kws = {'fontsize': 12},
            ax        = ax
           )

以下是可视化此问题的一种方法。我们来看一个玩具的例子。假设我们有一个包含6个变量的数据框:[a, b, c, d, e, f],并且并非所有6个变量都可以容纳1个热图。我猜想解决方案将必须将列划分为多个分区,例如[a, b][c, d][e, f]

enter image description here

1 个答案:

答案 0 :(得分:0)

尝试切片数据框。假设您有100个变量要分成50个部分,分成2个部分

sns.heatmap(df.iloc[:,:50].corr())
sns.heatmap(df.iloc[:,50:].corr())