ggcorrplot()

Também é possível criar plots de correlação usando ggplot. Para isso, você utilizará a biblioteca GGally.

library("GGally")

Agora você usará a função ggcorr(): Variáveis não métricas serão automaticamente excluídas.

ggcorr(pss)
## Warning in ggcorr(pss): data in column(s) 'district', 'gndr', 'edu', 'income'
## are not numeric and were ignored

No argumento adicional method, você pode especificar como lidar com NA's e qual tipo de correlação deve ser calculado (pearson, spearman, kendall):

ggcorr(
  pss,
  method = c(
    "pairwise",
    "pearson"
  )
)
## Warning in ggcorr(pss, method = c("pairwise", "pearson")): data in column(s)
## 'district', 'gndr', 'edu', 'income' are not numeric and were ignored

Além disso, você pode exibir os coeficientes de correlação com label = TRUE:

ggcorr(
  pss,
  method = c(
    "pairwise",
    "pearson"
  ),
  label = TRUE
)
## Warning in ggcorr(pss, method = c("pairwise", "pearson"), label = TRUE): data
## in column(s) 'district', 'gndr', 'edu', 'income' are not numeric and were
## ignored

Com o argumento label_round, você define o número de casas decimais:

ggcorr(
  pss,
  method = c(
    "pairwise",
    "pearson"
  ),
  label = TRUE,
  label_round = 2
)
## Warning in ggcorr(pss, method = c("pairwise", "pearson"), label = TRUE, : data
## in column(s) 'district', 'gndr', 'edu', 'income' are not numeric and were
## ignored

No argumento geom, você pode escolher entre tile, circle, text ou blank.

ggcorr(
  pss,
  method = c(
    "pairwise",
    "pearson"
  ),
  label = TRUE,
  label_round = 2,
  geom = "circle"
)
## Warning in ggcorr(pss, method = c("pairwise", "pearson"), label = TRUE, : data
## in column(s) 'district', 'gndr', 'edu', 'income' are not numeric and were
## ignored

Por último, você pode especificar três cores no argumento palette (\(-1\), \(0\), \(1\)) que formarão a escala de cores: Vou usar novamente o beyonce aqui! Importante: Você não está fornecendo toda a paleta aqui, mas sim uma cor de cada paleta, portanto, coloque um número adicional entre colchetes [..]!

ggcorr(
  pss,
  method = c(
    "pairwise",
    "pearson"
  ),
  label = TRUE,
  label_round = 2,
  geom = "circle",
  low = beyonce_palette(72)[1],
  mid = "white", 
  high = beyonce_palette(72)[2]
)
## Warning in ggcorr(pss, method = c("pairwise", "pearson"), label = TRUE, : data
## in column(s) 'district', 'gndr', 'edu', 'income' are not numeric and were
## ignored

Alternativamente, você também pode alterar os limits. Isso pode ser útil se seus valores de correlação não forem muito altos e todos estiverem muito fracamente coloridos. Com limits = FALSE, os pontos finais são definidos automaticamente (de acordo com os dados!).

ggcorr(
  pss,
  method = c(
    "pairwise",
    "pearson"
  ),
  label = TRUE,
  label_round = 2,
  geom = "circle",
  low = beyonce_palette(72)[1],
  mid = "white", 
  high = beyonce_palette(72)[2],
  limits = FALSE
)
## Warning in ggcorr(pss, method = c("pairwise", "pearson"), label = TRUE, : data
## in column(s) 'district', 'gndr', 'edu', 'income' are not numeric and were
## ignored

Importante: Em ggcorr(), valores não significativos não podem ser ocultados, pois a autora dessas funções (corretamente) é contra a focalização no nível de significância.

Para mais informações sobre as funcionalidades em ggcorr(), consulte aqui.

Agora vamos avançar para a representação de comparações de médias.