IAT: 0.15, 0.35, and 0.65 are considered small, medium, and large level of bias for individual scores.
Positive means bias towards arts / against Math.
iat = read_csv(here::here(params$arquivo_dados), col_types = "cccdc")
iat = iat %>%
mutate(sex = factor(sex, levels = c("m", "f"), ordered = TRUE))
glimpse(iat)
## Rows: 1,236
## Columns: 5
## $ session_id <chr> "2374915", "2374924", "2374971", "2375038", "2375052", "23…
## $ referrer <chr> "pi", "pi", "pi", "pi", "pi", "pi", "pi", "pi", "pi", "pi"…
## $ sex <ord> m, f, m, f, f, f, f, f, f, f, f, f, m, m, f, f, f, f, m, f…
## $ d_art <dbl> 0.4109073, 1.1507938, 0.1046623, -0.4928488, 1.2583609, 0.…
## $ iat_exclude <chr> "Include", "Include", "Include", "Include", "Include", "In…
iat %>%
ggplot(aes(x = d_art, fill = sex)) +
geom_histogram(binwidth = .2, alpha = .5, color = "black") +
geom_rug() +
facet_grid(sex ~ .) + # Removido o scales = "free_y"
theme(legend.position = "None")
O gráfico apresenta a distribuição da variável d_art segmentada por gênero: o grupo masculino (m), em roxo, e o grupo feminino (f) ,em amarelo. Para cada gênero há um histograma, que exibem a frequência de ocorrências das notas. Visualmente, fica evidente que o tamanho da amostra do grupo feminino é substancialmente maior, alcançando uma frequência em um intervalo que ultrapassa 150 contagens, enquanto o grupo m atinge um máximo próximo a 80.
Em relação ao comportamento e interpretação dos dados, ambas as distribuições são assimétricas à esquerda (cauda longa em direção aos valores negativos), indicando que a maior parte dos indivíduos de ambos os grupos se concentra em pontuações mais altas na escala de d_art, sugerindo uma maior aptidão positiva em relação à artes e negativa à matemática. No entanto, nota-se também que o grupo masculino tende a variar menos na frequência das notas do que o feminino, possuindo maior ocorrência em valores negativos, enquanto o grupo feminino se concentra predominantemente em valores positivos.
iat %>%
ggplot(aes(x = sex, y = d_art)) +
geom_quasirandom(width = .1)
iat %>%
ggplot(aes(x = sex, y = d_art)) +
geom_quasirandom(width = .1) +
stat_summary(geom = "point", fun.y = "mean", color = "red", size = 5)
## Warning: The `fun.y` argument of `stat_summary()` is deprecated as of ggplot2 3.3.0.
## ℹ Please use the `fun` argument instead.
## This warning is displayed once per session.
## Call `lifecycle::last_lifecycle_warnings()` to see where this warning was
## generated.
Esse gráfico traz informações semelhantes ao anterior: há claramente uma amostra maior no grupo feminino do que no masculino. Em ambos, observa-se que muitos indivíduos obtiveram valores positivos e poucos obtiveram valores negativos, sendo que esse destaque é mais acentuado no grupo feminino. Este gráfico também traz a média destacada por um ponto vermelho; através dessa representação, nota-se que o grupo feminino possui uma média maior do que o masculino, indicando um viés implícito mais acentuado no gênero feminino para uma associação positiva com as artes e negativa com a matemática.
iat %>%
group_by(sex) %>%
summarise(media = mean(d_art), desvio = sd(d_art), N = n())
## # A tibble: 2 × 4
## sex media desvio N
## <ord> <dbl> <dbl> <int>
## 1 m 0.322 0.499 427
## 2 f 0.613 0.439 809
Como observado nos gráficos, a amostra do grupo feminino é maior do que a do masculino: o grupo feminino contém quase o dobro do número de observações do grupo masculino. Além disso, confirma-se que a média feminina é consideravelmente maior do que a masculina; entretanto, o grupo feminino apresenta um menor desvio padrão em comparação ao masculino.
agrupado = iat %>%
group_by(sex) %>%
summarise(media = mean(d_art))
m = agrupado %>% filter(sex == "m") %>% pull(media)
f = agrupado %>% filter(sex == "f") %>% pull(media)
m - f
## [1] -0.2911497
Considerando os dados de Project Implicit, em média, as mulheres que participaram do experimento tiveram uma associação implícita (medida pelo IAT) com a matemática negativa e quase forte (média 0.61, desv. padrão 0.44, N = 809). Homens tiveram uma associação negativa com a matemática, entranto menor do que a das mulheres (média 0.32 , desv. padrão 0.5, N = 427). Houve portanto uma considerável diferença entre homens e mulheres (diferença das médias de 0.29), mostrando que o viés desfavorável à matemática é mais acentuado no grupo feminino.
O comportamento dos dados reflete claramente essa disparidade de gênero. Embora a amostra feminina seja substancialmente maior (contendo quase o dobro do número de observações do grupo masculino), a grande maioria dos indivíduos de ambos os grupos se concentra em valores positivos na escala do IAT, o que aponta para uma associação implícita positiva com as artes e negativa com a matemática em toda a amostra.
No entanto, essa inclinação é significativamente mais homogênea e acentuada entre as mulheres. O grupo feminino não apenas possui uma média mais elevada, como também apresenta um menor desvio padrão em comparação ao grupo masculino. Isso indica que o viés desfavorável à matemática é um comportamento mais presente, consistente e concentrado no grupo feminino, enquanto os homens, além de apresentarem um viés menor em média, exibem maior variabilidade e dispersão em suas pontuações no IAT.
library(boot)
library(broom)
theta <- function(d, i) {
agrupado = d %>%
slice(i) %>%
group_by(sex) %>%
summarise(media = mean(d_art))
m = agrupado %>% filter(sex == "m") %>% pull(media)
f = agrupado %>% filter(sex == "f") %>% pull(media)
m - f
}
booted <- boot(data = iat,
statistic = theta,
R = 2000)
ci = tidy(booted,
conf.level = .95,
conf.method = "bca",
conf.int = TRUE)
glimpse(ci)
## Rows: 1
## Columns: 5
## $ statistic <dbl> -0.2911497
## $ bias <dbl> 0.0003592165
## $ std.error <dbl> 0.02862852
## $ conf.low <dbl> -0.3473161
## $ conf.high <dbl> -0.2340055
Através dessas estatísticas é possível notar que a diferença observada entre os gêneros é estatisticamente significativa e confiável. A estimativa mostra que a média do grupo feminino na escala do IAT supera a do masculino em 0,29. O erro padrão dessa estimativa é baixo (aproximadamente 0,03), indicando que o cálculo possui grande precisão.
ci %>%
ggplot(aes(
x = "",
y = statistic,
ymin = conf.low,
ymax = conf.high
)) +
geom_pointrange() +
geom_point(size = 3) +
labs(x = "Diferença",
y = "IAT homens - mulheres")
library(gridExtra)
##
## Attaching package: 'gridExtra'
## The following object is masked from 'package:dplyr':
##
## combine
p1 = iat %>%
ggplot(aes(x = sex, y = d_art)) +
geom_quasirandom(width = .1) +
stat_summary(geom = "point", fun.y = "mean", color = "red", size = 5)
p2 = ci %>%
ggplot(aes(
x = "",
y = statistic,
ymin = conf.low,
ymax = conf.high
)) +
geom_pointrange() +
geom_point(size = 3) +
ylim(-1, 1) +
labs(x = "Diferença",
y = "IAT homens - mulheres")
grid.arrange(p1, p2, ncol = 2)
O gráfico combinado coloca lado a lado os dados da amostra e a
estimativa do intervalo de confiança. À esquerda, o gráfico de pontos
mostra a dispersão da variável d_art, destacando em vermelho as médias
de cada grupo. A análise do gráfico à esquerda foi realizada
anteriormente.
À direita, o gráfico traz a diferença entre as médias, utilizando a mesma escala vertical. Como o intervalo de confiança se resume a uma linha estreita e totalmente posicionada na região negativa (abaixo do 0), ica demonstrado visualmente que a diferença de gênero no viés é real e não aconteceu por acaso.
Considerando os dados de Project Implicit, em média, as mulheres que participaram do experimento tiveram uma associação implícita (medida pelo IAT) com a matemática negativa e quase forte (média 0.61, desv. padrão 0.44, N = 809). Homens tiveram uma associação negativa com a matemática, entranto menor do que a das mulheres (média 0.32 , desv. padrão 0.5, N = 427). Houve portanto uma considerável diferença entre homens e mulheres (diferença das médias -0.29, 95% CI [-0.3477488, -0.2377753]). A partir desta amostra, estimamos que a diferença real na associação implícita com a matemática entre homens e mulheres na população geral dificilmente será desconsiderável, sugerindo que as mulheres apresentam um maior viés negativo em relação à matemática do que os homens.
Embora as visualizações revelem que existe uma grande sobreposição nas pontuações entre os grupos, o intervalo de confiança calculado para a diferença das médias tem uma faixa muito estreita e afastada negativamente do valor zero. Esse distanciamento confirma que o maior viés implícito observado no grupo feminino é uma diferença real na população e não uma mera coincidência, consolidando a matemática como um campo de associação negativa para as mulheres.
Realize a análise e compare as conclusões obtidas nos dois casos experimentados:
# 0. Simulando dados para o exemplo (Substitua pelo seu dataframe real)
set.seed(42)
dados_mulheres <- rnorm(809, mean = 0.61, sd = 0.44)
dados_homens <- rnorm(427, mean = 0.32, sd = 0.50)
df <- data.frame(
iat = c(dados_mulheres, dados_homens),
grupo = c(rep("Mulher", 809), rep("Homem", 427))
)
# Função para calcular a diferença das médias (Homem - Mulher)
# Isso será usado em ambos os métodos
calcula_dif_medias <- function(data, indices) {
amostra <- data[indices, ]
media_homem <- mean(amostra$iat[amostra$grupo == "Homem"])
media_mulher <- mean(amostra$iat[amostra$grupo == "Mulher"])
return(media_homem - media_mulher)
}
# Biblioteca:
library(boot)
# Executa o bootstrap com 2000 replicações
boot_lib <- boot(data = df, statistic = calcula_dif_medias, R = 2000)
# Calcula o Intervalo de Confiança (Método Percentil)
ic_lib <- boot.ci(boot_lib, type = "perc")
print("--- Resultado da Biblioteca (boot) ---")
## [1] "--- Resultado da Biblioteca (boot) ---"
print(ic_lib)
## BOOTSTRAP CONFIDENCE INTERVAL CALCULATIONS
## Based on 2000 bootstrap replicates
##
## CALL :
## boot.ci(boot.out = boot_lib, type = "perc")
##
## Intervals :
## Level Percentile
## 95% (-0.3180, -0.1973 )
## Calculations and Intervals on Original Scale
# Reimplementação:
set.seed(42)
resultados <- c()
for (i in 1:2000) {
linhas_sorteadas <- sample(1:1236, replace = TRUE)
dados_sorteados <- iat[linhas_sorteadas, ]
homens <- dados_sorteados$d_art[dados_sorteados$sex == "m"]
mulheres <- dados_sorteados$d_art[dados_sorteados$sex == "f"]
diferenca <- mean(homens) - mean(mulheres)
resultados <- c(resultados, diferenca)
}
resultados_ordenados <- sort(resultados)
ic_manual_inferior <- resultados_ordenados[50]
ic_manual_superior <- resultados_ordenados[1950]
print("\n\n--- Resultado da Reimplementação ---")
## [1] "\n\n--- Resultado da Reimplementação ---"
cat("Diferença observada original:", mean(iat$d_art[iat$sex == "m"]) - mean(iat$d_art[iat$sex == "f"]), "\n")
## Diferença observada original: -0.2911497
cat("95% IC Percentil Manual: [", ic_manual_inferior, ",", ic_manual_superior, "]\n")
## 95% IC Percentil Manual: [ -0.3499988 , -0.2365384 ]
library(ggplot2)
# Criando um dataframe com os resultados dos dois métodos
df_comparacao <- data.frame(
Metodo = c("Biblioteca (boot)", "Implementação Manual"),
Estimativa = c(boot_lib$t0, -0.2584339),
IC_Inferior = c(ic_lib$percent[4], ic_manual_inferior),
IC_Superior = c(ic_lib$percent[5], ic_manual_superior)
)
# Gerando o gráfico de comparação
ggplot(df_comparacao, aes(x = Metodo, y = Estimativa, ymin = IC_Inferior, ymax = IC_Superior)) +
geom_pointrange(size = 1, color = "darkblue") +
geom_hline(yintercept = 0, linetype = "dashed", color = "red", size = 0.8) +
ylim(-0.5, 0.1) +
labs(
title = "Comparação dos Intervalos de Confiança (95%)",
x = "Método de Bootstrap",
y = "Diferença das Médias (Homem - Mulher)"
) +
theme_bw()
## Warning: Using `size` aesthetic for lines was deprecated in ggplot2 3.4.0.
## ℹ Please use `linewidth` instead.
## This warning is displayed once per session.
## Call `lifecycle::last_lifecycle_warnings()` to see where this warning was
## generated.
Escolhi o “Método Percentil”: ordenei os resultados das 2000 rodadas e peguei direto os valores das posições 50 e 1950, deixando de fora os 50 menores e os 50 maiores resultados para sobrar os 95% do meio.
Escolhi esse caminho por ser o mais simples e direto, usando a os próprios dados sorteados para encontrar os limites.
Ambas as abordagens chegam exatamente à mesma conclusão. As pequenas diferenças encontradas nas casas decimais dos limites dos intervalos ocorrem devido à natureza estocástica (aleatória) do processo de reamostragem com reposição inerente ao Bootstrap. Ambos os caminhos mostram que o intervalo está inteiramente contido na região negativa e bem afastado do zero, confirmando de forma idêntica que o maior viés implícito desfavorável à matemática no grupo feminino é um resultado matematicamente estável e independente do método de computação escolhido.