Load Packages
Load Data (Pilot Study)
df_lab <- read.csv("pilot_df.csv")
cat(
"Number of participants:", nrow(df_lab), "\n",
"Number of groups:", length(unique(df_lab$GroupID)), "\n",
"Average group size:", mean(df_lab$GroupSize), "\n",
"Min and max group size:", range(df_lab$GroupSize), "\n"
)
## Number of participants: 219
## Number of groups: 62
## Average group size: 4.821918
## Min and max group size: 3 6
df_lab$Ingratiation <- factor(df_lab$Ingratiation)
df_lab$Promotion <- factor(df_lab$Promotion)
df_lab$NewcomerRace <- factor(df_lab$NewcomerRace)
df_lab$NewcomerGender <- factor(df_lab$NewcomerGender)
Pilot Study: Ingratiation and Perceived Likeability
model <- lm(Liked ~ Ingratiation * NewcomerRace + Promotion + NewcomerGender, data = df_lab)
ancova <- Anova(model, type = 3)
Type III ANOVA Table
| Intercept |
563.098 |
1 |
1074.510 |
0.000 |
| Ingratiation |
0.111 |
1 |
0.213 |
0.645 |
| Newcomer Race |
0.281 |
1 |
0.537 |
0.465 |
| Self-Promotion |
0.333 |
1 |
0.635 |
0.426 |
| Newcomer Gender |
0.511 |
1 |
0.975 |
0.325 |
| Ingratiation × Race |
2.962 |
1 |
5.651 |
0.018 |
| Residuals |
111.623 |
213 |
NA |
NA |
###### Predicted values by race and condition
predicted_data <- ggpredict(model, terms = c("Ingratiation", "NewcomerRace"))
predicted_data
## # Predicted values of Liked
##
## NewcomerRace: Black
##
## Ingratiation | Predicted | 95% CI
## -------------------------------------
## High | 6.09 | 5.73, 6.46
## Low | 6.17 | 5.94, 6.39
##
## NewcomerRace: White
##
## Ingratiation | Predicted | 95% CI
## -------------------------------------
## High | 6.22 | 5.85, 6.58
## Low | 5.80 | 5.56, 6.04
##
## Adjusted for:
## * Promotion = High
## * NewcomerGender = Female
predicted_data$x <- factor(predicted_data$x, levels = c("Low", "High"))
ggplot(predicted_data, aes(x = x, y = predicted, fill = group)) +
geom_col(position = position_dodge(width = 0.7), width = 0.6) +
coord_cartesian(ylim = c(5, 7)) +
labs(
y = "Perceived Likeability",
x = "Ingratiation",
fill = "Newcomer Race"
) +
theme_minimal(base_size = 14)

# Simple slopes estimates
slope_results <- sim_slopes(model, pred = "Ingratiation", modx = "NewcomerRace", confint = TRUE)
print(slope_results)
## SIMPLE SLOPES ANALYSIS
##
## Slope of Ingratiation when NewcomerRace = Black:
##
## Est. S.E. 2.5% 97.5% t val. p
## ------ ------ ------- ------- -------- ------
## 0.08 0.16 -0.25 0.40 0.46 0.65
##
## Slope of Ingratiation when NewcomerRace = White:
##
## Est. S.E. 2.5% 97.5% t val. p
## ------- ------ ------- ------- -------- ------
## -0.42 0.16 -0.74 -0.10 -2.60 0.01
Pilot Study: Ingratiation and Coworker Support
videoData <- read.csv("pilot_df_video.csv")
videoData$NewcomerRace <- factor(videoData$NewcomerRace,
levels = c(0, 1),
labels = c("White", "Racial Minority"))
videoData$Promotion <- factor(videoData$Promotion,
levels = c(0, 1),
labels = c("Low Self-Promotion", "High Self-Promotion"))
videoData$Ingratiation <- factor(videoData$Ingratiation,
levels = c(0, 1),
labels = c("Low Ingratiation", " High Ingratiation"))
#####
# Zero-Inflated Negative Binomial Regression
zinb_model <- zeroinfl(
Support ~ Promotion + Ingratiation* NewcomerRace | NewcomerRace + Promotion + Ingratiation,
data = videoData,
dist = "negbin")
ZINB Count Model Coefficients (Robust SEs)
| Intercept |
0.6359 |
0.5628 |
1.1301 |
0.2674 |
| Self-Promotion |
0.2226 |
0.7378 |
0.3017 |
0.7650 |
| Ingratiation |
0.9278 |
0.5413 |
1.7139 |
0.0969 |
| Racial Minority |
-0.3517 |
0.5592 |
-0.6290 |
0.5341 |
| Ingratiation × Race |
-18.2176 |
0.8047 |
-22.6400 |
0.0000 |
