Visualizar correlaciones en Python

En este post veremos como graficar correlaciones de una matrix de diseño multidimensional usando un correlograma con Python, Pandas y Seaborn.

Seaborn es una biblioteca para visualizar datos. Posee similares características a R.

Calcular correlaciones

Para hacer esto basta con utilizar el método ‘pandas.DataFrame.corrs()’. El método regresa un dataframe de salida. Esta estructura será utilizada por la funcion ‘heatmap’ de Seaborn.

Código:

Supongamos que tenemos un Pandas DataFrame llamado TDF.

Nota de actualización: Por alguna razón se perdió la imagen original. La estoy sustituyendo por otro correlograma. Este sin embargo no proviene de una “Matríz de diseño” si no de un modelo condicional de autocorrelación espacial. Aquí simplemente convertí la matriz generada por MCMC  que representa regiones geográficas como columnas y muestras (iteraciones) como renglones. El patrón es muy hermoso, da una apariencia textil, aunque no esta relacionado a esto en absoluto pues solo muestra la correlación entre regiones geográficas de un modelo CAR.

El código para desarrollar esto fue hecho en STAN y tengo pensado subirlo pronto. Por lo pronto, aquí les dejo la imágen y el código para visualizarlo.

import seaborn as sb
## El objecto cadenaMCMC fue generado por STAN (extract) 
phidf = pd.DataFrame(cadenaMCMC['phi'])
correlaciones = phidf.corr()
sb.heatmap(correlaciones)