Используйте панд для построения наивысших корреляций - PullRequest
0 голосов
/ 27 мая 2019

Я строил корреляции с помощью тепловых карт со следующим кодом.Однако переменных слишком много.Можно ли построить на графике самые высокие корреляции (более 0,5 и -5)?

plt.rcParams['figure.figsize'] = [80,80]
corr3 = datasetcm.corr()


fig = plt.figure()
ax = fig.add_subplot(111)
cax = ax.matshow(corr3,cmap='coolwarm', vmin=-1, vmax=1)
fig.colorbar(cax)
ticks = np.arange(0,len(datasetcm.columns),1)
ax.set_xticks(ticks)
plt.xticks(rotation=90)
ax.set_yticks(ticks)
ax.set_xticklabels(datasetcm.columns)
ax.set_yticklabels(datasetcm.columns)
plt.show()

1 Ответ

1 голос
/ 27 мая 2019

Отфильтруйте вашу корреляционную матрицу на пороге 0,5 перед построением графика. Это вернет 0 для корреляций ниже, чем 0.5.

Тогда мы можем использовать цветовое отображение, чтобы показать строки с 0 как not correlated

corr3 = datasetcm.corr()
corr3 = corr3 [corr3 > 0.5].fillna(0)

corr3.style.background_gradient(cmap='coolwarm', axis=None).set_precision(2)

enter image description here

...