Pandas - Correlações de dados
Encontrando relacionamentos
Um grande aspecto do módulo Pandas é o corr()
método.
O corr()
método calcula a relação entre cada coluna em seu conjunto de dados.
Os exemplos nesta página usam um arquivo CSV chamado: 'data.csv'.
Baixe data.csv . ou Abra data.csv
Exemplo
Mostre a relação entre as colunas:
df.corr()
Resultado
Duration Pulse Maxpulse Calories Duration 1.000000 -0.155408 0.009403 0.922721 Pulse -0.155408 1.000000 0.786535 0.025120 Maxpulse 0.009403 0.786535 1.000000 0.203814 Calories 0.922721 0.025120 0.203814 1.000000
Nota:
O corr()
método ignora colunas "não numéricas".
Resultado explicado
O Resultado do corr()
método é uma tabela com muitos números que representam o quão bem está o relacionamento entre duas colunas.
O número varia de -1 a 1.
1 significa que existe uma relação de 1 para 1 (uma correlação perfeita), e para este conjunto de dados, cada vez que um valor subiu na primeira coluna, o outro também subiu.
0,9 também é uma boa relação, e se você aumentar um valor, o outro provavelmente aumentará também.
-0,9 seria uma relação tão boa quanto 0,9, mas se você aumentar um valor, o outro provavelmente diminuirá.
0,2 significa NÃO um bom relacionamento, o que significa que se um valor subir não significa que o outro subirá.
O que é uma boa correlação?
Depende do uso, mas acho que é seguro dizer que você tem que ter pelo menos 0.6
(ou -0.6
) para chamar de boa correlação.
Correlação Perfeita:
Podemos ver que "Duration" e "Duration" receberam o número 1.000000
, o que faz sentido, cada coluna sempre tem uma relação perfeita consigo mesma.
Boa correlação:
"Duração" e "Calorias" têm uma 0.922721
correlação, que é uma correlação muito boa, e podemos prever que quanto mais você treina, mais calorias você queima, e vice-versa: se você queima muitas calorias, você provavelmente teve um longo treino.
Correlação ruim:
"Duration" e "Maxpulse" obtiveram uma 0.009403
correlação, que é uma correlação muito ruim, o que significa que não podemos prever o pulso máximo apenas observando a duração do treino e vice-versa.
Obter certificação!
$ 10 INSCRIÇÃO