Código
library(tidyverse)
library(readxl)
library(gtsummary)
library(gt)
library(qqplotr)
library(nortest)
library(parameters)
library(performance)library(tidyverse)
library(readxl)
library(gtsummary)
library(gt)
library(qqplotr)
library(nortest)
library(parameters)
library(performance)tidyverse (Wickham, Averick, et al. 2019) para manipulação de dados.readxl (Wickham, Bryan, et al. 2019) para leitura de arquivos Excel.gtsummary (Sjoberg et al. 2021) para criação de tabelas e estatísticas descritivas.gt (Iannone et al. 2025) para criação de tabelas.qqplotr (Almeida, Loy, e Hofmann 2018) para criação deQQ-plots.nortest (Gross, Ligges, e Ligges 2015) para testes de normalidade.parameters (Lüdecke et al. 2020) para análise de modelos.performance (Lüdecke et al. 2021) para análise de modelos.df <- read_excel("data/Tabela 1 Estatistica - Otavio.xlsx")
# Convertendo a coluna Altura para numérica
df <- df |>
mutate(Altura = as.numeric(Altura))Dataset com 66 participantes e 12 variáveis.
df |>
gtsummary::tbl_summary(
include = c(
Sexo,
Idade,
Altura,
Peso
),
statistic = list(
gtsummary::all_continuous() ~ "{mean} ({sd})",
gtsummary::all_categorical() ~ "{n} ({p}%)"
)
)| Characteristic | N = 661 |
|---|---|
| Sexo | |
| Feminino | 52 (79%) |
| Masculino | 14 (21%) |
| Idade | 25.6 (5.9) |
| Altura | 1.66 (0.09) |
| Peso | 64 (11) |
| 1 n (%); Mean (SD) | |
df |>
select(Cinesiofobia) |>
summarise(
Média = round(mean(Cinesiofobia), 2),
Mediana = round(median(Cinesiofobia), 2),
DesvioPadrão = round(sd(Cinesiofobia), 2),
Mínimo = round(min(Cinesiofobia), 2),
Máximo = round(max(Cinesiofobia), 2)
) |>
t() |>
as.data.frame() |>
rownames_to_column(var = "Métricas") |>
gt::gt() |>
gt::tab_options(column_labels.hidden = TRUE)| Média | 38.82 |
| Mediana | 38.00 |
| DesvioPadrão | 5.54 |
| Mínimo | 20.00 |
| Máximo | 52.00 |
df |>
ggplot(aes(x = "", y = Cinesiofobia)) +
PupillometryR::geom_flat_violin(
position = position_nudge(x = .2),
# fill = "steelblue",
alpha = 0.7
) +
labs(
title = "Distribuição da Cinesiofobia",
x = "", y = "Cinesiofobia"
) +
geom_point(
aes(
# color = Cinesiofobia
),
position = position_jitter(w = .15),
# size = 2
) +
geom_boxplot(
width = .25,
# fill = "steelblue",
alpha = 0.7,
outlier.shape = NA
) +
coord_flip() +
theme_minimal() +
theme(
axis.title.y = element_blank(),
axis.text.y = element_blank(),
axis.ticks.y = element_blank()
)df |>
ggplot(aes(sample = Cinesiofobia)) +
qqplotr::stat_qq_band(alpha = 0.2) +
qqplotr::stat_qq_line() +
qqplotr::stat_qq_point() +
labs(
title = "QQ-Plot de Cinesiofobia",
x = "Quantis teóricos",
y = "Quantis amostrais"
) +
theme_minimal()Teste de Shapiro-Wilk, Kolmogorov-Smirnov e Anderson-Darling consideram a hipótese nula de que a distribuição é normal. Ou seja, se o valor-p for maior que 0.05, não há evidências para rejeitar a hipótese nula. Em outras palavras, se o valor-p for maior que 0.05, a distribuição é normal.
shapiro_test <- shapiro.test(df$Cinesiofobia)
ks_test <- ks.test(df$Cinesiofobia, "pnorm",
mean = mean(df$Cinesiofobia),
sd = sd(df$Cinesiofobia)
)
ad_test <- nortest::ad.test(df$Cinesiofobia)
# Criar tabela com resultados dos testes
data.frame(
Teste = c(
"Shapiro-Wilk",
"Kolmogorov-Smirnov",
"Anderson-Darling"
),
Estatística = c(
round(shapiro_test$statistic, 3),
round(ks_test$statistic, 3),
round(ad_test$statistic, 3)
),
`Valor-p` = c(
round(shapiro_test$p.value, 3),
round(ks_test$p.value, 3),
round(ad_test$p.value, 3)
)
) |>
gt::gt()| Teste | Estatística | Valor.p |
|---|---|---|
| Shapiro-Wilk | 0.962 | 0.040 |
| Kolmogorov-Smirnov | 0.150 | 0.104 |
| Anderson-Darling | 1.006 | 0.011 |
df |>
select(AKPS) |>
summarise(
Média = round(mean(AKPS), 2),
Mediana = round(median(AKPS), 2),
DesvioPadrão = round(sd(AKPS), 2),
Mínimo = round(min(AKPS), 2),
Máximo = round(max(AKPS), 2)
) |>
t() |>
as.data.frame() |>
rownames_to_column(var = "Métricas") |>
gt::gt() |>
gt::tab_options(column_labels.hidden = TRUE)| Média | 23.94 |
| Mediana | 24.00 |
| DesvioPadrão | 4.50 |
| Mínimo | 16.00 |
| Máximo | 33.00 |
df |>
ggplot(aes(x = "", y = AKPS)) +
PupillometryR::geom_flat_violin(
position = position_nudge(x = .2),
# fill = "steelblue",
alpha = 0.7
) +
labs(
title = "Distribuição de AKPS",
x = "", y = "AKPS"
) +
geom_point(
aes(),
position = position_jitter(w = .15),
) +
geom_boxplot(
width = .25,
# fill = "steelblue",
alpha = 0.7,
outlier.shape = NA
) +
coord_flip() +
theme_minimal() +
theme(
axis.title.y = element_blank(),
axis.text.y = element_blank(),
axis.ticks.y = element_blank()
)df |>
ggplot(aes(sample = AKPS)) +
qqplotr::stat_qq_band(alpha = 0.2) +
qqplotr::stat_qq_line() +
qqplotr::stat_qq_point() +
labs(
title = "QQ-Plot de AKPS",
x = "Quantis teóricos",
y = "Quantis amostrais"
) +
theme_minimal()shapiro_test <- shapiro.test(df$AKPS)
ks_test <- ks.test(df$AKPS, "pnorm",
mean = mean(df$AKPS),
sd = sd(df$AKPS)
)
ad_test <- nortest::ad.test(df$AKPS)
# Criar tabela com resultados dos testes
data.frame(
Teste = c(
"Shapiro-Wilk",
"Kolmogorov-Smirnov",
"Anderson-Darling"
),
Estatística = c(
round(shapiro_test$statistic, 3),
round(ks_test$statistic, 3),
round(ad_test$statistic, 3)
),
`Valor-p` = c(
round(shapiro_test$p.value, 3),
round(ks_test$p.value, 3),
round(ad_test$p.value, 3)
)
) |>
gt::gt()| Teste | Estatística | Valor.p |
|---|---|---|
| Shapiro-Wilk | 0.972 | 0.133 |
| Kolmogorov-Smirnov | 0.086 | 0.720 |
| Anderson-Darling | 0.469 | 0.240 |
df |>
select(MDP) |>
summarise(
Média = round(mean(MDP), 2),
Mediana = round(median(MDP), 2),
DesvioPadrão = round(sd(MDP), 2),
Mínimo = round(min(MDP), 2),
Máximo = round(max(MDP), 2)
) |>
t() |>
as.data.frame() |>
rownames_to_column(var = "Métricas") |>
gt::gt() |>
gt::tab_options(column_labels.hidden = TRUE)| Média | 15.86 |
| Mediana | 14.44 |
| DesvioPadrão | 5.05 |
| Mínimo | 8.95 |
| Máximo | 31.70 |
df |>
ggplot(aes(x = "", y = MDP)) +
PupillometryR::geom_flat_violin(
position = position_nudge(x = .2),
# fill = "steelblue",
alpha = 0.7
) +
labs(
title = "Distribuição de MDP",
x = "", y = "MDP"
) +
geom_point(
aes(),
position = position_jitter(w = .15),
) +
geom_boxplot(
width = .25,
# fill = "steelblue",
alpha = 0.7,
outlier.shape = NA
) +
coord_flip() +
theme_minimal() +
theme(
axis.title.y = element_blank(),
axis.text.y = element_blank(),
axis.ticks.y = element_blank()
)df |>
ggplot(aes(sample = MDP)) +
qqplotr::stat_qq_band(alpha = 0.2) +
qqplotr::stat_qq_line() +
qqplotr::stat_qq_point() +
labs(
title = "QQ-Plot de MDP",
x = "Quantis teóricos",
y = "Quantis amostrais"
) +
theme_minimal()shapiro_test <- shapiro.test(df$MDP)
ks_test <- ks.test(df$MDP, "pnorm",
mean = mean(df$MDP),
sd = sd(df$MDP)
)
ad_test <- nortest::ad.test(df$MDP)
# Criar tabela com resultados dos testes
data.frame(
Teste = c(
"Shapiro-Wilk",
"Kolmogorov-Smirnov",
"Anderson-Darling"
),
Estatística = c(
round(shapiro_test$statistic, 3),
round(ks_test$statistic, 3),
round(ad_test$statistic, 3)
),
`Valor-p` = c(
round(shapiro_test$p.value, 3),
round(ks_test$p.value, 3),
round(ad_test$p.value, 3)
)
) |>
gt::gt()| Teste | Estatística | Valor.p |
|---|---|---|
| Shapiro-Wilk | 0.879 | 0.000 |
| Kolmogorov-Smirnov | 0.154 | 0.077 |
| Anderson-Darling | 2.300 | 0.000 |
df |>
select(PSEQ_10) |>
summarise(
Média = round(mean(PSEQ_10), 2),
Mediana = round(median(PSEQ_10), 2),
DesvioPadrão = round(sd(PSEQ_10), 2),
Mínimo = round(min(PSEQ_10), 2),
Máximo = round(max(PSEQ_10), 2)
) |>
t() |>
as.data.frame() |>
rownames_to_column(var = "Métricas") |>
gt::gt() |>
gt::tab_options(column_labels.hidden = TRUE)| Média | 52.88 |
| Mediana | 55.00 |
| DesvioPadrão | 6.45 |
| Mínimo | 35.00 |
| Máximo | 60.00 |
df |>
ggplot(aes(x = "", y = PSEQ_10)) +
PupillometryR::geom_flat_violin(
position = position_nudge(x = .2),
# fill = "steelblue",
alpha = 0.7
) +
labs(
title = "Distribuição de PSEQ_10",
x = "", y = "PSEQ_10"
) +
geom_point(
aes(),
position = position_jitter(w = .15),
) +
geom_boxplot(
width = .25,
# fill = "steelblue",
alpha = 0.7,
outlier.shape = NA
) +
coord_flip() +
theme_minimal() +
theme(
axis.title.y = element_blank(),
axis.text.y = element_blank(),
axis.ticks.y = element_blank()
)df |>
ggplot(aes(sample = PSEQ_10)) +
qqplotr::stat_qq_band(alpha = 0.2) +
qqplotr::stat_qq_line() +
qqplotr::stat_qq_point() +
labs(
title = "QQ-Plot de PSEQ_10",
x = "Quantis teóricos",
y = "Quantis amostrais"
) +
theme_minimal()shapiro_test <- shapiro.test(df$PSEQ_10)
ks_test <- ks.test(df$PSEQ_10, "pnorm",
mean = mean(df$PSEQ_10),
sd = sd(df$PSEQ_10)
)
ad_test <- nortest::ad.test(df$PSEQ_10)
# Criar tabela com resultados dos testes
data.frame(
Teste = c(
"Shapiro-Wilk",
"Kolmogorov-Smirnov",
"Anderson-Darling"
),
Estatística = c(
round(shapiro_test$statistic, 3),
round(ks_test$statistic, 3),
round(ad_test$statistic, 3)
),
`Valor-p` = c(
round(shapiro_test$p.value, 3),
round(ks_test$p.value, 3),
round(ad_test$p.value, 3)
)
) |>
gt::gt()| Teste | Estatística | Valor.p |
|---|---|---|
| Shapiro-Wilk | 0.893 | 0.00 |
| Kolmogorov-Smirnov | 0.159 | 0.07 |
| Anderson-Darling | 2.121 | 0.00 |
df |>
select(CPSE) |>
summarise(
Média = round(mean(CPSE), 2),
Mediana = round(median(CPSE), 2),
DesvioPadrão = round(sd(CPSE), 2),
Mínimo = round(min(CPSE), 2),
Máximo = round(max(CPSE), 2)
) |>
t() |>
as.data.frame() |>
rownames_to_column(var = "Métricas") |>
gt::gt() |>
gt::tab_options(column_labels.hidden = TRUE)| Média | 93.83 |
| Mediana | 96.50 |
| DesvioPadrão | 10.97 |
| Mínimo | 60.00 |
| Máximo | 110.00 |
df |>
ggplot(aes(x = "", y = CPSE)) +
PupillometryR::geom_flat_violin(
position = position_nudge(x = .2),
# fill = "steelblue",
alpha = 0.7
) +
labs(
title = "Distribuição de CPSE",
x = "", y = "CPSE"
) +
geom_point(
aes(),
position = position_jitter(w = .15),
) +
geom_boxplot(
width = .25,
# fill = "steelblue",
alpha = 0.7,
outlier.shape = NA
) +
coord_flip() +
theme_minimal() +
theme(
axis.title.y = element_blank(),
axis.text.y = element_blank(),
axis.ticks.y = element_blank()
)df |>
ggplot(aes(sample = CPSE)) +
qqplotr::stat_qq_band(alpha = 0.2) +
qqplotr::stat_qq_line() +
qqplotr::stat_qq_point() +
labs(
title = "QQ-Plot de CPSE",
x = "Quantis teóricos",
y = "Quantis amostrais"
) +
theme_minimal()shapiro_test <- shapiro.test(df$CPSE)
ks_test <- ks.test(df$CPSE, "pnorm",
mean = mean(df$CPSE),
sd = sd(df$CPSE)
)
ad_test <- nortest::ad.test(df$CPSE)
# Criar tabela com resultados dos testes
data.frame(
Teste = c(
"Shapiro-Wilk",
"Kolmogorov-Smirnov",
"Anderson-Darling"
),
Estatística = c(
round(shapiro_test$statistic, 3),
round(ks_test$statistic, 3),
round(ad_test$statistic, 3)
),
`Valor-p` = c(
round(shapiro_test$p.value, 3),
round(ks_test$p.value, 3),
round(ad_test$p.value, 3)
)
) |>
gt::gt()| Teste | Estatística | Valor.p |
|---|---|---|
| Shapiro-Wilk | 0.944 | 0.005 |
| Kolmogorov-Smirnov | 0.136 | 0.176 |
| Anderson-Darling | 1.167 | 0.004 |
df |>
select(Catastrofizacao) |>
summarise(
Média = round(mean(Catastrofizacao), 2),
Mediana = round(median(Catastrofizacao), 2),
DesvioPadrão = round(sd(Catastrofizacao), 2),
Mínimo = round(min(Catastrofizacao), 2),
Máximo = round(max(Catastrofizacao), 2)
) |>
t() |>
as.data.frame() |>
rownames_to_column(var = "Métricas") |>
gt::gt() |>
gt::tab_options(column_labels.hidden = TRUE)| Média | 28.71 |
| Mediana | 28.50 |
| DesvioPadrão | 9.25 |
| Mínimo | 13.00 |
| Máximo | 52.00 |
df |>
ggplot(aes(x = "", y = Catastrofizacao)) +
PupillometryR::geom_flat_violin(
position = position_nudge(x = .2),
# fill = "steelblue",
alpha = 0.7
) +
labs(
title = "Distribuição de Catastrofizacao",
x = "", y = "Catastrofizacao"
) +
geom_point(
aes(),
position = position_jitter(w = .15),
) +
geom_boxplot(
width = .25,
# fill = "steelblue",
alpha = 0.7,
outlier.shape = NA
) +
coord_flip() +
theme_minimal() +
theme(
axis.title.y = element_blank(),
axis.text.y = element_blank(),
axis.ticks.y = element_blank()
)df |>
ggplot(aes(sample = Catastrofizacao)) +
qqplotr::stat_qq_band(alpha = 0.2) +
qqplotr::stat_qq_line() +
qqplotr::stat_qq_point() +
labs(
title = "QQ-Plot de Catastrofizacao",
x = "Quantis teóricos",
y = "Quantis amostrais"
) +
theme_minimal()shapiro_test <- shapiro.test(df$Catastrofizacao)
ks_test <- ks.test(df$Catastrofizacao, "pnorm",
mean = mean(df$Catastrofizacao),
sd = sd(df$Catastrofizacao)
)
ad_test <- nortest::ad.test(df$Catastrofizacao)
# Criar tabela com resultados dos testes
data.frame(
Teste = c(
"Shapiro-Wilk",
"Kolmogorov-Smirnov",
"Anderson-Darling"
),
Estatística = c(
round(shapiro_test$statistic, 3),
round(ks_test$statistic, 3),
round(ad_test$statistic, 3)
),
`Valor-p` = c(
round(shapiro_test$p.value, 3),
round(ks_test$p.value, 3),
round(ad_test$p.value, 3)
)
) |>
gt::gt()| Teste | Estatística | Valor.p |
|---|---|---|
| Shapiro-Wilk | 0.973 | 0.160 |
| Kolmogorov-Smirnov | 0.073 | 0.870 |
| Anderson-Darling | 0.432 | 0.296 |
df |>
select(EVA_15dias) |>
summarise(
Média = round(mean(EVA_15dias), 2),
Mediana = round(median(EVA_15dias), 2),
DesvioPadrão = round(sd(EVA_15dias), 2),
Mínimo = round(min(EVA_15dias), 2),
Máximo = round(max(EVA_15dias), 2)
) |>
t() |>
as.data.frame() |>
rownames_to_column(var = "Métricas") |>
gt::gt() |>
gt::tab_options(column_labels.hidden = TRUE)| Média | 5.53 |
| Mediana | 6.00 |
| DesvioPadrão | 1.56 |
| Mínimo | 2.00 |
| Máximo | 9.00 |
df |>
ggplot(aes(x = "", y = EVA_15dias)) +
PupillometryR::geom_flat_violin(
position = position_nudge(x = .2),
# fill = "steelblue",
alpha = 0.7
) +
labs(
title = "Distribuição de EVA_15dias",
x = "", y = "EVA_15dias"
) +
geom_point(
aes(),
position = position_jitter(w = .15),
) +
geom_boxplot(
width = .25,
# fill = "steelblue",
alpha = 0.7,
outlier.shape = NA
) +
coord_flip() +
theme_minimal() +
theme(
axis.title.y = element_blank(),
axis.text.y = element_blank(),
axis.ticks.y = element_blank()
)df |>
ggplot(aes(sample = EVA_15dias)) +
qqplotr::stat_qq_band(alpha = 0.2) +
qqplotr::stat_qq_line() +
qqplotr::stat_qq_point() +
labs(
title = "QQ-Plot de EVA_15dias",
x = "Quantis teóricos",
y = "Quantis amostrais"
) +
theme_minimal()shapiro_test <- shapiro.test(df$EVA_15dias)
ks_test <- ks.test(df$EVA_15dias, "pnorm",
mean = mean(df$EVA_15dias),
sd = sd(df$EVA_15dias)
)
ad_test <- nortest::ad.test(df$EVA_15dias)
# Criar tabela com resultados dos testes
data.frame(
Teste = c(
"Shapiro-Wilk",
"Kolmogorov-Smirnov",
"Anderson-Darling"
),
Estatística = c(
round(shapiro_test$statistic, 3),
round(ks_test$statistic, 3),
round(ad_test$statistic, 3)
),
`Valor-p` = c(
round(shapiro_test$p.value, 3),
round(ks_test$p.value, 3),
round(ad_test$p.value, 3)
)
) |>
gt::gt()| Teste | Estatística | Valor.p |
|---|---|---|
| Shapiro-Wilk | 0.956 | 0.019 |
| Kolmogorov-Smirnov | 0.164 | 0.058 |
| Anderson-Darling | 1.301 | 0.002 |
df |>
select(AKPS, MDP, PSEQ_10, CPSE, Catastrofizacao, EVA_15dias) |>
GGally::ggpairs(method = "spearman") +
theme_classic()
mdl_nulo <- glm(
Cinesiofobia ~ 1,
data = df, family = gaussian(link = "identity")
)
mdl_funcao <- glm(
Cinesiofobia ~ AKPS,
data = df, family = gaussian(link = "identity")
)
performance::test_performance(mdl_nulo, mdl_funcao) |>
parameters::print_md()| Name | Model | BF | Omega2 | p (Omega2) | LR | p (LR) |
|---|---|---|---|---|---|---|
| mdl_nulo | glm | |||||
| mdl_funcao | glm | 0.940 | 0.04 | 0.002 | 4.07 | < .001 |
Models were detected as nested (in terms of fixed parameters) and are compared in sequential order.
performance::performance(mdl_funcao) |>
parameters::print_md()| AIC | AICc | BIC | R2 | RMSE | Sigma |
|---|---|---|---|---|---|
| 414.30 | 414.69 | 420.87 | 0.06 | 5.33 | 5.42 |
mdl_funcao |>
performance::check_autocorrelation()Warning: Autocorrelated residuals detected (p = 0.006).
mdl_funcao |>
performance::check_heteroscedasticity()OK: Error variance appears to be homoscedastic (p = 0.694).
mdl_funcao |>
performance::check_residuals()OK: Simulated residuals appear as uniformly distributed (p = 0.815).
mdl_funcao |>
performance::check_normality() |>
plot()mdl_funcao |>
parameters::model_parameters() |>
parameters::print_md()| Parameter | Coefficient | SE | 95% CI | t(64) | p |
|---|---|---|---|---|---|
| (Intercept) | 31.61 | 3.64 | (24.48, 38.74) | 8.69 | < .001 |
| AKPS | 0.30 | 0.15 | (8.44e-03, 0.59) | 2.02 | 0.044 |
Aumentos de 1 unidade em AKPS estão associados a um acréscimo médio de 0.30 pontos na cinesiofobia.
mdl_movimento <- glm(
Cinesiofobia ~ MDP,
data = df, family = gaussian(link = "identity")
)
performance::test_performance(mdl_nulo, mdl_movimento) |>
parameters::print_md()| Name | Model | BF | Omega2 | p (Omega2) | LR | p (LR) |
|---|---|---|---|---|---|---|
| mdl_nulo | glm | |||||
| mdl_movimento | glm | 2.59 | 0.05 | 0.011 | 6.09 | < .001 |
Models were detected as nested (in terms of fixed parameters) and are compared in sequential order.
performance::test_performance(mdl_movimento, mdl_funcao) |>
parameters::print_md()| Name | Model | BF | Omega2 | p (Omega2) | LR | p (LR) |
|---|---|---|---|---|---|---|
| mdl_movimento | glm | |||||
| mdl_funcao | glm | 0.363 | 0.07 | 0.008 | 0.47 | 0.320 |
Each model is compared to mdl_movimento.
performance::compare_performance(mdl_funcao, mdl_movimento,
rank = TRUE, verbose = FALSE
) |>
parameters::print_md()| Name | Model | R2 | RMSE | Sigma | AIC weights | AICc weights | BIC weights | Performance-Score |
|---|---|---|---|---|---|---|---|---|
| mdl_movimento | glm | 0.09 | 5.25 | 5.34 | 0.734 | 0.734 | 0.734 | 100.00% |
| mdl_funcao | glm | 0.06 | 5.33 | 5.42 | 0.266 | 0.266 | 0.266 | 0.00% |
mdl_movimento |>
performance::check_autocorrelation()Warning: Autocorrelated residuals detected (p = 0.014).
mdl_movimento |>
performance::check_heteroscedasticity()OK: Error variance appears to be homoscedastic (p = 0.390).
mdl_movimento |>
performance::check_residuals()OK: Simulated residuals appear as uniformly distributed (p = 0.390).
mdl_movimento |>
performance::check_normality() |>
plot()mdl_movimento |>
parameters::model_parameters() |>
parameters::print_md()| Parameter | Coefficient | SE | 95% CI | t(64) | p |
|---|---|---|---|---|---|
| (Intercept) | 33.64 | 2.18 | (29.37, 37.92) | 15.43 | < .001 |
| MDP | 0.33 | 0.13 | (0.07, 0.58) | 2.49 | 0.013 |
Aumentos de 1 unidade em MDP estão associados a um acréscimo médio de 0.33 pontos na cinesiofobia.
mdl_cognicao <- glm(
Cinesiofobia ~ PSEQ_10 + CPSE + Catastrofizacao,
data = df, family = gaussian(link = "identity")
)
performance::test_performance(mdl_nulo, mdl_cognicao) |>
parameters::print_md()| Name | Model | BF | Omega2 | p (Omega2) | LR | p (LR) |
|---|---|---|---|---|---|---|
| mdl_nulo | glm | |||||
| mdl_cognicao | glm | 0.795 | 0.15 | < .001 | 12.11 | < .001 |
Models were detected as nested (in terms of fixed parameters) and are compared in sequential order.
performance::test_performance(mdl_cognicao, mdl_funcao, mdl_movimento) |>
parameters::print_md()| Name | Model | BF | Omega2 | p (Omega2) | LR | p (LR) |
|---|---|---|---|---|---|---|
| mdl_cognicao | glm | |||||
| mdl_funcao | glm | 1.18 | 0.15 | < .001 | 1.27 | 0.102 |
| mdl_movimento | glm | 3.26 | 0.13 | 0.014 | 1.01 | 0.155 |
Each model is compared to mdl_cognicao.
performance::compare_performance(mdl_funcao, mdl_movimento, mdl_cognicao,
rank = TRUE, verbose = FALSE
) |>
parameters::print_md()| Name | Model | R2 | RMSE | Sigma | AIC weights | AICc weights | BIC weights | Performance-Score |
|---|---|---|---|---|---|---|---|---|
| mdl_cognicao | glm | 0.17 | 5.02 | 5.18 | 0.668 | 0.597 | 0.184 | 83.33% |
| mdl_movimento | glm | 0.09 | 5.25 | 5.34 | 0.244 | 0.296 | 0.599 | 42.02% |
| mdl_funcao | glm | 0.06 | 5.33 | 5.42 | 0.088 | 0.107 | 0.217 | 1.35% |
mdl_cognicao |>
performance::check_autocorrelation()Warning: Autocorrelated residuals detected (p = 0.016).
mdl_cognicao |>
performance::check_heteroscedasticity()OK: Error variance appears to be homoscedastic (p = 0.450).
mdl_cognicao |>
performance::check_residuals()OK: Simulated residuals appear as uniformly distributed (p = 0.719).
mdl_cognicao |>
performance::check_normality() |>
plot()mdl_cognicao |>
parameters::model_parameters() |>
parameters::print_md()| Parameter | Coefficient | SE | 95% CI | t(62) | p |
|---|---|---|---|---|---|
| (Intercept) | 55.83 | 9.15 | (37.90, 73.75) | 6.10 | < .001 |
| PSEQ 10 | -0.38 | 0.14 | (-0.66, -0.10) | -2.68 | 0.007 |
| CPSE | 0.03 | 0.09 | (-0.14, 0.21) | 0.36 | 0.721 |
| Catastrofizacao | 7.94e-03 | 0.09 | (-0.16, 0.18) | 0.09 | 0.928 |
Cada unidade adicional no PSEQ 10 está associada a uma redução média de 0.38 pontos na cinesiofobia, considerando CPSE e Catastrofizacao constantes.
mdl_dor <- glm(
Cinesiofobia ~ EVA_15dias,
data = df, family = gaussian(link = "identity")
)
performance::test_performance(mdl_nulo, mdl_dor) |>
parameters::print_md()| Name | Model | BF | Omega2 | p (Omega2) | LR | p (LR) |
|---|---|---|---|---|---|---|
| mdl_nulo | glm | |||||
| mdl_dor | glm | 1.03 | 0.05 | < .001 | 4.24 | < .001 |
Models were detected as nested (in terms of fixed parameters) and are compared in sequential order.
performance::test_performance(
mdl_cognicao, mdl_dor,
mdl_funcao, mdl_movimento
) |>
parameters::print_md()| Name | Model | BF | Omega2 | p (Omega2) | LR | p (LR) |
|---|---|---|---|---|---|---|
| mdl_cognicao | glm | |||||
| mdl_dor | glm | 1.29 | 0.13 | 0.017 | 1.34 | 0.090 |
| mdl_funcao | glm | 1.18 | 0.15 | < .001 | 1.27 | 0.102 |
| mdl_movimento | glm | 3.26 | 0.13 | 0.014 | 1.01 | 0.155 |
Each model is compared to mdl_cognicao.
performance::compare_performance(
mdl_funcao, mdl_movimento,
mdl_cognicao, mdl_dor,
rank = TRUE, verbose = FALSE
) |>
parameters::print_md()| Name | Model | R2 | RMSE | Sigma | AIC weights | AICc weights | BIC weights | Performance-Score |
|---|---|---|---|---|---|---|---|---|
| mdl_cognicao | glm | 0.17 | 5.02 | 5.18 | 0.609 | 0.534 | 0.148 | 83.33% |
| mdl_movimento | glm | 0.09 | 5.25 | 5.34 | 0.222 | 0.265 | 0.484 | 42.02% |
| mdl_dor | glm | 0.06 | 5.33 | 5.41 | 0.088 | 0.105 | 0.192 | 3.99% |
| mdl_funcao | glm | 0.06 | 5.33 | 5.42 | 0.081 | 0.096 | 0.176 | 1.35% |
mdl_dor |>
performance::check_autocorrelation()Warning: Autocorrelated residuals detected (p = 0.022).
mdl_dor |>
performance::check_heteroscedasticity()OK: Error variance appears to be homoscedastic (p = 0.054).
mdl_dor |>
performance::check_residuals()OK: Simulated residuals appear as uniformly distributed (p = 0.416).
mdl_dor |>
performance::check_normality() |>
plot()mdl_dor |>
parameters::model_parameters() |>
parameters::print_md()| Parameter | Coefficient | SE | 95% CI | t(64) | p |
|---|---|---|---|---|---|
| (Intercept) | 33.92 | 2.47 | (29.08, 38.76) | 13.74 | < .001 |
| EVA 15dias | 0.89 | 0.43 | (0.04, 1.73) | 2.06 | 0.039 |
Um aumento de 1 unidade na avaliação da dor está associado a um acréscimo médio de 0.89 pontos na cinesiofobia.
mdl_all <- glm(
Cinesiofobia ~ AKPS + MDP + PSEQ_10 + CPSE + Catastrofizacao + EVA_15dias,
data = df, family = gaussian(link = "identity")
)
performance::test_performance(mdl_nulo, mdl_all) |>
parameters::print_md()| Name | Model | BF | Omega2 | p (Omega2) | LR | p (LR) |
|---|---|---|---|---|---|---|
| mdl_nulo | glm | |||||
| mdl_all | glm | 0.036 | 0.21 | < .001 | 18.49 | < .001 |
Models were detected as nested (in terms of fixed parameters) and are compared in sequential order.
performance::test_performance(
mdl_all, mdl_funcao, mdl_movimento,
mdl_cognicao, mdl_dor
) |>
parameters::print_md()| Name | Model | BF | Omega2 | p (Omega2) | LR | p (LR) |
|---|---|---|---|---|---|---|
| mdl_all | glm | |||||
| mdl_funcao | glm | 26.13 | 0.15 | < .001 | 2.30 | 0.011 |
| mdl_movimento | glm | 72.02 | 0.14 | < .001 | 2.06 | 0.020 |
| mdl_cognicao | glm | 22.09 | 0.05 | 0.002 | 1.70 | 0.044 |
| mdl_dor | glm | 28.53 | 0.16 | < .001 | 2.17 | 0.015 |
Each model is compared to mdl_all.
performance::compare_performance(
mdl_funcao, mdl_movimento,
mdl_cognicao, mdl_dor, mdl_all,
rank = TRUE, verbose = FALSE
) |>
parameters::print_md()| Name | Model | R2 | RMSE | Sigma | AIC weights | AICc weights | BIC weights | Performance-Score |
|---|---|---|---|---|---|---|---|---|
| mdl_all | glm | 0.24 | 4.78 | 5.06 | 0.424 | 0.231 | 0.007 | 74.46% |
| mdl_cognicao | glm | 0.17 | 5.02 | 5.18 | 0.351 | 0.411 | 0.147 | 65.40% |
| mdl_movimento | glm | 0.09 | 5.25 | 5.34 | 0.128 | 0.204 | 0.481 | 35.55% |
| mdl_dor | glm | 0.06 | 5.33 | 5.41 | 0.051 | 0.081 | 0.191 | 7.76% |
| mdl_funcao | glm | 0.06 | 5.33 | 5.42 | 0.046 | 0.074 | 0.174 | 5.90% |
mdl_all |>
performance::check_autocorrelation()Warning: Autocorrelated residuals detected (p = 0.020).
mdl_all |>
performance::check_heteroscedasticity()OK: Error variance appears to be homoscedastic (p = 0.926).
mdl_all |>
performance::check_residuals()OK: Simulated residuals appear as uniformly distributed (p = 0.761).
mdl_all |>
performance::check_normality() |>
plot()mdl_all |>
parameters::model_parameters() |>
parameters::print_md()| Parameter | Coefficient | SE | 95% CI | t(59) | p |
|---|---|---|---|---|---|
| (Intercept) | 49.15 | 9.76 | (30.03, 68.27) | 5.04 | < .001 |
| AKPS | 0.16 | 0.16 | (-0.15, 0.46) | 0.99 | 0.322 |
| MDP | 0.48 | 0.30 | (-0.11, 1.07) | 1.59 | 0.112 |
| PSEQ 10 | -0.39 | 0.14 | (-0.66, -0.11) | -2.76 | 0.006 |
| CPSE | 0.05 | 0.09 | (-0.12, 0.22) | 0.55 | 0.579 |
| Catastrofizacao | -5.53e-03 | 0.09 | (-0.18, 0.17) | -0.06 | 0.950 |
| EVA 15dias | -1.02 | 0.99 | (-2.96, 0.92) | -1.03 | 0.302 |
Apenas o PSEQ 10 é significativo na predição da cinesiofobia.
A variável AKPS perdeu a associação estatisticamente significante.
As variáveis catastrofizacao e EVA 15 dias mudaram a direção da associação, sugerindo multicolinearidade.
mdl_all |>
performance::check_collinearity() |>
parameters::print_md()| Term | VIF | VIF_CI_low | VIF_CI_high | SE_factor | Tolerance | Tolerance_CI_low | Tolerance_CI_high |
|---|---|---|---|---|---|---|---|
| AKPS | 1.27 | 1.08 | 1.88 | 1.13 | 0.79 | 0.53 | 0.92 |
| MDP | 5.83 | 4.05 | 8.63 | 2.41 | 0.17 | 0.12 | 0.25 |
| PSEQ_10 | 2.07 | 1.58 | 2.96 | 1.44 | 0.48 | 0.34 | 0.63 |
| CPSE | 2.39 | 1.79 | 3.45 | 1.55 | 0.42 | 0.29 | 0.56 |
| Catastrofizacao | 1.70 | 1.34 | 2.42 | 1.30 | 0.59 | 0.41 | 0.74 |
| EVA_15dias | 6.04 | 4.20 | 8.96 | 2.46 | 0.17 | 0.11 | 0.24 |
As variáveis EVA 15 dias e MDP apresentam multicolinearidade.
Removendo EVA 15 dias
mdl_sem_eva <- glm(
Cinesiofobia ~ AKPS + MDP + PSEQ_10 + CPSE + Catastrofizacao,
data = df, family = gaussian(link = "identity")
)
performance::test_performance(mdl_all, mdl_sem_eva) |>
parameters::print_md()| Name | Model | BF | Omega2 | p (Omega2) | LR | p (LR) |
|---|---|---|---|---|---|---|
| mdl_all | glm | |||||
| mdl_sem_eva | glm | 4.50 | 0.01 | 0.006 | 1.18 | < .001 |
Models were detected as nested (in terms of fixed parameters) and are compared in sequential order.
performance::compare_performance(mdl_all, mdl_sem_eva,
rank = TRUE, verbose = FALSE
) |>
parameters::print_md()| Name | Model | R2 | RMSE | Sigma | AIC weights | AICc weights | BIC weights | Performance-Score |
|---|---|---|---|---|---|---|---|---|
| mdl_all | glm | 0.24 | 4.78 | 5.06 | 0.399 | 0.330 | 0.182 | 50.00% |
| mdl_sem_eva | glm | 0.23 | 4.83 | 5.06 | 0.601 | 0.670 | 0.818 | 50.00% |
mdl_sem_eva |>
performance::check_autocorrelation()Warning: Autocorrelated residuals detected (p = 0.030).
mdl_sem_eva |>
performance::check_heteroscedasticity()OK: Error variance appears to be homoscedastic (p = 0.924).
mdl_sem_eva |>
performance::check_residuals()OK: Simulated residuals appear as uniformly distributed (p = 0.753).
mdl_sem_eva |>
performance::check_normality() |>
plot()mdl_sem_eva |>
parameters::model_parameters() |>
parameters::print_md()| Parameter | Coefficient | SE | 95% CI | t(60) | p |
|---|---|---|---|---|---|
| (Intercept) | 47.77 | 9.67 | (28.82, 66.72) | 4.94 | < .001 |
| AKPS | 0.15 | 0.16 | (-0.16, 0.46) | 0.95 | 0.341 |
| MDP | 0.21 | 0.14 | (-0.08, 0.49) | 1.43 | 0.153 |
| PSEQ 10 | -0.38 | 0.14 | (-0.65, -0.10) | -2.71 | 0.007 |
| CPSE | 0.05 | 0.09 | (-0.12, 0.22) | 0.58 | 0.559 |
| Catastrofizacao | -0.02 | 0.09 | (-0.19, 0.15) | -0.24 | 0.807 |
Removendo a variável EVA 15 dias, somente o PSEQ 10 é significativo.
Removendo MDP
mdl_sem_mdp <- glm(
Cinesiofobia ~ AKPS + PSEQ_10 + CPSE + Catastrofizacao + EVA_15dias,
data = df, family = gaussian(link = "identity")
)
performance::test_performance(mdl_all, mdl_sem_eva, mdl_sem_mdp) |>
parameters::print_md()| Name | Model | BF | Omega2 | p (Omega2) | LR | p (LR) |
|---|---|---|---|---|---|---|
| mdl_all | glm | |||||
| mdl_sem_eva | glm | 4.50 | 0.01 | 0.006 | 0.67 | 0.252 |
| mdl_sem_mdp | glm | 2.04 | 0.02 | < .001 | 1.22 | 0.112 |
Each model is compared to mdl_all.
performance::compare_performance(mdl_all, mdl_sem_eva, mdl_sem_mdp,
rank = TRUE, verbose = FALSE
) |>
parameters::print_md()| Name | Model | R2 | RMSE | Sigma | AIC weights | AICc weights | BIC weights | Performance-Score |
|---|---|---|---|---|---|---|---|---|
| mdl_sem_eva | glm | 0.23 | 4.83 | 5.06 | 0.473 | 0.514 | 0.597 | 85.21% |
| mdl_all | glm | 0.24 | 4.78 | 5.06 | 0.314 | 0.253 | 0.133 | 57.66% |
| mdl_sem_mdp | glm | 0.21 | 4.88 | 5.12 | 0.214 | 0.233 | 0.270 | 4.93% |
mdl_sem_mdp |>
performance::check_autocorrelation()Warning: Autocorrelated residuals detected (p = 0.012).
mdl_sem_mdp |>
performance::check_heteroscedasticity()OK: Error variance appears to be homoscedastic (p = 0.699).
mdl_sem_mdp |>
performance::check_residuals()OK: Simulated residuals appear as uniformly distributed (p = 0.764).
mdl_sem_mdp |>
performance::check_normality() |>
plot()mdl_sem_mdp |>
parameters::model_parameters() |>
parameters::print_md()| Parameter | Coefficient | SE | 95% CI | t(60) | p |
|---|---|---|---|---|---|
| (Intercept) | 48.69 | 9.88 | (29.33, 68.05) | 4.93 | < .001 |
| AKPS | 0.20 | 0.16 | (-0.11, 0.51) | 1.25 | 0.210 |
| PSEQ 10 | -0.37 | 0.14 | (-0.65, -0.10) | -2.65 | 0.008 |
| CPSE | 0.04 | 0.09 | (-0.13, 0.22) | 0.47 | 0.641 |
| Catastrofizacao | -0.02 | 0.09 | (-0.20, 0.15) | -0.27 | 0.784 |
| EVA 15dias | 0.36 | 0.48 | (-0.58, 1.30) | 0.75 | 0.452 |
Removendo a variável MDP, somente o PSEQ 10 é significativo.
Removendo EVA 15 dias e MDP
mdl_sem_mdp_eva <- glm(
Cinesiofobia ~ AKPS + PSEQ_10 + CPSE + Catastrofizacao,
data = df, family = gaussian(link = "identity")
)
performance::test_performance(mdl_all, mdl_sem_eva, mdl_sem_mdp, mdl_sem_mdp_eva) |>
parameters::print_md()| Name | Model | BF | Omega2 | p (Omega2) | LR | p (LR) |
|---|---|---|---|---|---|---|
| mdl_all | glm | |||||
| mdl_sem_eva | glm | 4.50 | 0.01 | 0.006 | 0.67 | 0.252 |
| mdl_sem_mdp | glm | 2.04 | 0.02 | < .001 | 1.22 | 0.112 |
| mdl_sem_mdp_eva | glm | 12.15 | 0.02 | < .001 | 1.35 | 0.088 |
Each model is compared to mdl_all.
performance::compare_performance(mdl_all, mdl_sem_eva, mdl_sem_mdp, mdl_sem_mdp_eva,
rank = TRUE, verbose = FALSE
) |>
parameters::print_md()| Name | Model | R2 | RMSE | Sigma | AIC weights | AICc weights | BIC weights | Performance-Score |
|---|---|---|---|---|---|---|---|---|
| mdl_sem_eva | glm | 0.23 | 4.83 | 5.06 | 0.331 | 0.322 | 0.229 | 72.57% |
| mdl_all | glm | 0.24 | 4.78 | 5.06 | 0.220 | 0.159 | 0.051 | 57.38% |
| mdl_sem_mdp_eva | glm | 0.20 | 4.91 | 5.10 | 0.299 | 0.374 | 0.617 | 51.80% |
| mdl_sem_mdp | glm | 0.21 | 4.88 | 5.12 | 0.150 | 0.146 | 0.103 | 7.74% |
mdl_sem_mdp_eva |>
performance::check_autocorrelation()Warning: Autocorrelated residuals detected (p = 0.016).
mdl_sem_mdp_eva |>
performance::check_heteroscedasticity()OK: Error variance appears to be homoscedastic (p = 0.581).
mdl_sem_mdp_eva |>
performance::check_residuals()OK: Simulated residuals appear as uniformly distributed (p = 0.874).
mdl_sem_mdp_eva |>
performance::check_normality() |>
plot()mdl_sem_mdp_eva |>
parameters::model_parameters() |>
parameters::print_md()| Parameter | Coefficient | SE | 95% CI | t(61) | p |
|---|---|---|---|---|---|
| (Intercept) | 50.42 | 9.57 | (31.66, 69.18) | 5.27 | < .001 |
| AKPS | 0.24 | 0.14 | (-0.04, 0.53) | 1.68 | 0.092 |
| PSEQ 10 | -0.38 | 0.14 | (-0.65, -0.10) | -2.67 | 0.008 |
| CPSE | 0.03 | 0.09 | (-0.14, 0.20) | 0.35 | 0.724 |
| Catastrofizacao | -0.02 | 0.09 | (-0.19, 0.16) | -0.19 | 0.852 |
Removendo a variável EVA 15 dias e MDP, somente o PSEQ 10 é significativo.
Removendo PSEQ 10
mdl_sem_pseq <- glm(
Cinesiofobia ~ AKPS + MDP + CPSE + Catastrofizacao + EVA_15dias,
data = df, family = gaussian(link = "identity")
)
performance::test_performance(mdl_all, mdl_sem_eva, mdl_sem_mdp, mdl_sem_mdp_eva, mdl_sem_pseq) |>
parameters::print_md()| Name | Model | BF | Omega2 | p (Omega2) | LR | p (LR) |
|---|---|---|---|---|---|---|
| mdl_all | glm | |||||
| mdl_sem_eva | glm | 4.50 | 0.01 | 0.006 | 0.67 | 0.252 |
| mdl_sem_mdp | glm | 2.04 | 0.02 | < .001 | 1.22 | 0.112 |
| mdl_sem_mdp_eva | glm | 12.15 | 0.02 | < .001 | 1.35 | 0.088 |
| mdl_sem_pseq | glm | 0.146 | 0.10 | < .001 | 1.56 | 0.060 |
Each model is compared to mdl_all.
performance::compare_performance(mdl_all, mdl_sem_eva, mdl_sem_mdp, mdl_sem_mdp_eva, mdl_sem_pseq,
rank = TRUE, verbose = FALSE
) |>
parameters::print_md()| Name | Model | R2 | RMSE | Sigma | AIC weights | AICc weights | BIC weights | Performance-Score |
|---|---|---|---|---|---|---|---|---|
| mdl_sem_eva | glm | 0.23 | 4.83 | 5.06 | 0.328 | 0.318 | 0.227 | 82.11% |
| mdl_sem_mdp_eva | glm | 0.20 | 4.91 | 5.10 | 0.296 | 0.370 | 0.612 | 81.86% |
| mdl_all | glm | 0.24 | 4.78 | 5.06 | 0.218 | 0.157 | 0.050 | 68.84% |
| mdl_sem_mdp | glm | 0.21 | 4.88 | 5.12 | 0.148 | 0.144 | 0.103 | 51.01% |
| mdl_sem_pseq | glm | 0.15 | 5.08 | 5.33 | 0.011 | 0.010 | 0.007 | 0.00% |
mdl_sem_pseq |>
performance::check_autocorrelation()Warning: Autocorrelated residuals detected (p = 0.042).
mdl_sem_pseq |>
performance::check_heteroscedasticity()OK: Error variance appears to be homoscedastic (p = 0.820).
mdl_sem_pseq |>
performance::check_residuals()OK: Simulated residuals appear as uniformly distributed (p = 0.454).
mdl_sem_pseq |>
performance::check_normality() |>
plot()mdl_sem_pseq |>
parameters::model_parameters() |>
parameters::print_md()| Parameter | Coefficient | SE | 95% CI | t(60) | p |
|---|---|---|---|---|---|
| (Intercept) | 40.25 | 9.71 | (21.22, 59.27) | 4.15 | < .001 |
| AKPS | 0.17 | 0.17 | (-0.16, 0.49) | 1.02 | 0.308 |
| MDP | 0.43 | 0.32 | (-0.19, 1.05) | 1.37 | 0.172 |
| CPSE | -0.09 | 0.08 | (-0.24, 0.06) | -1.17 | 0.240 |
| Catastrofizacao | 0.03 | 0.09 | (-0.15, 0.21) | 0.36 | 0.722 |
| EVA 15dias | -0.87 | 1.04 | (-2.91, 1.17) | -0.84 | 0.403 |
Removendo a variável PSEQ 10, nenhuma variável é significativa.
Método stepwise
mdl_step <- step(mdl_all, direction = "both", trace = FALSE)
performance::test_performance(mdl_step, mdl_all, mdl_sem_eva, mdl_sem_mdp, mdl_sem_mdp_eva, mdl_sem_pseq) |>
parameters::print_md()| Name | Model | BF | Omega2 | p (Omega2) | LR | p (LR) |
|---|---|---|---|---|---|---|
| mdl_step | glm | |||||
| mdl_all | glm | < 0.001 | 0.03 | < .001 | -0.93 | 0.176 |
| mdl_sem_eva | glm | 0.004 | 0.02 | < .001 | -0.70 | 0.241 |
| mdl_sem_mdp | glm | 0.002 | 0.03 | 0.016 | -6.00e-03 | 0.498 |
| mdl_sem_mdp_eva | glm | 0.011 | 0.05 | < .001 | 0.16 | 0.437 |
| mdl_sem_pseq | glm | < 0.001 | 0.09 | 0.006 | 1.08 | 0.139 |
Each model is compared to mdl_step.
performance::compare_performance(mdl_step, mdl_all, mdl_sem_eva, mdl_sem_mdp, mdl_sem_mdp_eva, mdl_sem_pseq,
rank = TRUE, verbose = FALSE
) |>
parameters::print_md()| Name | Model | R2 | RMSE | Sigma | AIC weights | AICc weights | BIC weights | Performance-Score |
|---|---|---|---|---|---|---|---|---|
| mdl_step | glm | 0.21 | 4.88 | 5.00 | 0.747 | 0.844 | 0.982 | 88.80% |
| mdl_all | glm | 0.24 | 4.78 | 5.06 | 0.055 | 0.024 | 9.07e-04 | 48.67% |
| mdl_sem_eva | glm | 0.23 | 4.83 | 5.06 | 0.083 | 0.050 | 0.004 | 45.01% |
| mdl_sem_mdp_eva | glm | 0.20 | 4.91 | 5.10 | 0.075 | 0.058 | 0.011 | 33.98% |
| mdl_sem_mdp | glm | 0.21 | 4.88 | 5.12 | 0.038 | 0.022 | 0.002 | 33.91% |
| mdl_sem_pseq | glm | 0.15 | 5.08 | 5.33 | 0.003 | 0.002 | 1.32e-04 | 0.00% |
mdl_step |>
performance::check_autocorrelation()Warning: Autocorrelated residuals detected (p = 0.040).
mdl_step |>
performance::check_heteroscedasticity()OK: Error variance appears to be homoscedastic (p = 0.903).
mdl_step |>
performance::check_residuals()OK: Simulated residuals appear as uniformly distributed (p = 0.665).
mdl_step |>
performance::check_normality() |>
plot()mdl_step |>
parameters::model_parameters() |>
parameters::print_md()| Parameter | Coefficient | SE | 95% CI | t(63) | p |
|---|---|---|---|---|---|
| (Intercept) | 51.36 | 6.00 | (39.61, 63.12) | 8.56 | < .001 |
| MDP | 0.24 | 0.13 | (-5.70e-03, 0.49) | 1.91 | 0.056 |
| PSEQ 10 | -0.31 | 0.10 | (-0.50, -0.12) | -3.14 | 0.002 |
O método stepwise selecionou as variáveis MDP e PSEQ 10.
Para o acréscimo de 1 unidade em PSEQ 10, a cinesiofobia diminui em 0.31 pontos.
Para o acréscimo de 1 unidade em MDP, a cinesiofobia aumenta em 0.24 pontos, porém não é estatisticamente significante.
O primeiro ajuste incluiu todas as variáveis candidatas (AKPS, MDP, PSEQ-10, CPSE, catastrofização e EVA-15 dias). Embora o coeficiente de determinação ( R² = 24 %, RMSE = 4,78) indicasse algum poder explicativo, a inspeção de colinearidade revelou potenciais fragilidades:
| Termo | VIF | Intervalo 95 % | Tolerância |
|---|---|---|---|
| AKPS | 1,27 | 1,08 – 1,88 | 0,79 |
| MDP | 5,83 | 4,05 – 8,63 | 0,17 |
| PSEQ-10 | 2,07 | 1,58 – 2,96 | 0,48 |
| CPSE | 2,39 | 1,79 – 3,45 | 0,42 |
| Catastrofização | 1,70 | 1,34 – 2,42 | 0,59 |
| EVA-15 dias | 6,04 | 4,20 – 8,96 | 0,17 |
Limiares usuais: VIF > 5 sinaliza multicolinearidade substantiva; tolerância < 0,2 reforça essa suspeita. Assim, MDP e EVA-15 dias apresentaram forte sobreposição de informação com outros preditores, aumentando erros-padrão e reduzindo precisão dos coeficientes – o que ajuda a explicar p-valores não significativos mesmo com efeitos aparentes.
Para mitigar redundância e obter um modelo mais parcimonioso, empregou-se o stepwise bidirecional guiado por AIC/BIC. Esse algoritmo:
O método eliminou AKPS, CPSE, catastrofização e EVA-15 dias. A ligeira redução de R² (24 % → 21 %) e aumento marginal no RMSE (4,78 → 4,88) foram compensados por menores AIC/BIC, indicando melhor equilíbrio ajuste-complexidade.
O modelo resultante retém dois preditores:
| Termo | β | IC 95 % | p |
|---|---|---|---|
| Intercepto | 51,36 | 39,61 – 63,12 | — |
| PSEQ-10 | –0,31 | –0,50 – –0,12 | < 0,01 |
| MDP | 0,24 | –0,006 – 0,49 | 0,06 |
PSEQ-10 permaneceu estatisticamente significativo, corroborando a hipótese de que maior autoeficácia para dor associa-se a menor cinesiofobia.
MDP apresentou p = 0,06 e intervalo que tangencia o zero, mas foi mantido porque:
O resultado indica que autoeficácia (PSEQ-10) é o principal fator explicativo da cinesiofobia. O MDP, embora borderline em significância, fornece indícios de que padrões de movimento possam exercer influência independente – hipótese que merece investigação com amostras maiores.
Síntese para a discussão do artigo
“No modelo inicial, a análise de multicolinearidade evidenciou VIF > 5 para MDP e EVA-15 dias, sugerindo sobreposição de informação e possível inflacionamento dos erros-padrão. A aplicação do procedimento stepwise, orientado por AIC/BIC, resultou em um modelo mais parcimonioso (R² = 21 %, RMSE = 4,88) que manteve o PSEQ-10 como preditor negativo significativo e conservou o MDP, cujo efeito permaneceu estável (β = 0,24) e contribuiu para leve melhoria nos critérios de informação. Apesar de a estimativa do MDP não alcançar significância convencional (p = 0,06), sua inclusão foi justificada pelo ganho de ajuste, pela redução simultânea da colinearidade e pela plausibilidade de captar aspectos de padrão de movimento relacionados à cinesiofobia. Assim, interpretamos o MDP como associação potencial e recomendamos estudos futuros para confirmar sua relevância.”