#install packages install.packages(c("psych","car","flextable","officer","data.table","dplyr","numform","lavaan","multilevel","MplusAutomation")) #load packages library(psych) library(car) library(flextable) library(officer) library(data.table) library(dplyr) library(numform) library(lavaan) library(multilevel) library(MplusAutomation) #save directory to the folder to which files created in R should be saved (e.g., "C:/NarcSub/") files_wd <- "C:/NarcSub/" ######################################## #S1: Additional Results of Study 1 ######################################## #read data dat1 <- as.data.frame(fread("https://madata.bib.uni-mannheim.de/427/3/NarcSub_Study1_Data.csv", header = T, sep = ",")) #apply data-exclusion criteria dat1 <- subset(dat1, subset = participated_seriously != 2 & not_use_data != 1) #recode variables dat1$im1r <- car::recode(dat1$im1, "1=7; 2=6; 3=5; 4=4; 5=3; 6=2; 7=1") dat1$im3r <- car::recode(dat1$im3, "1=7; 2=6; 3=5; 4=4; 5=3; 6=2; 7=1") dat1$im4r <- car::recode(dat1$im4, "1=7; 2=6; 3=5; 4=4; 5=3; 6=2; 7=1") dat1$im5r <- car::recode(dat1$im5, "1=7; 2=6; 3=5; 4=4; 5=3; 6=2; 7=1") dat1$description_aut_r <- car::recode(dat1$description_aut, "1=6; 2=5; 3=4; 4=3; 5=2; 6=1") dat1$lbdq2r <- car::recode(dat1$lbdq2, "1=6; 2=5; 3=4; 4=3; 5=2; 6=1") dat1$lbdq4r <- car::recode(dat1$lbdq4, "1=6; 2=5; 3=4; 4=3; 5=2; 6=1") dat1$lbdq6r <- car::recode(dat1$lbdq6, "1=6; 2=5; 3=4; 4=3; 5=2; 6=1") dat1$lbdq8r <- car::recode(dat1$lbdq8, "1=6; 2=5; 3=4; 4=3; 5=2; 6=1") dat1$lbdq10r <- car::recode(dat1$lbdq10, "1=6; 2=5; 3=4; 4=3; 5=2; 6=1") dat1$lbdq12r <- car::recode(dat1$lbdq12, "1=6; 2=5; 3=4; 4=3; 5=2; 6=1") dat1$lbdq14r <- car::recode(dat1$lbdq14, "1=6; 2=5; 3=4; 4=3; 5=2; 6=1") dat1$lbdq16r <- car::recode(dat1$lbdq16, "1=6; 2=5; 3=4; 4=3; 5=2; 6=1") dat1$lbdq18r <- car::recode(dat1$lbdq18, "1=6; 2=5; 3=4; 4=3; 5=2; 6=1") dat1$lbdq20r <- car::recode(dat1$lbdq20, "1=6; 2=5; 3=4; 4=3; 5=2; 6=1") #compute variables dat1$narq_adm <- rowMeans( dat1[c("narq1", "narq2", "narq3", "narq5", "narq7", "narq8", "narq15", "narq16", "narq18")], na.rm=TRUE) dat1$Znarq_adm <- scale(dat1$narq_adm) dat1$narq_riv <- rowMeans( dat1[c("narq4", "narq6", "narq9", "narq10", "narq11", "narq12", "narq13", "narq14", "narq17")], na.rm=TRUE) dat1$Znarq_riv <- scale(dat1$narq_riv) dat1$IM <- rowMeans( dat1[c("im1r","im2","im3r","im4r","im5r","im6","im7","im8")], na.rm=TRUE) dat1$ZIM <- scale(dat1$IM) dat1$descriptions <- rowMeans(dat1[c("description_dem","description_aut_r")], na.rm=TRUE) dat1$Zdescriptions <- scale(dat1$descriptions) dat1$lbdq <- rowMeans(dat1[c("lbdq1","lbdq3","lbdq5","lbdq7","lbdq9","lbdq11","lbdq13","lbdq15","lbdq17","lbdq19", "lbdq2r","lbdq4r","lbdq6r","lbdq8r","lbdq10r","lbdq12r","lbdq14r","lbdq16r","lbdq18r","lbdq20r")], na.rm=TRUE) dat1$Zlbdq <- scale(dat1$lbdq) dat1$pref_index <- rowMeans(dat1[c("Zdescriptions","Zlbdq")], na.rm=TRUE) dat1$Zpref_index <- scale(dat1$pref_index) dat1$Zbipolar <- scale(dat1$bipolar_measure) dat1$Zorder <- scale(dat1$description_order) dat1$ZADMxOrder <- scale(dat1$Znarq_adm*dat1$Zorder) dat1$ZRIVxOrder <- scale(dat1$Znarq_riv*dat1$Zorder) dat1$narq <- rowMeans(dat1[c(2:19)], na.rm=TRUE) dat1$Znarq <- scale(dat1$narq) dat1$ZNARQxOrder <- scale(dat1$Znarq*dat1$Zorder) dat1$npi <- rowMeans(dat1[c(20:59)], na.rm=TRUE) dat1$Znpi <- scale(dat1$npi) dat1$ZNPIxOrder <- scale(dat1$Znpi*dat1$Zorder) dat1$npi_authority <- rowMeans( dat1[c("npi1", "npi5", "npi10", "npi11", "npi12", "npi27", "npi32", "npi33", "npi34", "npi36", "npi40")], na.rm=TRUE) dat1$znpi_authority <- scale(dat1$npi_authority) dat1$npi_exhibitionism <- rowMeans( dat1[c("npi4", "npi7", "npi15", "npi19", "npi20", "npi26", "npi28", "npi29", "npi30", "npi38")], na.rm=TRUE) dat1$znpi_exhibitionism <- scale(dat1$npi_exhibitionism) dat1$npi_entitlement <- rowMeans(dat1[c("npi13", "npi14", "npi24", "npi25")], na.rm=TRUE) dat1$znpi_entitlement <- scale(dat1$npi_entitlement) #Separate Analyses for Leadership Measures ##Table S1.1: Descriptive Statistics and Zero-Order Correlations for the Leadership Measures in Study 1 dat_table_S1.1 <- data.frame(matrix(nrow=6, ncol=3)) dat_table_S1.1[,1] <- c("ADM","RIV","IM","Leadership Descriptions","Leadership Behaviors","Bipolar Leadership Measure") dat_table_S1.1[,2] <- c(mean(dat1$narq_adm, na.rm=T),mean(dat1$narq_riv, na.rm=T),mean(dat1$IM, na.rm=T),mean(dat1$descriptions, na.rm=T),mean(dat1$lbdq, na.rm=T),mean(dat1$bipolar_measure, na.rm=T)) dat_table_S1.1[,3] <- c(sd(dat1$narq_adm, na.rm=T),sd(dat1$narq_riv, na.rm=T),sd(dat1$IM, na.rm=T),sd(dat1$descriptions, na.rm=T),sd(dat1$lbdq, na.rm=T),sd(dat1$bipolar_measure, na.rm=T)) dat1_1 <- subset(dat1, select = c(narq_adm,narq_riv,IM,descriptions,lbdq,bipolar_measure)) cor_dat1_1 <- corr.test(dat1_1) dat_cor <- as.data.frame(matrix(unlist(cor_dat1_1), nrow=365, ncol = 1, byrow=F), stringsAsFactors=FALSE) dat_cor_r <- as.data.frame(matrix(dat_cor[1:36,], nrow=6)) dat_cor_p <- as.data.frame(matrix(dat_cor[74:109,], nrow=6)) dat_table_S1.1[,2:3] <- sapply(dat_table_S1.1[,2:3], as.numeric) format_msd <- function(x){ formatC(x, format = "f", digits = 2) } dat_table_S1.1[,2:3] <- dat_table_S1.1[,2:3] %>% mutate_if(is.numeric, format_msd) dat_cor_r[,1:6] <- sapply(dat_cor_r[,1:6], as.numeric) format_r <- function(x){ ifelse(abs(x) < 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_cor_r[,1:6] <- dat_cor_r[,1:6] %>% mutate_if(is.numeric, format_r) dat_cor_p[,1:6] <- sapply(dat_cor_p[,1:6], as.numeric) format_p <- function(x){ ifelse(abs(x) < 0.05 & abs(x) >= 0.01, "*", ifelse(abs(x) < 0.01 & abs(x) >= 0.001, "**", ifelse(abs(x) < 0.001, "***", ""))) } dat_cor_p[,1:6] <- dat_cor_p[,1:6] %>% mutate_if(is.numeric, format_p) dat_table_S1.1$r1 <- paste0(dat_cor_r[,1],dat_cor_p[,1]) dat_table_S1.1$r2 <- paste0(dat_cor_r[,2],dat_cor_p[,2]) dat_table_S1.1$r3 <- paste0(dat_cor_r[,3],dat_cor_p[,3]) dat_table_S1.1$r4 <- paste0(dat_cor_r[,4],dat_cor_p[,4]) dat_table_S1.1$r5 <- paste0(dat_cor_r[,5],dat_cor_p[,5]) dat_table_S1.1[1,4:8] <- NA dat_table_S1.1[2,5:8] <- NA dat_table_S1.1[3,6:8] <- NA dat_table_S1.1[4,7:8] <- NA dat_table_S1.1[5,8] <- NA dat_table_S1.1$blank1 <- NA dat_table_S1.1 <- dat_table_S1.1[,c(1:3,9,4:8)] col_keys <- c("X1","X2","X3","blank1","r1","r2","r3","r4","r5") head1 <- c("Variable","M","SD","","1","2","3","4","5") head <- data.frame(col_keys,head1, stringsAsFactors = FALSE) rm(col_keys,head1) tbl <- flextable(dat_table_S1.1) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:9, border=fp_border(width=2), part="header") tbl <- hline(tbl, i=1, j=1:9, border=fp_border(width=1.2), part="header") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j = c("X1"), align="left", part="body") tbl <- italic(tbl, i=1, j=c("X2","X3"), part="header") tbl <- width(tbl, j =~ X1, width=2.3) tbl <- width(tbl, j =~ X2 + X3, width=.55) tbl <- width(tbl, j =~ blank1, width=.1) tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S1.1.docx") rm(cor_dat1_1, dat_cor, dat_cor_p, dat_cor_r, dat_table_S1.1, dat1_1, doc, head, tbl, format_msd, format_p, format_r) #Note of Table S1.1 dat.descriptions <- subset(dat1, select = c(description_dem,description_aut_r)) dat.lbdq <- subset(dat1, select = c(lbdq1,lbdq2r,lbdq3,lbdq4r,lbdq5,lbdq6r,lbdq7,lbdq8r,lbdq9,lbdq10r,lbdq11,lbdq12r,lbdq13, lbdq14r,lbdq15,lbdq16r,lbdq17,lbdq18r,lbdq19,lbdq20r)) round(psych::alpha(dat.descriptions, na.rm=T)$total[1], 2) round(psych::alpha(dat.lbdq, na.rm=T)$total[1], 2) #for three items, the item-total correlation was close to zero or negative; we kept those items anyway because (1) we wanted to maintain consistency across studies (there was no reason to exclude those items in the other studies) and (2) excluding those items did not alter the results. rm(dat.descriptions, dat.lbdq) ##Table S1.2: Unique Relations of Narcissistic Admiration and Rivalry to the Leadership Measures in Study 1 ##regression models model1a <- lm(Zdescriptions ~ Znarq_adm + Znarq_riv, data=dat1) model1b <- lm(Zlbdq ~ Znarq_adm + Znarq_riv, data=dat1) model1c <- lm(Zbipolar ~ Znarq_adm + Znarq_riv, data=dat1) dat1_1 <- rbind(data.frame(summary(model1a)$coef,confint(model1a)),data.frame(summary(model1b)$coef,confint(model1b)),data.frame(summary(model1c)$coef,confint(model1c))) model2a <- lm(Zdescriptions ~ Znarq_adm + Znarq_riv + ZIM, data=dat1) model2b <- lm(Zlbdq ~ Znarq_adm + Znarq_riv + ZIM, data=dat1) model2c <- lm(Zbipolar ~ Znarq_adm + Znarq_riv + ZIM, data=dat1) dat1_2 <- rbind(data.frame(summary(model2a)$coef,confint(model2a)),data.frame(summary(model2b)$coef,confint(model2b)),data.frame(summary(model2c)$coef,confint(model2c))) ##create table dat1_1 <- dat1_1[!(row.names(dat1_1) %in% c("(Intercept)","(Intercept)1","(Intercept)2")), ] dat1_2 <- dat1_2[!(row.names(dat1_2) %in% c("(Intercept)","(Intercept)1","(Intercept)2")), ] dat1_1[nrow(dat1_1)+3,] <- NA dat1_1$Predictor <- NA dat1_1 <- dat1_1[c(1:2,7,3:4,8,5:6,9),c(7,1,5:6,3:4)] dat1_1$Predictor <- c("ADM","RIV","IM","ADM","RIV","IM","ADM","RIV","IM") dat1_2$blank <- NA dat_table_S1.2 <- cbind(dat1_1,dat1_2[,c(7,1,5:6,3:4)]) colnames(dat_table_S1.2) <- c("Predictor","beta1","ci_lower1","ci_upper1","t1","p1","blank","beta2","ci_lower2","ci_upper2","t2","p2") dat_table_S1.2[,2:12] <- sapply(dat_table_S1.2[,2:12], as.numeric) format_beta <- function(x){ ifelse(abs(x) < 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_table_S1.2[,c(2:4,8:10)] <- dat_table_S1.2[,c(2:4,8:10)] %>% mutate_if(is.numeric, format_beta) format_t <- function(x){ formatC(x, format = "f", digits = 2) } dat_table_S1.2[,c(5,11)] <- dat_table_S1.2[,c(5,11)] %>% mutate_if(is.numeric, format_t) format_p <- function(x){ ifelse(abs(x) < 0.001, "< .001", f_num(unlist(x), digits=3)) } dat_table_S1.2[,c(6,12)] <- dat_table_S1.2[,c(6,12)] %>% mutate_if(is.numeric, format_p) dat_table_S1.2$ci1 <- paste0("[", dat_table_S1.2$ci_lower1, ", ", dat_table_S1.2$ci_upper1, "]") dat_table_S1.2$ci2 <- paste0("[", dat_table_S1.2$ci_lower2, ", ", dat_table_S1.2$ci_upper2, "]") dat_table_S1.2 <- dat_table_S1.2[,c("Predictor","beta1","ci1","t1","p1","blank","beta2","ci2","t2","p2")] dat_table_S1.2[c(3,6,9),c(3:4)] <- NA dat_table_S1.2[10,2] <- "Leadership Descriptions" dat_table_S1.2[11,2] <- "Leadership Behaviors" dat_table_S1.2[12,2] <- "Bipolar Leadership Measure" dat_table_S1.2 <- dat_table_S1.2[c(10,1:3,11,4:6,12,7:9),] col_keys <- c("Predictor","beta1","ci1","t1","p1","blank","beta2","ci2","t2","p2") head1 <- c("","Model 1","Model 1","Model 1","Model 1","","Model 2","Model 2","Model 2","Model 2") head2 <- c("Predictor","\u03B2","95% CI","t","p","","\u03B2","95% CI","t","p") head <- data.frame(col_keys,head1,head2, stringsAsFactors = FALSE) rm(col_keys,head1,head2) tbl <- flextable(dat_table_S1.2) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:10, border=fp_border(width=2), part="header") tbl <- merge_at(tbl, i=1, j=2:5, part="header") tbl <- merge_at(tbl, i=1, j=7:10, part="header") tbl <- hline(tbl, i=1, j=c(2:5,7:10), border=fp_border(width=1.2), part="header") tbl <- hline(tbl, i=2, j=1:10, border=fp_border(width=1.2), part="header") tbl <- merge_at(tbl, i=1, j=2:10, part="body") tbl <- merge_at(tbl, i=5, j=2:10, part="body") tbl <- merge_at(tbl, i=9, j=2:10, part="body") tbl <- hline(tbl, i=c(4,8), j=1:10, border=fp_border(width=1.2), part="body") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j = c("Predictor"), align="left", part="body") tbl <- italic(tbl, i=2, j=c("t1","p1","t2","p2"), part="header") tbl <- width(tbl, j =~ Predictor, width=.9) tbl <- width(tbl, j =~ beta1 + beta2, width=.45) tbl <- width(tbl, j =~ ci1 + ci2, width=.95) tbl <- width(tbl, j =~ t1 + t2 + p1 + p2, width=.6) tbl <- width(tbl, j =~ blank, width=.3) tbl <- colformat_lgl(tbl, j=2:6, na_str="") tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S1.2.docx") rm(model1a,model1b,model1c,dat1_1,model2a,model2b,model2c,dat1_2,dat_table_S1.2,head,tbl, doc, format_beta, format_p, format_t) #Presentation Order of Leadership Descriptions ##Table S1.3: Unique Relations of Narcissistic Admiration and Rivalry to the Leadership Measures Moderated by Presentation Order of Leadership Descriptions in Study 1 ###regression models model1 <- lm(Zpref_index ~ Znarq_adm + Znarq_riv + Zorder + ZADMxOrder + ZRIVxOrder, dat=dat1) model2 <- lm(Zdescriptions ~ Znarq_adm + Znarq_riv + Zorder + ZADMxOrder + ZRIVxOrder, dat=dat1) model3 <- lm(Zlbdq ~ Znarq_adm + Znarq_riv + Zorder + ZADMxOrder + ZRIVxOrder, dat=dat1) model4 <- lm(Zbipolar ~ Znarq_adm + Znarq_riv + Zorder + ZADMxOrder + ZRIVxOrder, dat=dat1) dat_table_S1.3 <- rbind(data.frame(summary(model1)$coef,confint(model1)),data.frame(summary(model2)$coef,confint(model2)),data.frame(summary(model3)$coef,confint(model3)),data.frame(summary(model4)$coef,confint(model4))) ###create table dat_table_S1.3 <- dat_table_S1.3[!(row.names(dat_table_S1.3) %in% c("(Intercept)","(Intercept)1","(Intercept)2","(Intercept)3")), ] dat_table_S1.3$Predictor <- c("ADM","RIV","Order","ADM x Order","RIV x Order","ADM","RIV","Order","ADM x Order","RIV x Order","ADM","RIV","Order","ADM x Order","RIV x Order","ADM","RIV","Order","ADM x Order","RIV x Order") dat_table_S1.3 <- dat_table_S1.3[,c(7,1,5:6,3:4)] colnames(dat_table_S1.3) <- c("Predictor","beta","ci_lower","ci_upper","t","p") dat_table_S1.3[,2:6] <- sapply(dat_table_S1.3[,2:6], as.numeric) format_beta <- function(x){ ifelse(abs(x) < 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_table_S1.3[,c(2:4)] <- dat_table_S1.3[,c(2:4)] %>% mutate_if(is.numeric, format_beta) format_t <- function(x){ formatC(x, format = "f", digits = 2) } dat_table_S1.3[,5] <- sapply(dat_table_S1.3[,5], format_t) format_p <- function(x){ ifelse(abs(x) < 0.001, "< .001", f_num(unlist(x), digits=3)) } dat_table_S1.3[,6] <- sapply(dat_table_S1.3[,6], format_p) dat_table_S1.3$ci <- paste0("[", dat_table_S1.3$ci_lower, ", ", dat_table_S1.3$ci_upper, "]") dat_table_S1.3 <- dat_table_S1.3[,c("Predictor","beta","ci","t","p")] dat_table_S1.3[21,2] <- "Index of Leadership Preferences" dat_table_S1.3[22,2] <- "Leadership Descriptions" dat_table_S1.3[23,2] <- "Leadership Behaviors" dat_table_S1.3[24,2] <- "Bipolar Leadership Measure" dat_table_S1.3 <- dat_table_S1.3[c(21,1:5,22,6:10,23,11:15,24,16:20),] col_keys <- c("Predictor","beta","ci","t","p") head1 <- c("Predictor","\u03B2","95% CI","t","p") head <- data.frame(col_keys,head1, stringsAsFactors = FALSE) rm(col_keys,head1) tbl <- flextable(dat_table_S1.3) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:5, border=fp_border(width=2), part="header") tbl <- hline(tbl, i=1, j=1:5, border=fp_border(width=1.2), part="header") tbl <- hline(tbl, i=c(6,12,18), j=1:5, border=fp_border(width=1.2), part="body") tbl <- merge_at(tbl, i=1, j=2:5, part="body") tbl <- merge_at(tbl, i=7, j=2:5, part="body") tbl <- merge_at(tbl, i=13, j=2:5, part="body") tbl <- merge_at(tbl, i=19, j=2:5, part="body") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j = c("Predictor"), align="left", part="body") tbl <- italic(tbl, i=1, j=c("t","p"), part="header") tbl <- width(tbl, j =~ Predictor, width=1.2) tbl <- width(tbl, j =~ beta, width=.45) tbl <- width(tbl, j =~ ci, width=.95) tbl <- width(tbl, j =~ t + p, width=.6) tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S1.3.docx") rm(model1,model2,model3,model4,dat_table_S1.3,head,tbl, doc, format_beta, format_p, format_t) #NARQ Total Score ##Internal Consistency and Descriptive Statistics of the NARQ Total Score dat.narq <- subset(dat1, select = c(2:19)) round(psych::alpha(dat.narq, na.rm=T)$total[1], digits = 2) round(mean(dat1$narq),2) round(sd(dat1$narq),2) rm(dat.narq) ##Table S1.4: Relations of the NARQ Total Score to the Leadership Measures in Study 1 ###regression models model1a <- lm(Zpref_index ~ Znarq, data=dat1) model1b <- lm(Zdescriptions ~ Znarq, data=dat1) model1c <- lm(Zlbdq ~ Znarq, data=dat1) model1d <- lm(Zbipolar ~ Znarq, data=dat1) dat1_1 <- rbind(data.frame(summary(model1a)$coef,confint(model1a)),data.frame(summary(model1b)$coef,confint(model1b)),data.frame(summary(model1c)$coef,confint(model1c)),data.frame(summary(model1d)$coef,confint(model1d))) model2a <- lm(Zpref_index ~ Znarq + ZIM, data=dat1) model2b <- lm(Zdescriptions ~ Znarq + ZIM, data=dat1) model2c <- lm(Zlbdq ~ Znarq + ZIM, data=dat1) model2d <- lm(Zbipolar ~ Znarq + ZIM, data=dat1) dat1_2 <- rbind(data.frame(summary(model2a)$coef,confint(model2a)),data.frame(summary(model2b)$coef,confint(model2b)),data.frame(summary(model2c)$coef,confint(model2c)),data.frame(summary(model2d)$coef,confint(model2d))) model3a <- lm(Zpref_index ~ Znarq + Zorder + ZNARQxOrder, data=dat1) model3b <- lm(Zdescriptions ~ Znarq + Zorder + ZNARQxOrder, data=dat1) model3c <- lm(Zlbdq ~ Znarq + Zorder + ZNARQxOrder, data=dat1) model3d <- lm(Zbipolar ~ Znarq + Zorder + ZNARQxOrder, data=dat1) dat1_3 <- rbind(data.frame(summary(model3a)$coef,confint(model3a)),data.frame(summary(model3b)$coef,confint(model3b)),data.frame(summary(model3c)$coef,confint(model3c)),data.frame(summary(model3d)$coef,confint(model3d))) ###create table dat1_1 <- dat1_1[!(row.names(dat1_1) %in% c("(Intercept)","(Intercept)1","(Intercept)2","(Intercept)3")), ] dat1_2 <- dat1_2[!(row.names(dat1_2) %in% c("(Intercept)","(Intercept)1","(Intercept)2","(Intercept)3")), ] dat1_3 <- dat1_3[!(row.names(dat1_3) %in% c("(Intercept)","(Intercept)1","(Intercept)2","(Intercept)3")), ] dat1_1[nrow(dat1_1)+12,] <- NA dat1_1$Predictor <- NA dat1_1 <- dat1_1[c(1,5:7,2,8:10,3,11:13,4,14:16),c(7,1,5:6,3:4)] dat1_1$Predictor <- c("NARQ","IM","Order","NARQ x Order","NARQ","IM","Order","NARQ x Order","NARQ","IM","Order","NARQ x Order","NARQ","IM","Order","NARQ x Order") dat1_2[nrow(dat1_1)+8,] <- NA dat1_2$blank1 <- NA dat1_3[nrow(dat1_1)+4,] <- NA dat1_3$blank2 <- NA dat_table_S1.4 <- cbind(dat1_1,dat1_2[c(1:2,9:10,3:4,11:12,5:6,13:14,7:8,15:16),c(7,1,5:6,3:4)],dat1_3[c(1,13,2:4,14,5:7,15,8:10,16,11:12),c(7,1,5:6,3:4)]) colnames(dat_table_S1.4) <- c("Predictor","beta1","ci_lower1","ci_upper1","t1","p1","blank1","beta2","ci_lower2","ci_upper2","t2","p2","blank2","beta3","ci_lower3","ci_upper3","t3","p3") dat_table_S1.4[,2:18] <- sapply(dat_table_S1.4[,2:18], as.numeric) format_beta <- function(x){ ifelse(abs(x) < 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_table_S1.4[,c(2:4,8:10,14:16)] <- dat_table_S1.4[,c(2:4,8:10,14:16)] %>% mutate_if(is.numeric, format_beta) format_t <- function(x){ formatC(x, format = "f", digits = 2) } dat_table_S1.4[,c(5,11,17)] <- dat_table_S1.4[,c(5,11,17)] %>% mutate_if(is.numeric, format_t) format_p <- function(x){ ifelse(abs(x) < 0.001, "< .001", f_num(unlist(x), digits=3)) } dat_table_S1.4[,c(6,12,18)] <- dat_table_S1.4[,c(6,12,18)] %>% mutate_if(is.numeric, format_p) dat_table_S1.4$ci1 <- paste0("[", dat_table_S1.4$ci_lower1, ", ", dat_table_S1.4$ci_upper1, "]") dat_table_S1.4$ci2 <- paste0("[", dat_table_S1.4$ci_lower2, ", ", dat_table_S1.4$ci_upper2, "]") dat_table_S1.4$ci3 <- paste0("[", dat_table_S1.4$ci_lower3, ", ", dat_table_S1.4$ci_upper3, "]") dat_table_S1.4 <- dat_table_S1.4[,c("Predictor","beta1","ci1","t1","p1","blank1","beta2","ci2","t2","p2","blank2","beta3","ci3","t3","p3")] dat_table_S1.4[c(2:4,6:8,10:12,14:16),c(3:4)] <- NA dat_table_S1.4[c(3:4,7:8,11:12,15:16),c(8:9)] <- NA dat_table_S1.4[c(2,6,10,14),c(13:14)] <- NA dat_table_S1.4[17,2] <- "Index of Leadership Preferences" dat_table_S1.4[18,2] <- "Leadership Descriptions" dat_table_S1.4[19,2] <- "Leadership Behaviors" dat_table_S1.4[20,2] <- "Bipolar Leadership Measure" dat_table_S1.4 <- dat_table_S1.4[c(17,1:4,18,5:8,19,9:12,20,13:16),] col_keys <- c("Predictor","beta1","ci1","t1","p1","blank1","beta2","ci2","t2","p2","blank2","beta3","ci3","t3","p3") head1 <- c("","Model 1","Model 1","Model 1","Model 1","","Model 2","Model 2","Model 2","Model 2","","Model 3","Model 3","Model 3","Model 3") head2 <- c("Predictor","\u03B2","95% CI","t","p","","\u03B2","95% CI","t","p","","\u03B2","95% CI","t","p") head <- data.frame(col_keys,head1,head2, stringsAsFactors = FALSE) rm(col_keys,head1,head2) tbl <- flextable(dat_table_S1.4) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:15, border=fp_border(width=2), part="header") tbl <- merge_at(tbl, i=1, j=2:5, part="header") tbl <- merge_at(tbl, i=1, j=7:10, part="header") tbl <- merge_at(tbl, i=1, j=12:15, part="header") tbl <- hline(tbl, i=1, j=c(2:5,7:10,12:15), border=fp_border(width=1.2), part="header") tbl <- hline(tbl, i=2, j=1:15, border=fp_border(width=1.2), part="header") tbl <- hline(tbl, i=c(5,10,15), j=1:15, border=fp_border(width=1.2), part="body") tbl <- merge_at(tbl, i=1, j=2:15, part="body") tbl <- merge_at(tbl, i=6, j=2:15, part="body") tbl <- merge_at(tbl, i=11, j=2:15, part="body") tbl <- merge_at(tbl, i=16, j=2:15, part="body") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j = c("Predictor"), align="left", part="body") tbl <- italic(tbl, i=2, j=c("t1","p1","t2","p2","t3","p3"), part="header") tbl <- width(tbl, j =~ Predictor, width=1.3) tbl <- width(tbl, j =~ beta1 + beta2, width=.45) tbl <- width(tbl, j =~ ci1 + ci2 + ci3, width=1) tbl <- width(tbl, j =~ t1 + t2 + t3, width=.6) tbl <- width(tbl, j =~ p1 + p2 + p3, width=.6) tbl <- width(tbl, j =~ blank1 + blank2, width=.3) tbl <- colformat_lgl(tbl, j=2:15, na_str="") tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S1.4.docx") rm(model1a,model1b,model1c,model1d,dat1_1,model2a,model2b,model2c,model2d,dat1_2,model3a,model3b,model3c,model3d,dat1_3,dat_table_S1.4,head,tbl, doc, format_beta, format_p, format_t) #NPI ##Internal Consistency and Descriptive Statistics of NPI dat.npi <- subset(dat1, select = c(20:59)) round(psych::alpha(dat.npi, na.rm=T)$total[1], digits = 2) round(mean(dat1$npi),2) round(sd(dat1$npi),2) rm(dat.npi) ##Table S1.5: Relations of NPI-Narcissism to the Leadership Measures in Study 1 ###regression models model1a <- lm(Zpref_index ~ Znpi, data=dat1) model1b <- lm(Zdescriptions ~ Znpi, data=dat1) model1c <- lm(Zlbdq ~ Znpi, data=dat1) model1d <- lm(Zbipolar ~ Znpi, data=dat1) dat1_1 <- rbind(data.frame(summary(model1a)$coef,confint(model1a)),data.frame(summary(model1b)$coef,confint(model1b)),data.frame(summary(model1c)$coef,confint(model1c)),data.frame(summary(model1d)$coef,confint(model1d))) model2a <- lm(Zpref_index ~ Znpi + ZIM, data=dat1) model2b <- lm(Zdescriptions ~ Znpi + ZIM, data=dat1) model2c <- lm(Zlbdq ~ Znpi + ZIM, data=dat1) model2d <- lm(Zbipolar ~ Znpi + ZIM, data=dat1) dat1_2 <- rbind(data.frame(summary(model2a)$coef,confint(model2a)),data.frame(summary(model2b)$coef,confint(model2b)),data.frame(summary(model2c)$coef,confint(model2c)),data.frame(summary(model2d)$coef,confint(model2d))) model3a <- lm(Zpref_index ~ Znpi + Zorder + ZNPIxOrder, data=dat1) model3b <- lm(Zdescriptions ~ Znpi + Zorder + ZNPIxOrder, data=dat1) model3c <- lm(Zlbdq ~ Znpi + Zorder + ZNPIxOrder, data=dat1) model3d <- lm(Zbipolar ~ Znpi + Zorder + ZNPIxOrder, data=dat1) dat1_3 <- rbind(data.frame(summary(model3a)$coef,confint(model3a)),data.frame(summary(model3b)$coef,confint(model3b)),data.frame(summary(model3c)$coef,confint(model3c)),data.frame(summary(model3d)$coef,confint(model3d))) ###create table dat1_1 <- dat1_1[!(row.names(dat1_1) %in% c("(Intercept)","(Intercept)1","(Intercept)2","(Intercept)3")), ] dat1_2 <- dat1_2[!(row.names(dat1_2) %in% c("(Intercept)","(Intercept)1","(Intercept)2","(Intercept)3")), ] dat1_3 <- dat1_3[!(row.names(dat1_3) %in% c("(Intercept)","(Intercept)1","(Intercept)2","(Intercept)3")), ] dat1_1[nrow(dat1_1)+12,] <- NA dat1_1$Predictor <- NA dat1_1 <- dat1_1[c(1,5:7,2,8:10,3,11:13,4,14:16),c(7,1,5:6,3:4)] dat1_1$Predictor <- c("NPI","IM","Order","NPI x Order","NPI","IM","Order","NPI x Order","NPI","IM","Order","NPI x Order","NPI","IM","Order","NPI x Order") dat1_2[nrow(dat1_1)+8,] <- NA dat1_2$blank1 <- NA dat1_3[nrow(dat1_1)+4,] <- NA dat1_3$blank2 <- NA dat_table_S1.5 <- cbind(dat1_1,dat1_2[c(1:2,9:10,3:4,11:12,5:6,13:14,7:8,15:16),c(7,1,5:6,3:4)],dat1_3[c(1,13,2:4,14,5:7,15,8:10,16,11:12),c(7,1,5:6,3:4)]) colnames(dat_table_S1.5) <- c("Predictor","beta1","ci_lower1","ci_upper1","t1","p1","blank1","beta2","ci_lower2","ci_upper2","t2","p2","blank2","beta3","ci_lower3","ci_upper3","t3","p3") dat_table_S1.5[,2:18] <- sapply(dat_table_S1.5[,2:18], as.numeric) format_beta <- function(x){ ifelse(abs(x) < 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_table_S1.5[,c(2:4,8:10,14:16)] <- dat_table_S1.5[,c(2:4,8:10,14:16)] %>% mutate_if(is.numeric, format_beta) format_t <- function(x){ formatC(x, format = "f", digits = 2) } dat_table_S1.5[,c(5,11,17)] <- dat_table_S1.5[,c(5,11,17)] %>% mutate_if(is.numeric, format_t) format_p <- function(x){ ifelse(abs(x) < 0.001, "< .001", f_num(unlist(x), digits=3)) } dat_table_S1.5[,c(6,12,18)] <- dat_table_S1.5[,c(6,12,18)] %>% mutate_if(is.numeric, format_p) dat_table_S1.5$ci1 <- paste0("[", dat_table_S1.5$ci_lower1, ", ", dat_table_S1.5$ci_upper1, "]") dat_table_S1.5$ci2 <- paste0("[", dat_table_S1.5$ci_lower2, ", ", dat_table_S1.5$ci_upper2, "]") dat_table_S1.5$ci3 <- paste0("[", dat_table_S1.5$ci_lower3, ", ", dat_table_S1.5$ci_upper3, "]") dat_table_S1.5 <- dat_table_S1.5[,c("Predictor","beta1","ci1","t1","p1","blank1","beta2","ci2","t2","p2","blank2","beta3","ci3","t3","p3")] dat_table_S1.5[c(2:4,6:8,10:12,14:16),c(3:4)] <- NA dat_table_S1.5[c(3:4,7:8,11:12,15:16),c(8:9)] <- NA dat_table_S1.5[c(2,6,10,14),c(13:14)] <- NA dat_table_S1.5[17,2] <- "Index of Leadership Preferences" dat_table_S1.5[18,2] <- "Leadership Descriptions" dat_table_S1.5[19,2] <- "Leadership Behaviors" dat_table_S1.5[20,2] <- "Bipolar Leadership Measure" dat_table_S1.5 <- dat_table_S1.5[c(17,1:4,18,5:8,19,9:12,20,13:16),] col_keys <- c("Predictor","beta1","ci1","t1","p1","blank1","beta2","ci2","t2","p2","blank2","beta3","ci3","t3","p3") head1 <- c("","Model 1","Model 1","Model 1","Model 1","","Model 2","Model 2","Model 2","Model 2","","Model 3","Model 3","Model 3","Model 3") head2 <- c("Predictor","\u03B2","95% CI","t","p","","\u03B2","95% CI","t","p","","\u03B2","95% CI","t","p") head <- data.frame(col_keys,head1,head2, stringsAsFactors = FALSE) rm(col_keys,head1,head2) tbl <- flextable(dat_table_S1.5) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:15, border=fp_border(width=2), part="header") tbl <- merge_at(tbl, i=1, j=2:5, part="header") tbl <- merge_at(tbl, i=1, j=7:10, part="header") tbl <- merge_at(tbl, i=1, j=12:15, part="header") tbl <- hline(tbl, i=1, j=c(2:5,7:10,12:15), border=fp_border(width=1.2), part="header") tbl <- hline(tbl, i=2, j=1:15, border=fp_border(width=1.2), part="header") tbl <- hline(tbl, i=c(5,10,15), j=1:15, border=fp_border(width=1.2), part="body") tbl <- merge_at(tbl, i=1, j=2:15, part="body") tbl <- merge_at(tbl, i=6, j=2:15, part="body") tbl <- merge_at(tbl, i=11, j=2:15, part="body") tbl <- merge_at(tbl, i=16, j=2:15, part="body") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j = c("Predictor"), align="left", part="body") tbl <- italic(tbl, i=2, j=c("t1","p1","t2","p2","t3","p3"), part="header") tbl <- width(tbl, j =~ Predictor, width=1.2) tbl <- width(tbl, j =~ beta1 + beta2, width=.45) tbl <- width(tbl, j =~ ci1 + ci2 + ci3, width=.95) tbl <- width(tbl, j =~ t1 + t2 + t3, width=.55) tbl <- width(tbl, j =~ p1 + p2 + p3, width=.6) tbl <- width(tbl, j =~ blank1 + blank2, width=.3) tbl <- colformat_lgl(tbl, j=2:15, na_str="") tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S1.5.docx") rm(model1a,model1b,model1c,model1d,dat1_1,model2a,model2b,model2c,model2d,dat1_2,model3a,model3b,model3c,model3d,dat1_3,dat_table_S1.5,head,tbl, doc, format_beta, format_p, format_t) ##Supplementary Footnote S1: Regression Models With NPI Facets model1a_facets <- lm(Zdescriptions ~ znpi_authority + znpi_exhibitionism + znpi_entitlement, data=dat1) model1b_facets <- lm(Zlbdq ~ znpi_authority + znpi_exhibitionism + znpi_entitlement, data=dat1) model1c_facets <- lm(Zpref_index ~ znpi_authority + znpi_exhibitionism + znpi_entitlement, data=dat1) model1d_facets <- lm(Zbipolar ~ znpi_authority + znpi_exhibitionism + znpi_entitlement, data=dat1) dat1_facets <- rbind(data.frame(summary(model1a_facets)$coef,confint(model1a_facets)),data.frame(summary(model1b_facets)$coef,confint(model1b_facets)),data.frame(summary(model1c_facets)$coef,confint(model1c_facets)),data.frame(summary(model1d_facets)$coef,confint(model1d_facets))) rm(model1a_facets,model1b_facets,model1c_facets,model1d_facets,dat1_facets) rm(dat1) ######################################## #S2: Additional Results of Studies 2a-2b ######################################## #read data dat2a <- as.data.frame(fread("https://madata.bib.uni-mannheim.de/427/5/NarcSub_Study2a_Data.csv", header = T, sep = ",")) dat2b <- as.data.frame(fread("https://madata.bib.uni-mannheim.de/427/7/NarcSub_Study2b_Data.csv", header = T, sep = ",")) #apply data-exclusion criteria for Study 2a dat2a <- subset(dat2a, subset = exclude == 0) #recode variables ##Study 2a dat2a$description_aut_supervisor_r <- car::recode(dat2a$description_aut_supervisor, "1=7; 2=6; 3=5; 4=4; 5=3; 6=2; 7=1") dat2a$lbdq2r_supervisor <- car::recode(dat2a$lbdq2_supervisor, "1=5; 2=4; 3=3; 4=2; 5=1") dat2a$lbdq4r_supervisor <- car::recode(dat2a$lbdq4_supervisor, "1=5; 2=4; 3=3; 4=2; 5=1") dat2a$lbdq6r_supervisor <- car::recode(dat2a$lbdq6_supervisor, "1=5; 2=4; 3=3; 4=2; 5=1") dat2a$lbdq8r_supervisor <- car::recode(dat2a$lbdq8_supervisor, "1=5; 2=4; 3=3; 4=2; 5=1") dat2a$lbdq10r_supervisor <- car::recode(dat2a$lbdq10_supervisor, "1=5; 2=4; 3=3; 4=2; 5=1") dat2a$lbdq12r_supervisor <- car::recode(dat2a$lbdq12_supervisor, "1=5; 2=4; 3=3; 4=2; 5=1") dat2a$lbdq14r_supervisor <- car::recode(dat2a$lbdq14_supervisor, "1=5; 2=4; 3=3; 4=2; 5=1") dat2a$lbdq16r_supervisor <- car::recode(dat2a$lbdq16_supervisor, "1=5; 2=4; 3=3; 4=2; 5=1") dat2a$lbdq18r_supervisor <- car::recode(dat2a$lbdq18_supervisor, "1=5; 2=4; 3=3; 4=2; 5=1") dat2a$lbdq20r_supervisor <- car::recode(dat2a$lbdq20_supervisor, "1=5; 2=4; 3=3; 4=2; 5=1") dat2a$description_aut_self_r <- car::recode(dat2a$description_aut_self, "1=7; 2=6; 3=5; 4=4; 5=3; 6=2; 7=1") dat2a$lbdq2r_self <- car::recode(dat2a$lbdq2_self, "1=5; 2=4; 3=3; 4=2; 5=1") dat2a$lbdq4r_self <- car::recode(dat2a$lbdq4_self, "1=5; 2=4; 3=3; 4=2; 5=1") dat2a$lbdq6r_self <- car::recode(dat2a$lbdq6_self, "1=5; 2=4; 3=3; 4=2; 5=1") dat2a$lbdq8r_self <- car::recode(dat2a$lbdq8_self, "1=5; 2=4; 3=3; 4=2; 5=1") dat2a$lbdq10r_self <- car::recode(dat2a$lbdq10_self, "1=5; 2=4; 3=3; 4=2; 5=1") dat2a$lbdq12r_self <- car::recode(dat2a$lbdq12_self, "1=5; 2=4; 3=3; 4=2; 5=1") dat2a$lbdq14r_self <- car::recode(dat2a$lbdq14_self, "1=5; 2=4; 3=3; 4=2; 5=1") dat2a$lbdq16r_self <- car::recode(dat2a$lbdq16_self, "1=5; 2=4; 3=3; 4=2; 5=1") dat2a$lbdq18r_self <- car::recode(dat2a$lbdq18_self, "1=5; 2=4; 3=3; 4=2; 5=1") dat2a$lbdq20r_self <- car::recode(dat2a$lbdq20_self, "1=5; 2=4; 3=3; 4=2; 5=1") dat2a$bfi1r <- 6-dat2a$bfi1 dat2a$bfi4r <- 6-dat2a$bfi4 dat2a$bfi7r <- 6-dat2a$bfi7 dat2a$bfi8r <- 6-dat2a$bfi8 dat2a$bfi10r <- 6-dat2a$bfi10 dat2a$se3r <- 5-dat2a$se3 dat2a$se5r <- 5-dat2a$se5 dat2a$se8r <- 5-dat2a$se8 dat2a$se9r <- 5-dat2a$se9 dat2a$se10r <- 5-dat2a$se10 ##Study 2b dat2b$description_aut_supervisor_r <- car::recode(dat2b$description_aut_supervisor, "1=6; 2=5; 3=4; 4=3; 5=2; 6=1") dat2b$lbdq2r_supervisor <- car::recode(dat2b$lbdq2_supervisor, "1=6; 2=5; 3=4; 4=3; 5=2; 6=1") dat2b$lbdq4r_supervisor <- car::recode(dat2b$lbdq4_supervisor, "1=6; 2=5; 3=4; 4=3; 5=2; 6=1") dat2b$lbdq6r_supervisor <- car::recode(dat2b$lbdq6_supervisor, "1=6; 2=5; 3=4; 4=3; 5=2; 6=1") dat2b$lbdq8r_supervisor <- car::recode(dat2b$lbdq8_supervisor, "1=6; 2=5; 3=4; 4=3; 5=2; 6=1") dat2b$lbdq10r_supervisor <- car::recode(dat2b$lbdq10_supervisor, "1=6; 2=5; 3=4; 4=3; 5=2; 6=1") dat2b$description_aut_self_r <- car::recode(dat2b$description_aut_self, "1=6; 2=5; 3=4; 4=3; 5=2; 6=1") dat2b$lbdq2r_self <- car::recode(dat2b$lbdq2_self, "1=6; 2=5; 3=4; 4=3; 5=2; 6=1") dat2b$lbdq4r_self <- car::recode(dat2b$lbdq4_self, "1=6; 2=5; 3=4; 4=3; 5=2; 6=1") dat2b$lbdq6r_self <- car::recode(dat2b$lbdq6_self, "1=6; 2=5; 3=4; 4=3; 5=2; 6=1") dat2b$lbdq8r_self <- car::recode(dat2b$lbdq8_self, "1=6; 2=5; 3=4; 4=3; 5=2; 6=1") dat2b$lbdq10r_self <- car::recode(dat2b$lbdq10_self, "1=6; 2=5; 3=4; 4=3; 5=2; 6=1") dat2b$bfi1r <- 8-dat2b$bfi1 dat2b$bfi3r <- 8-dat2b$bfi3 dat2b$bfi7r <- 8-dat2b$bfi7 dat2b$bfi8r <- 8-dat2b$bfi8 dat2b$bfi10r <- 8-dat2b$bfi10 dat2b$bfi14r <- 8-dat2b$bfi14 #compute variables ##Study 2a ###predictors dat2a$narq_adm <- rowMeans(dat2a[c("narq1", "narq2", "narq3", "narq5", "narq7", "narq8", "narq15", "narq16", "narq18")], na.rm=TRUE) dat2a$Znarq_adm <- as.numeric(scale(dat2a$narq_adm)) dat2a$narq_riv <- rowMeans(dat2a[c("narq4", "narq6", "narq9", "narq10", "narq11", "narq12", "narq13", "narq14", "narq17")], na.rm=TRUE) dat2a$Znarq_riv <- as.numeric(scale(dat2a$narq_riv)) dat2a$narq <- rowMeans(dat2a[c(70:87)], na.rm=TRUE) dat2a$Znarq <- as.numeric(scale(dat2a$narq)) dat2a$npi <- rowMeans(dat2a[c(30:69)], na.rm=TRUE) dat2a$Znpi <- as.numeric(scale(dat2a$npi)) dat2a$npi_authority <- rowMeans( dat2a[c("npi1", "npi5", "npi10", "npi11", "npi12", "npi27", "npi32", "npi33", "npi34", "npi36", "npi40")], na.rm=TRUE) dat2a$Znpi_authority <- as.numeric(scale(dat2a$npi_authority)) dat2a$npi_exhibitionism <- rowMeans( dat2a[c("npi4", "npi7", "npi15", "npi19", "npi20", "npi26", "npi28", "npi29", "npi30", "npi38")], na.rm=TRUE) dat2a$Znpi_exhibitionism <- as.numeric(scale(dat2a$npi_exhibitionism)) dat2a$npi_entitlement <- rowMeans(dat2a[c("npi13", "npi14", "npi24", "npi25")], na.rm=TRUE) dat2a$Znpi_entitlement <- as.numeric(scale(dat2a$npi_entitlement)) ###moderators dat2a$descriptions_supervisor <- rowMeans(dat2a[c("description_dem_supervisor","description_aut_supervisor_r")], na.rm = TRUE) dat2a$Zdescriptions_supervisor <- as.numeric(scale(dat2a$descriptions_supervisor)) dat2a$lbdq_supervisor <- rowMeans(dat2a[c("lbdq1_supervisor","lbdq3_supervisor","lbdq5_supervisor","lbdq7_supervisor","lbdq9_supervisor","lbdq11_supervisor","lbdq13_supervisor", "lbdq15_supervisor","lbdq17_supervisor","lbdq19_supervisor","lbdq2r_supervisor","lbdq4r_supervisor","lbdq6r_supervisor","lbdq8r_supervisor", "lbdq10r_supervisor","lbdq12r_supervisor","lbdq14r_supervisor","lbdq16r_supervisor","lbdq18r_supervisor","lbdq20r_supervisor")], na.rm = TRUE) dat2a$Zlbdq_supervisor <- as.numeric(scale(dat2a$lbdq_supervisor)) dat2a$style_index_supervisor <- rowMeans(dat2a[c("Zdescriptions_supervisor","Zlbdq_supervisor")], na.rm = TRUE) dat2a$Zstyle_index_supervisor <- as.numeric(scale(dat2a$style_index_supervisor)) dat2a$Zorder <- as.numeric(scale(dat2a$completion_order)) ###mediators dat2a$descriptions_self <- rowMeans(dat2a[c("description_dem_self","description_aut_self_r")], na.rm=TRUE) dat2a$Zdescriptions_self <- as.numeric(scale(dat2a$descriptions_self)) dat2a$lbdq_self <- rowMeans(dat2a[c("lbdq1_self","lbdq3_self","lbdq5_self","lbdq7_self","lbdq9_self","lbdq11_self","lbdq13_self", "lbdq15_self","lbdq17_self","lbdq19_self","lbdq2r_self","lbdq4r_self","lbdq6r_self","lbdq8r_self", "lbdq10r_self","lbdq12r_self","lbdq14r_self","lbdq16r_self","lbdq18r_self","lbdq20r_self")], na.rm=TRUE) dat2a$Zlbdq_self <- as.numeric(scale(dat2a$lbdq_self)) dat2a$style_index_self <- rowMeans(dat2a[c("Zdescriptions_self","Zlbdq_self")], na.rm = TRUE) dat2a$Zstyle_index_self <- as.numeric(scale(dat2a$style_index_self)) ###interactions dat2a$ZADMxSLS <- as.numeric(scale(dat2a$Znarq_adm*dat2a$Zstyle_index_supervisor)) dat2a$ZRIVxSLS <- as.numeric(scale(dat2a$Znarq_riv*dat2a$Zstyle_index_supervisor)) dat2a$ZNARQxSLS <- as.numeric(scale(dat2a$Znarq*dat2a$Zstyle_index_supervisor)) dat2a$ZNPIxSLS <- as.numeric(scale(dat2a$Znpi*dat2a$Zstyle_index_supervisor)) dat2a$ZSHLSxSLS <- as.numeric(scale(dat2a$Zstyle_index_self*dat2a$Zstyle_index_supervisor)) dat2a$ZADMxSLS_descriptions <- as.numeric(scale(dat2a$Znarq_adm*dat2a$Zdescriptions_supervisor)) dat2a$ZRIVxSLS_descriptions <- as.numeric(scale(dat2a$Znarq_riv*dat2a$Zdescriptions_supervisor)) dat2a$ZNARQxSLS_descriptions <- as.numeric(scale(dat2a$Znarq*dat2a$Zdescriptions_supervisor)) dat2a$ZNPIxSLS_descriptions <- as.numeric(scale(dat2a$Znpi*dat2a$Zdescriptions_supervisor)) dat2a$ZSHLSxSLS_descriptions <- as.numeric(scale(dat2a$Zdescriptions_self*dat2a$Zdescriptions_supervisor)) dat2a$ZADMxSLS_lbdq <- as.numeric(scale(dat2a$Znarq_adm*dat2a$Zlbdq_supervisor)) dat2a$ZRIVxSLS_lbdq <- as.numeric(scale(dat2a$Znarq_riv*dat2a$Zlbdq_supervisor)) dat2a$ZNARQxSLS_lbdq <- as.numeric(scale(dat2a$Znarq*dat2a$Zlbdq_supervisor)) dat2a$ZNPIxSLS_lbdq <- as.numeric(scale(dat2a$Znpi*dat2a$Zlbdq_supervisor)) dat2a$ZSHLSxSLS_lbdq <- as.numeric(scale(dat2a$Zlbdq_self*dat2a$Zlbdq_supervisor)) dat2a$ZADMxORD <- as.numeric(scale(dat2a$Znarq_adm*dat2a$Zorder)) dat2a$ZRIVxORD <- as.numeric(scale(dat2a$Znarq_riv*dat2a$Zorder)) dat2a$ZNARQxORD <- as.numeric(scale(dat2a$Znarq*dat2a$Zorder)) dat2a$ZNPIxORD <- as.numeric(scale(dat2a$Znpi*dat2a$Zorder)) dat2a$ZSLSxORD <- as.numeric(scale(dat2a$Zstyle_index_supervisor*dat2a$Zorder)) dat2a$ZADMxSLSxORD <- as.numeric(scale(dat2a$Znarq_adm*dat2a$Zstyle_index_supervisor*dat2a$Zorder)) dat2a$ZRIVxSLSxORD <- as.numeric(scale(dat2a$Znarq_riv*dat2a$Zstyle_index_supervisor*dat2a$Zorder)) dat2a$ZNARQxSLSxORD <- as.numeric(scale(dat2a$Znarq*dat2a$Zstyle_index_supervisor*dat2a$Zorder)) dat2a$ZNPIxSLSxORD <- as.numeric(scale(dat2a$Znpi*dat2a$Zstyle_index_supervisor*dat2a$Zorder)) dat2a$ZNPI_AUTxSLS <- as.numeric(scale(dat2a$Znpi_authority*dat2a$Zstyle_index_supervisor)) dat2a$ZNPI_AUTxSLS_descriptions <- as.numeric(scale(dat2a$Znpi_authority*dat2a$Zdescriptions_supervisor)) dat2a$ZNPI_AUTxSLS_lbdq <- as.numeric(scale(dat2a$Znpi_authority*dat2a$Zlbdq_supervisor)) dat2a$ZNPI_EXHxSLS <- as.numeric(scale(dat2a$Znpi_exhibitionism*dat2a$Zstyle_index_supervisor)) dat2a$ZNPI_EXHxSLS_descriptions <- as.numeric(scale(dat2a$Znpi_exhibitionism*dat2a$Zdescriptions_supervisor)) dat2a$ZNPI_EXHxSLS_lbdq <- as.numeric(scale(dat2a$Znpi_exhibitionism*dat2a$Zlbdq_supervisor)) dat2a$ZNPI_ENTxSLS <- as.numeric(scale(dat2a$Znpi_entitlement*dat2a$Zstyle_index_supervisor)) dat2a$ZNPI_ENTxSLS_descriptions <- as.numeric(scale(dat2a$Znpi_entitlement*dat2a$Zdescriptions_supervisor)) dat2a$ZNPI_ENTxSLS_lbdq <- as.numeric(scale(dat2a$Znpi_entitlement*dat2a$Zlbdq_supervisor)) ###dependent variable dat2a$zvalence <- as.numeric(scale(rowMeans(dat2a[c("valence1","valence2","valence3")], na.rm=TRUE))) dat2a$zsuccess <- as.numeric(scale(rowMeans(dat2a[c("success1","success2","success3")], na.rm=TRUE))) dat2a$boss_desirability3r <- 8 - dat2a$boss_desirability3 dat2a$zboss_desirability <- as.numeric(scale(rowMeans(dat2a[c("boss_desirability1","boss_desirability2","boss_desirability3r")], na.rm=TRUE))) dat2a$zliking <- as.numeric(scale(rowMeans(dat2a[c("liking1","liking2","liking3")], na.rm=TRUE))) dat2a$zreputation <- as.numeric(scale(rowMeans(dat2a[c("reputation1","reputation2")], na.rm=TRUE))) dat2a$zcompetence <- as.numeric(scale(rowMeans(dat2a[c("competence1","competence2","competence3")], na.rm=TRUE))) dat2a$zwarmth <- as.numeric(scale(rowMeans(dat2a[c("warmth1","warmth2","warmth3")], na.rm=TRUE))) dat2a$zworking_conditions <- as.numeric(scale(rowMeans(dat2a[c("working_conditions1","working_conditions2","working_conditions3")], na.rm=TRUE))) dat2a$attraction <- rowMeans(dat2a[c("zvalence","zsuccess","zboss_desirability","zliking","zreputation","zcompetence","zwarmth","zworking_conditions")], na.rm=TRUE) dat2a$Zattraction <- as.numeric(scale(dat2a$attraction)) ###covariates and their interactions dat2a$agr <- rowMeans(dat2a[c("bfi2","bfi7r")], na.rm=TRUE) dat2a$Zagr <- as.numeric(scale(dat2a$agr)) dat2a$cns <- rowMeans(dat2a[c("bfi3","bfi8r")], na.rm=TRUE) dat2a$Zcns <- as.numeric(scale(dat2a$cns)) dat2a$ext <- rowMeans(dat2a[c("bfi1r","bfi6")], na.rm=TRUE) dat2a$Zext <- as.numeric(scale(dat2a$ext)) dat2a$neu <- rowMeans(dat2a[c("bfi4r","bfi9")], na.rm=TRUE) dat2a$Zneu <- as.numeric(scale(dat2a$neu)) dat2a$opn <- rowMeans(dat2a[c("bfi5","bfi10r")], na.rm=TRUE) dat2a$Zopn <- as.numeric(scale(dat2a$opn)) dat2a$selfesteem <- rowMeans(dat2a[c("se1","se2","se3r","se4","se5r","se6","se7","se8r","se9r","se10r")], na.rm=TRUE) dat2a$Zse <- as.numeric(scale(dat2a$selfesteem)) dat2a$ZAGRxSLS <- as.numeric(scale(dat2a$Zagr*dat2a$Zstyle_index_supervisor)) dat2a$ZCNSxSLS <- as.numeric(scale(dat2a$Zcns*dat2a$Zstyle_index_supervisor)) dat2a$ZEXTxSLS <- as.numeric(scale(dat2a$Zext*dat2a$Zstyle_index_supervisor)) dat2a$ZNEUxSLS <- as.numeric(scale(dat2a$Zneu*dat2a$Zstyle_index_supervisor)) dat2a$ZOPNxSLS <- as.numeric(scale(dat2a$Zopn*dat2a$Zstyle_index_supervisor)) dat2a$ZSExSLS <- as.numeric(scale(dat2a$Zse*dat2a$Zstyle_index_supervisor)) ##Study 2b ###predictors dat2b$narq_adm <- rowMeans(dat2b[c("narq1", "narq2", "narq3", "narq5", "narq7", "narq8", "narq15", "narq16", "narq18")], na.rm=TRUE) dat2b$Znarq_adm <- scale(dat2b$narq_adm) dat2b$narq_riv <- rowMeans(dat2b[c("narq4", "narq6", "narq9", "narq10", "narq11", "narq12", "narq13", "narq14", "narq17")], na.rm=TRUE) dat2b$Znarq_riv <- scale(dat2b$narq_riv) dat2b$narq <- rowMeans(dat2b[c(41:58)], na.rm=TRUE) dat2b$Znarq <- scale(dat2b$narq) dat2b$npi <- rowMeans(dat2b[c(28:40)], na.rm=TRUE) dat2b$Znpi <- scale(dat2b$npi) dat2b$npi_authority <- rowMeans( dat2b[c("npi2", "npi10", "npi12","npi13")], na.rm=TRUE) dat2b$Znpi_authority <- as.numeric(scale(dat2b$npi_authority)) dat2b$npi_exhibitionism <- rowMeans( dat2b[c("npi1", "npi5", "npi6", "npi7", "npi11")], na.rm=TRUE) dat2b$Znpi_exhibitionism <- as.numeric(scale(dat2b$npi_exhibitionism)) dat2b$npi_entitlement <- rowMeans(dat2b[c("npi3", "npi4", "npi8", "npi9")], na.rm=TRUE) dat2b$Znpi_entitlement <- as.numeric(scale(dat2b$npi_entitlement)) ###moderators dat2b$descriptions_supervisor <- rowMeans(dat2b[c("description_dem_supervisor","description_aut_supervisor_r")], na.rm = TRUE) dat2b$lbdq_supervisor <- rowMeans(dat2b[c("lbdq1_supervisor","lbdq3_supervisor","lbdq5_supervisor","lbdq7_supervisor","lbdq9_supervisor", "lbdq2r_supervisor","lbdq4r_supervisor","lbdq6r_supervisor","lbdq8r_supervisor","lbdq10r_supervisor")], na.rm = TRUE) dat2b_team <- aggregate(cbind(descriptions_supervisor,lbdq_supervisor,bipolar_measure_supervisor) ~ team, dat2b, mean) colnames(dat2b_team) <- c("team","descriptions_supervisor_team","lbdq_supervisor_team","bipolar_measure_supervisor_team") dat2b_team$Zdescriptions_supervisor_team <- scale(dat2b_team$descriptions_supervisor_team) dat2b_team$Zlbdq_supervisor_team <- scale(dat2b_team$lbdq_supervisor_team) dat2b_team$Zbipolar_measure_supervisor_team <- scale(dat2b_team$bipolar_measure_supervisor_team) dat2b_team$style_index_supervisor_team <- rowMeans(dat2b_team[c("Zdescriptions_supervisor_team","Zlbdq_supervisor_team")], na.rm=TRUE) dat2b_team$Zstyle_index_supervisor_team <- scale(dat2b_team$style_index_supervisor_team) dat2b <- merge(dat2b,dat2b_team, by = "team") rm(dat2b_team) ###mediators dat2b$descriptions_self <- rowMeans(dat2b[c("description_dem_self","description_aut_self_r")], na.rm=TRUE) dat2b$Zdescriptions_self <- scale(dat2b$descriptions_self) dat2b$lbdq_self <- rowMeans(dat2b[c("lbdq1_self","lbdq3_self","lbdq5_self","lbdq7_self","lbdq9_self","lbdq2r_self", "lbdq4r_self","lbdq6r_self","lbdq8r_self","lbdq10r_self")], na.rm=TRUE) dat2b$Zlbdq_self <- scale(dat2b$lbdq_self) dat2b$Zbipolar_measure_self <- scale(dat2b$bipolar_measure_self) dat2b$style_index_self <- rowMeans(dat2b[c("Zdescriptions_self","Zlbdq_self")], na.rm = TRUE) dat2b$Zstyle_index_self <- scale(dat2b$style_index_self) ###dependent variable dat2b$zvalence <- scale(rowMeans(dat2b[c("valence1","valence2")], na.rm=TRUE)) dat2b$zsuccess <- scale(rowMeans(dat2b[c("success1","success2")], na.rm=TRUE)) dat2b$boss_desirability2r <- 8 - dat2b$boss_desirability2 dat2b$zboss_desirability <- scale(rowMeans(dat2b[c("boss_desirability1","boss_desirability2r")], na.rm=TRUE)) dat2b$zliking <- scale(rowMeans(dat2b[c("liking1","liking2")], na.rm=TRUE)) dat2b$zcompetence <- scale(rowMeans(dat2b[c("competence1","competence2")], na.rm=TRUE)) dat2b$zwarmth <- scale(rowMeans(dat2b[c("warmth1","warmth2")], na.rm=TRUE)) dat2b$attraction <- rowMeans(dat2b[c("zvalence","zsuccess","zboss_desirability","zliking","zcompetence","zwarmth")], na.rm=TRUE) dat2b$Zattraction <- scale(dat2b$attraction) ###covariates dat2b$agr <- rowMeans(dat2b[c("bfi2","bfi7r","bfi12")], na.rm=TRUE) dat2b$Zagr <- scale(dat2b$agr) dat2b$cns <- rowMeans(dat2b[c("bfi3r","bfi8r","bfi13")], na.rm=TRUE) dat2b$Zcns <- scale(dat2b$cns) dat2b$ext <- rowMeans(dat2b[c("bfi1r","bfi6","bfi11")], na.rm=TRUE) dat2b$Zext <- scale(dat2b$ext) dat2b$neu <- rowMeans(dat2b[c("bfi4","bfi9","bfi14r")], na.rm=TRUE) dat2b$Zneu <- scale(dat2b$neu) dat2b$opn <- rowMeans(dat2b[c("bfi5","bfi10r","bfi15")], na.rm=TRUE) dat2b$Zopn <- scale(dat2b$opn) dat2b$Zse <- scale(dat2b$selfesteem) #Mplus analyses for Study 2b ################################################################################################################################## ##### ACCESS TO MPLUS ##### #select variables for Mplus analyses dat2b_mplus <- subset(dat2b, select = c(id,team,Znarq_adm,Znarq_riv,Znarq,Znpi,Zagr,Zcns,Zext,Zneu,Zopn,Zse, Zstyle_index_supervisor_team,Zdescriptions_supervisor_team,Zlbdq_supervisor_team,Zbipolar_measure_supervisor_team, Zstyle_index_self,Zdescriptions_self,Zlbdq_self,Zbipolar_measure_self,Zattraction, Znpi_authority,Znpi_exhibitionism,Znpi_entitlement)) #save dataset for Mplus analyses to folder "C:/NarcSub/" (or change path of dataset in FILE command of Mplus script) setwd("C:/NarcSub/") fwrite(dat2b_mplus, file = "NarcSub_Mplus-Data_Supplement.csv", col.names = FALSE) rm(dat2b_mplus) #download the folder "NarcSub_Mplus-Scripts" via https://madata.bib.uni-mannheim.de/427/15/NarcSub_Mplus-Scripts.zip and set working directory to that folder (e.g., "C:/NarcSub/NarcSub_Mplus-Scripts/") mplus_wd <- "C:/NarcSub/NarcSub_Mplus-Scripts/" #run Mplus analyses setwd(mplus_wd) runModels("Supplement/") ##### NO ACCESS TO MPLUS ##### #download the folder "NarcSub_Mplus-Outputs" via https://madata.bib.uni-mannheim.de/427/16/NarcSub_Mplus-Outputs.zip and set working directory to that folder (e.g., "C:/NarcSub/NarcSub_Mplus-Outputs/") mplus_wd <- "C:/NarcSub/NarcSub_Mplus-Outputs/" ################################################################################################################################## #Separate Analyses for Narcissism Dimensions ##Table S2.1: Effects of Narcissistic Admiration (Model 1) and Rivalry (Model 2) on Attraction to Supervisor Moderated by Supervisor's Leadership Style in Studies 2a-2b ###regression models for Study 2a moderation_model2a_adm <- lm(Zattraction ~ Znarq_adm + Zstyle_index_supervisor + ZADMxSLS, data=dat2a) dat2a_mod_adm <- data.frame(summary(moderation_model2a_adm)$coef,confint(moderation_model2a_adm)) moderation_model2a_riv <- lm(Zattraction ~ Znarq_riv + Zstyle_index_supervisor + ZRIVxSLS, data=dat2a) dat2a_mod_riv <- data.frame(summary(moderation_model2a_riv)$coef,confint(moderation_model2a_riv)) dat2a_mod <- rbind(dat2a_mod_adm,dat2a_mod_riv) ###extract coefficients from Mplus-Outputs for Study 2b setwd(mplus_wd) output_adm <- readModels("Supplement/adm_index_moderation.out", what = "parameters") output_est_ci_adm <- sapply(output_adm, "[", "ci.unstandardized") est_ci_adm <- sapply(output_est_ci_adm, "[", c("paramHeader","param","est","low2.5","up2.5")) output_t_p_adm <- sapply(output_adm, "[", "unstandardized") t_p_adm <- sapply(output_t_p_adm, "[", c("paramHeader","param","est_se","pval")) dat2b_est_ci_adm <- data.frame(matrix(unlist(est_ci_adm), nrow=8, ncol = 5, byrow=F), stringsAsFactors=FALSE) dat2b_t_p_adm <- data.frame(matrix(unlist(t_p_adm), nrow=8, ncol = 4, byrow=F), stringsAsFactors=FALSE) dat2b_mod_adm <- cbind(dat2b_est_ci_adm,dat2b_t_p_adm[,c(3:4)]) dat2b_mod_adm <- dat2b_mod_adm[c(5,1,4,2),] output_riv <- readModels("Supplement/riv_index_moderation.out", what = "parameters") output_est_ci_riv <- sapply(output_riv, "[", "ci.unstandardized") est_ci_riv <- sapply(output_est_ci_riv, "[", c("paramHeader","param","est","low2.5","up2.5")) output_t_p_riv <- sapply(output_riv, "[", "unstandardized") t_p_riv <- sapply(output_t_p_riv, "[", c("paramHeader","param","est_se","pval")) dat2b_est_ci_riv <- data.frame(matrix(unlist(est_ci_riv), nrow=9, ncol = 5, byrow=F), stringsAsFactors=FALSE) dat2b_t_p_riv <- data.frame(matrix(unlist(t_p_riv), nrow=9, ncol = 4, byrow=F), stringsAsFactors=FALSE) dat2b_mod_riv <- cbind(dat2b_est_ci_riv,dat2b_t_p_riv[,c(3:4)]) dat2b_mod_riv_simpleslopes <- dat2b_mod_riv[c(8:9),] dat2b_mod_riv <- dat2b_mod_riv[c(4,5,3,2),] dat2b_mod <- rbind(dat2b_mod_adm,dat2b_mod_riv) ###create table dat2a_mod$Predictor <- c(" (Intercept)"," ADM"," SLS"," ADM x SLS"," (Intercept)"," RIV"," SLS"," RIV x SLS") dat2a_mod$blank <- NA dat_table_S2.1 <- cbind(dat2a_mod[,c(7,1,5:6,3:4,8)],dat2b_mod[,c(3:7)]) colnames(dat_table_S2.1) <- c("Predictor","beta","ci_lower1","ci_upper1","t","p1","blank","zPE","ci_lower2","ci_upper2","z","p2") dat_table_S2.1[,2:12] <- sapply(dat_table_S2.1[,2:12], as.numeric) format_beta <- function(x){ ifelse(abs(x) < 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_table_S2.1[,c(2:4,8:10)] <- dat_table_S2.1[,c(2:4,8:10)] %>% mutate_if(is.numeric, format_beta) format_t <- function(x){ formatC(x, format = "f", digits = 2) } dat_table_S2.1[,c(5,11)] <- dat_table_S2.1[,c(5,11)] %>% mutate_if(is.numeric, format_t) format_p <- function(x){ ifelse(abs(x) < 0.001, "< .001", f_num(unlist(x), digits=3)) } dat_table_S2.1[,c(6,12)] <- dat_table_S2.1[,c(6,12)] %>% mutate_if(is.numeric, format_p) dat_table_S2.1$ci1 <- paste0("[", dat_table_S2.1$ci_lower1, ", ", dat_table_S2.1$ci_upper1, "]") dat_table_S2.1$ci2 <- paste0("[", dat_table_S2.1$ci_lower2, ", ", dat_table_S2.1$ci_upper2, "]") dat_table_S2.1 <- dat_table_S2.1[,c("Predictor","beta","ci1","t","p1","blank","zPE","ci2","z","p2")] dat_table_S2.1[c(1,5),c(2:5)] <- NA dat_table_S2.1[9,1] <- "Model 1" dat_table_S2.1[10,1] <- "Model 2" dat_table_S2.1 <- dat_table_S2.1[c(9,1:4,10,5:8),] col_keys <- c("Predictor","beta","ci1","t","p1","blank","zPE","ci2","z","p2") head1 <- c("","Study 2a","Study 2a","Study 2a","Study 2a","","Study 2b","Study 2b","Study 2b","Study 2b") head2 <- c("Predictor","\u03B2","95% CI","t","p","","zPE","95% CI","z","p") head <- data.frame(col_keys,head1,head2, stringsAsFactors = FALSE) rm(col_keys,head1,head2) tbl <- flextable(dat_table_S2.1) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:10, border=fp_border(width=2), part="header") tbl <- merge_at(tbl, i=1, j=2:5, part="header") tbl <- merge_at(tbl, i=1, j=7:10, part="header") tbl <- hline(tbl, i=1, j=c(2:5,7:10), border=fp_border(width=1.2), part="header") tbl <- hline(tbl, i=2, j=1:10, border=fp_border(width=1.2), part="header") tbl <- hline(tbl, i=5, j=1:10, border=fp_border(width=1.2), part="body") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j = c("Predictor"), align="left", part="body") tbl <- italic(tbl, i=2, j=c("t","p1","zPE","z","p2"), part="header") tbl <- width(tbl, j =~ Predictor, width=1.2) tbl <- width(tbl, j =~ beta + zPE, width=.45) tbl <- width(tbl, j =~ ci1 + ci2, width=.95) tbl <- width(tbl, j =~ t + z + p1 + p2, width=.6) tbl <- width(tbl, j =~ blank, width=.3) tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S2.1.docx") ###simple slopes of the interaction between rivalry and supervisor's leadership style in Study 2b dat2b_mod_riv_simpleslopes[,3:7] <- sapply(dat2b_mod_riv_simpleslopes[,3:7], as.numeric) paste0("relation between rivalry and attraction to democratic supervisors: zPE = ", round(dat2b_mod_riv_simpleslopes[2,3], digits = 2), ", 95% CI [", round(dat2b_mod_riv_simpleslopes[2,4], digits = 2), ", ", round(dat2b_mod_riv_simpleslopes[2,5], digits = 3), "], z = ", round(dat2b_mod_riv_simpleslopes[2,6], digits = 2), ", p = ",round(dat2b_mod_riv_simpleslopes[2,7], digits = 3)) paste0("relation between rivalry and attraction to autocratic supervisors: zPE = ", round(dat2b_mod_riv_simpleslopes[1,3], digits = 2), ", 95% CI [", round(dat2b_mod_riv_simpleslopes[1,4], digits = 2), ", ", round(dat2b_mod_riv_simpleslopes[1,5], digits = 2), "], z = ",round(dat2b_mod_riv_simpleslopes[1,6], digits = 2), ", p = ", round(dat2b_mod_riv_simpleslopes[1,7], digits = 3)) rm(dat_table_S2.1, dat2a_mod, dat2a_mod_adm, dat2a_mod_riv, dat2b_est_ci_adm, dat2b_est_ci_riv, dat2b_mod, dat2b_mod_adm, dat2b_mod_riv, dat2b_t_p_adm, dat2b_t_p_riv, doc, est_ci_adm, est_ci_riv, head, moderation_model2a_adm, moderation_model2a_riv, output_adm, output_est_ci_adm, output_est_ci_riv, output_riv, output_t_p_adm, output_t_p_riv, t_p_adm, t_p_riv, tbl, format_beta, format_p, format_t, dat2b_mod_riv_simpleslopes) ##Tables S2.2 and S2.3: Moderated Mediation Model With Narcissistic Admiration (Model 1) and Rivalry (Model 2) in Studies 2a-2b ###moderated mediation models for Study 2a set.seed(123) #setting the seed for reproducibility mediation_model2a_adm <- ' Zattraction ~ c*Znarq_adm + Zstyle_index_supervisor + b*Zstyle_index_self + h*ZADMxSLS + g*ZSHLSxSLS Zstyle_index_self ~ a*Znarq_adm ## index of moderated mediaion for ADM index_adm := a * g ## conditional indirect effects of ADM indirect_aut := a*(b-2.404079*g) indirect_dem := a*(b+1.826888*g) direct_aut := c-2.404079*h direct_dem := c+1.826888*h' results_adm <- sem(mediation_model2a_adm, data = dat2a, meanstructure = TRUE, se = "bootstrap", bootstrap = 10000) dat2a_modmed_adm <- data.frame(parameterEstimates(results_adm, ci = TRUE, level = 0.95, boot.ci.type = "bca.simple")) #bias-corrected percentile method set.seed(123) #setting the seed for reproducibility mediation_model2a_riv <- ' Zattraction ~ c*Znarq_riv + Zstyle_index_supervisor + b*Zstyle_index_self + h*ZRIVxSLS + g*ZSHLSxSLS Zstyle_index_self ~ a*Znarq_riv ## index of moderated mediaion for RIV index_riv := a * g ## conditional indirect effects of RIV indirect_aut := a*(b-2.404079*g) indirect_dem := a*(b+1.826888*g) direct_aut := c-2.404079*h direct_dem := c+1.826888*h' results_riv <- sem(mediation_model2a_riv, data = dat2a, meanstructure = TRUE, se = "bootstrap", bootstrap = 10000) dat2a_modmed_riv <- data.frame(parameterEstimates(results_riv, ci = TRUE, level = 0.95, boot.ci.type = "bca.simple")) #bias-corrected percentile method dat2a_modmed_index_simpleslopes_adm <- dat2a_modmed_adm[c(25:29),] dat2a_modmed_adm <- dat2a_modmed_adm[c(6,19,1,3,2,4:5),] dat2a_modmed_index_simpleslopes_riv <- dat2a_modmed_riv[c(25:29),] dat2a_modmed_riv <- dat2a_modmed_riv[c(6,19,1,3,2,4:5),] dat2a_modmed <- rbind(dat2a_modmed_adm,dat2a_modmed_riv) dat2a_modmed_index_simpleslopes <- rbind(dat2a_modmed_index_simpleslopes_adm,dat2a_modmed_index_simpleslopes_riv) ###extract coefficients from Mplus-Outputs for Study 2b setwd(mplus_wd) output_adm <- readModels("Supplement/adm_index_mediation.out", what = "parameters") output_est_ci_adm <- sapply(output_adm, "[", "ci.unstandardized") est_ci_adm <- sapply(output_est_ci_adm, "[", c("paramHeader","param","est","low2.5","up2.5")) output_t_p_adm <- sapply(output_adm, "[", "unstandardized") t_p_adm <- sapply(output_t_p_adm, "[", c("paramHeader","param","est_se","pval")) dat2b_est_ci_adm <- data.frame(matrix(unlist(est_ci_adm), nrow=18, ncol = 5, byrow=F), stringsAsFactors=FALSE) dat2b_t_p_adm <- data.frame(matrix(unlist(t_p_adm), nrow=18, ncol = 4, byrow=F), stringsAsFactors=FALSE) dat2b_modmed_adm <- cbind(dat2b_est_ci_adm,dat2b_t_p_adm[,c(3:4)]) dat2b_modmed_index_simpleslopes_adm <- dat2b_modmed_adm[c(14:18),] dat2b_modmed_adm <- dat2b_modmed_adm[c(1,8:10,7,6,5),] output_riv <- readModels("Supplement/riv_index_mediation.out", what = "parameters") output_est_ci_riv <- sapply(output_riv, "[", "ci.unstandardized") est_ci_riv <- sapply(output_est_ci_riv, "[", c("paramHeader","param","est","low2.5","up2.5")) output_t_p_riv <- sapply(output_riv, "[", "unstandardized") t_p_riv <- sapply(output_t_p_riv, "[", c("paramHeader","param","est_se","pval")) dat2b_est_ci_riv <- data.frame(matrix(unlist(est_ci_riv), nrow=18, ncol = 5, byrow=F), stringsAsFactors=FALSE) dat2b_t_p_riv <- data.frame(matrix(unlist(t_p_riv), nrow=18, ncol = 4, byrow=F), stringsAsFactors=FALSE) dat2b_modmed_riv <- cbind(dat2b_est_ci_riv,dat2b_t_p_riv[,c(3:4)]) dat2b_modmed_index_simpleslopes_riv <- dat2b_modmed_riv[c(14:18),] dat2b_modmed_riv <- dat2b_modmed_riv[c(1,8:10,7,6,5),] dat2b_modmed <- rbind(dat2b_modmed_adm,dat2b_modmed_riv) dat2b_modmed_index_simpleslopes <- rbind(dat2b_modmed_index_simpleslopes_adm,dat2b_modmed_index_simpleslopes_riv) ###create Table S.2.2: Results dat2a_modmed$Predictor <- c(" ADM"," (Intercept)"," ADM"," SHLS"," SLS"," ADM x SLS"," SHLS x SLS"," RIV"," (Intercept)"," RIV"," SHLS"," SLS"," RIV x SLS"," SHLS x SLS") dat2a_modmed$blank <- NA dat_table_S2.2 <- cbind(dat2a_modmed[,c(11,5,9:10,7:8,12)],dat2b_modmed[,c(3:7)]) colnames(dat_table_S2.2) <- c("Predictor","beta","ci_lower1","ci_upper1","z1","p1","blank","zPE","ci_lower2","ci_upper2","z2","p2") dat_table_S2.2[,2:12] <- sapply(dat_table_S2.2[,2:12], as.numeric) format_beta <- function(x){ ifelse(abs(x) < 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_table_S2.2[,c(2:4,8:10)] <- dat_table_S2.2[,c(2:4,8:10)] %>% mutate_if(is.numeric, format_beta) format_t <- function(x){ formatC(x, format = "f", digits = 2) } dat_table_S2.2[,c(5,11)] <- dat_table_S2.2[,c(5,11)] %>% mutate_if(is.numeric, format_t) format_p <- function(x){ ifelse(abs(x) < 0.001, "< .001", f_num(unlist(x), digits=3)) } dat_table_S2.2[,c(6,12)] <- dat_table_S2.2[,c(6,12)] %>% mutate_if(is.numeric, format_p) dat_table_S2.2$ci1 <- paste0("[", dat_table_S2.2$ci_lower1, ", ", dat_table_S2.2$ci_upper1, "]") dat_table_S2.2$ci2 <- paste0("[", dat_table_S2.2$ci_lower2, ", ", dat_table_S2.2$ci_upper2, "]") dat_table_S2.2 <- dat_table_S2.2[,c("Predictor","beta","ci1","z1","p1","blank","zPE","ci2","z2","p2")] dat_table_S2.2[c(2,9),c(2:5)] <- NA dat_table_S2.2[15,1] <- "Model 1" dat_table_S2.2[16,2] <- "Subordinate's Hypothetical Leadership Style" dat_table_S2.2[17,2] <- "Attraction to Supervisor" dat_table_S2.2[18,1] <- "Model 2" dat_table_S2.2[19,2] <- "Subordinate's Hypothetical Leadership Style" dat_table_S2.2[20,2] <- "Attraction to Supervisor" dat_table_S2.2 <- dat_table_S2.2[c(15:16,1,17,2:7,18:19,8,20,9:14),] col_keys <- c("Predictor","beta","ci1","z1","p1","blank","zPE","ci2","z2","p2") head1 <- c("","Study 2a","Study 2a","Study 2a","Study 2a","","Study 2b","Study 2b","Study 2b","Study 2b") head2 <- c("Predictor","\u03B2","95% CI","z","p","","zPE","95% CI","z","p") head <- data.frame(col_keys,head1,head2, stringsAsFactors = FALSE) rm(col_keys,head1,head2) tbl <- flextable(dat_table_S2.2) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:10, border=fp_border(width=2), part="header") tbl <- merge_at(tbl, i=1, j=2:5, part="header") tbl <- merge_at(tbl, i=1, j=7:10, part="header") tbl <- merge_at(tbl, i=2, j=2:10, part="body") tbl <- merge_at(tbl, i=4, j=2:10, part="body") tbl <- merge_at(tbl, i=12, j=2:10, part="body") tbl <- merge_at(tbl, i=14, j=2:10, part="body") tbl <- hline(tbl, i=1, j=c(2:5,7:10), border=fp_border(width=1.2), part="header") tbl <- hline(tbl, i=2, j=1:10, border=fp_border(width=1.2), part="header") tbl <- hline(tbl, i=10, j=1:10, border=fp_border(width=1.2), part="body") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j = c("Predictor"), align="left", part="body") tbl <- italic(tbl, i=2, j=c("z1","p1","zPE","z2","p2"), part="header") tbl <- width(tbl, j =~ Predictor, width=1.2) tbl <- width(tbl, j =~ beta + zPE, width=.45) tbl <- width(tbl, j =~ ci1 + ci2, width=.95) tbl <- width(tbl, j =~ z1 + z2 + p1 + p2, width=.6) tbl <- width(tbl, j =~ blank, width=.3) tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S2.2.docx") ###create Table S2.3: Index of Moderated Mediation, Conditional Indirect Effects, and Conditional Direct Effects dat2a_modmed_index_simpleslopes <- dat2a_modmed_index_simpleslopes[c(1,3,2,5,4,6,8,7,10,9),] dat2b_modmed_index_simpleslopes <- dat2b_modmed_index_simpleslopes[c(1,3,2,5,4,6,8,7,10,9),] dat2a_modmed_index_simpleslopes$Effect <- c(" ADM"," Democratic"," Autocratic"," Democratic"," Autocratic"," RIV"," Democratic"," Autocratic"," Democratic"," Autocratic") dat2a_modmed_index_simpleslopes$blank <- NA dat_table_S2.3 <- cbind(dat2a_modmed_index_simpleslopes[,c(11,5,9:10,7:8,12)],dat2b_modmed_index_simpleslopes[,c(3:7)]) colnames(dat_table_S2.3) <- c("Effect","beta","ci_lower1","ci_upper1","t","p1","blank","zPE","ci_lower2","ci_upper2","z","p2") dat_table_S2.3[,2:12] <- sapply(dat_table_S2.3[,2:12], as.numeric) format_beta <- function(x){ ifelse(abs(x) <= 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_table_S2.3[,c(2:4,8:10)] <- dat_table_S2.3[,c(2:4,8:10)] %>% mutate_if(is.numeric, format_beta) format_t <- function(x){ formatC(x, format = "f", digits = 2) } dat_table_S2.3[,c(5,11)] <- dat_table_S2.3[,c(5,11)] %>% mutate_if(is.numeric, format_t) format_p <- function(x){ ifelse(abs(x) < 0.001, "< .001", f_num(unlist(x), digits=3)) } dat_table_S2.3[,c(6,12)] <- dat_table_S2.3[,c(6,12)] %>% mutate_if(is.numeric, format_p) dat_table_S2.3$ci1 <- paste0("[", dat_table_S2.3$ci_lower1, ", ", dat_table_S2.3$ci_upper1, "]") dat_table_S2.3$ci2 <- paste0("[", dat_table_S2.3$ci_lower2, ", ", dat_table_S2.3$ci_upper2, "]") dat_table_S2.3 <- dat_table_S2.3[,c("Effect","beta","ci1","t","p1","blank","zPE","ci2","z","p2")] dat_table_S2.3[11,1] <- "Index of Moderated Mediation for ADM in Model 1" dat_table_S2.3[12,1] <- "Conditional Indirect Effects of ADM on Attraction to Supervisor in Model 1" dat_table_S2.3[13,1] <- "Conditional Direct Effects of ADM on Attraction to Supervisor in Model 1" dat_table_S2.3[14,1] <- "Index of Moderated Mediation for RIV in Model 2" dat_table_S2.3[15,1] <- "Conditional Indirect Effects of RIV on Attraction to Supervisor in Model 2" dat_table_S2.3[16,1] <- "Conditional Direct Effects of RIV on Attraction to Supervisor in Model 2" dat_table_S2.3 <- dat_table_S2.3[c(11,1,12,2:3,13,4:5,14,6,15,7:8,16,9:10),] col_keys <- c("Effect","beta","ci1","t","p1","blank","zPE","ci2","z","p2") head1 <- c("","Study 2a","Study 2a","Study 2a","Study 2a","","Study 2b","Study 2b","Study 2b","Study 2b") head2 <- c("Effect","\u03B2","95% CI","t","p","","zPE","95% CI","z","p") head <- data.frame(col_keys,head1,head2, stringsAsFactors = FALSE) rm(col_keys,head1,head2) tbl <- flextable(dat_table_S2.3) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:10, border=fp_border(width=2), part="header") tbl <- merge_at(tbl, i=1, j=2:5, part="header") tbl <- merge_at(tbl, i=1, j=7:10, part="header") tbl <- hline(tbl, i=1, j=c(2:5,7:10), border=fp_border(width=1.2), part="header") tbl <- hline(tbl, i=2, j=1:10, border=fp_border(width=1.2), part="header") tbl <- merge_at(tbl, i=1, j=1:10, part="body") tbl <- merge_at(tbl, i=3, j=1:10, part="body") tbl <- merge_at(tbl, i=6, j=1:10, part="body") tbl <- merge_at(tbl, i=9, j=1:10, part="body") tbl <- merge_at(tbl, i=11, j=1:10, part="body") tbl <- merge_at(tbl, i=14, j=1:10, part="body") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j = c("Effect"), align="left", part="body") tbl <- align(tbl, i = c(1,3,6,9,11,14), align="left", part="body") tbl <- italic(tbl, i=2, j=c("t","p1","zPE","z","p2"), part="header") tbl <- width(tbl, j =~ Effect, width=1.2) tbl <- width(tbl, j =~ beta + zPE, width=.5) tbl <- width(tbl, j =~ ci1 + ci2, width=.95) tbl <- width(tbl, j =~ t + z + p1 + p2, width=.55) tbl <- width(tbl, j =~ blank, width=.3) tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S2.3.docx") rm(mediation_model2a_adm,results_adm,mediation_model2a_riv,results_riv,dat2a_modmed_adm,dat2a_modmed_riv,dat2a_modmed,dat2a_modmed_index_simpleslopes_adm,dat2a_modmed_index_simpleslopes_riv,dat2a_modmed_index_simpleslopes, output_adm,output_est_ci_adm,est_ci_adm,dat2b_est_ci_adm,output_t_p_adm,t_p_adm,dat2b_t_p_adm,dat2b_modmed_index_simpleslopes_adm,dat2b_modmed_adm, output_riv,output_est_ci_riv,est_ci_riv,dat2b_est_ci_riv,output_t_p_riv,t_p_riv,dat2b_t_p_riv,dat2b_modmed_index_simpleslopes_riv,dat2b_modmed_riv, dat2b_modmed,dat2b_modmed_index_simpleslopes,format_beta,format_p,format_t,head,tbl,doc,dat_table_S2.2,dat_table_S2.3) #Separate Analyses for Leadership Measures ##Table S2.4: Descriptive Statistics and Zero-Order Correlations of Each Leadership Measure in Studies 2a-2b dat_table_S2.4 <- data.frame(matrix(nrow=9, ncol=5)) dat_table_S2.4[,1] <- c("ADM","RIV","SHLS-Descriptions","SHLS-Behaviors","SHLS-Bipolar","SLS-Descriptions","SLS-Behaviors","SLS-Bipolar","Attraction") dat_table_S2.4[,2] <- c(mean(dat2a$narq_adm, na.rm=T),mean(dat2a$narq_riv, na.rm=T),mean(dat2a$descriptions_self, na.rm=T),mean(dat2a$lbdq_self, na.rm=T),NA,mean(dat2a$descriptions_supervisor, na.rm=T),mean(dat2a$lbdq_supervisor, na.rm=T),NA,mean(dat2a$attraction, na.rm=T)) dat_table_S2.4[,3] <- c(sd(dat2a$narq_adm, na.rm=T),sd(dat2a$narq_riv, na.rm=T),sd(dat2a$descriptions_self, na.rm=T),sd(dat2a$lbdq_self, na.rm=T),NA,sd(dat2a$descriptions_supervisor, na.rm=T),sd(dat2a$lbdq_supervisor, na.rm=T),NA,sd(dat2a$attraction, na.rm=T)) dat_table_S2.4[,4] <- c(mean(dat2b$narq_adm, na.rm=T),mean(dat2b$narq_riv, na.rm=T),mean(dat2b$descriptions_self, na.rm=T),mean(dat2b$lbdq_self, na.rm=T),mean(dat2b$bipolar_measure_self, na.rm=T),mean(dat2b$descriptions_supervisor_team, na.rm=T),mean(dat2b$lbdq_supervisor_team, na.rm=T),mean(dat2b$bipolar_measure_supervisor_team, na.rm=T),mean(dat2b$attraction, na.rm=T)) dat_table_S2.4[,5] <- c(sd(dat2b$narq_adm, na.rm=T),sd(dat2b$narq_riv, na.rm=T),sd(dat2b$descriptions_self, na.rm=T),sd(dat2b$lbdq_self, na.rm=T),sd(dat2b$bipolar_measure_self, na.rm=T),sd(dat2b$descriptions_supervisor_team, na.rm=T),sd(dat2b$lbdq_supervisor_team, na.rm=T),sd(dat2b$bipolar_measure_supervisor_team, na.rm=T),sd(dat2b$attraction, na.rm=T)) dat2a_1 <- subset(dat2a, select = c(narq_adm,narq_riv,descriptions_self,lbdq_self,descriptions_supervisor,lbdq_supervisor,attraction)) cor_dat2a_1 <- corr.test(dat2a_1) dat_cor_2a <- as.data.frame(matrix(unlist(cor_dat2a_1), nrow=502, ncol = 1, byrow=F), stringsAsFactors=FALSE) dat_cor_2a_r <- as.data.frame(matrix(dat_cor_2a[1:49,], nrow=7)) dat_cor_2a_p <- as.data.frame(matrix(dat_cor_2a[100:148,], nrow=7)) dat2b_1 <- subset(dat2b, select = c(narq_adm,narq_riv,descriptions_self,lbdq_self,bipolar_measure_self,descriptions_supervisor_team,lbdq_supervisor_team,bipolar_measure_supervisor_team,attraction)) cor_dat2b_1 <- corr.test(dat2b_1) dat_cor_2b <- as.data.frame(matrix(unlist(cor_dat2b_1), nrow=842, ncol = 1, byrow=F), stringsAsFactors=FALSE) dat_cor_2b_r <- as.data.frame(matrix(dat_cor_2b[1:81,], nrow=9)) dat_cor_2b_p <- as.data.frame(matrix(dat_cor_2b[164:244,], nrow=9)) dat_cor_2a_r[c(8:9),] <- NA dat_cor_r <- cbind(dat_cor_2a_r[c(1:4,8,5:6,9,7),],dat_cor_2b_r) dat_cor_2a_p[c(8:9),] <- NA dat_cor_p <- cbind(dat_cor_2a_p[c(1:4,8,5:6,9,7),],dat_cor_2b_p) dat_table_S2.4[,2:5] <- sapply(dat_table_S2.4[,2:5], as.numeric) format_msd <- function(x){ formatC(x, format = "f", digits = 2) } dat_table_S2.4[,2:5] <- dat_table_S2.4[,2:5] %>% mutate_if(is.numeric, format_msd) dat_table_S2.4[9,4] <- "0.00" dat_cor_r[,1:16] <- sapply(dat_cor_r[,1:16], as.numeric) format_r <- function(x){ ifelse(abs(x) < 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_cor_r[,1:16] <- dat_cor_r[,1:16] %>% mutate_if(is.numeric, format_r) dat_cor_p[,1:16] <- sapply(dat_cor_p[,1:16], as.numeric) format_p <- function(x){ ifelse(abs(x) < 0.05 & abs(x) >= 0.01, "*", ifelse(abs(x) < 0.01 & abs(x) >= 0.001, "**", ifelse(abs(x) < 0.001, "***", ""))) } dat_cor_p[,1:16] <- dat_cor_p[,1:16] %>% mutate_if(is.numeric, format_p) dat_table_S2.4$r1 <- paste0(dat_cor_r[,1],dat_cor_p[,1]) dat_table_S2.4$r2 <- paste0(dat_cor_r[,2],dat_cor_p[,2]) dat_table_S2.4$r3 <- paste0(dat_cor_r[,3],dat_cor_p[,3]) dat_table_S2.4$r4 <- paste0(dat_cor_r[,4],dat_cor_p[,4]) dat_table_S2.4$r5 <- NA dat_table_S2.4$r6 <- paste0(dat_cor_r[,5],dat_cor_p[,6]) dat_table_S2.4$r7 <- paste0(dat_cor_r[,6],dat_cor_p[,7]) dat_table_S2.4$r8 <- NA dat_table_S2.4$r9 <- paste0(dat_cor_r[,7],dat_cor_p[,7]) dat_table_S2.4[1,6] <- NA dat_table_S2.4[1,7] <- paste0(dat_cor_r[2,8],dat_cor_p[2,8]) dat_table_S2.4[1,8] <- paste0(dat_cor_r[3,8],dat_cor_p[3,8]) dat_table_S2.4[1,9] <- paste0(dat_cor_r[4,8],dat_cor_p[4,8]) dat_table_S2.4[1,10] <- paste0(dat_cor_r[5,8],dat_cor_p[5,8]) dat_table_S2.4[1,11] <- paste0(dat_cor_r[6,8],dat_cor_p[6,8]) dat_table_S2.4[1,12] <- paste0(dat_cor_r[7,8],dat_cor_p[7,8]) dat_table_S2.4[1,13] <- paste0(dat_cor_r[8,8],dat_cor_p[8,8]) dat_table_S2.4[1,14] <- paste0(dat_cor_r[9,8],dat_cor_p[9,8]) dat_table_S2.4[2,7] <- NA dat_table_S2.4[2,8] <- paste0(dat_cor_r[3,9],dat_cor_p[3,9]) dat_table_S2.4[2,9] <- paste0(dat_cor_r[4,9],dat_cor_p[4,9]) dat_table_S2.4[2,10] <- paste0(dat_cor_r[5,9],dat_cor_p[5,9]) dat_table_S2.4[2,11] <- paste0(dat_cor_r[6,9],dat_cor_p[6,9]) dat_table_S2.4[2,12] <- paste0(dat_cor_r[7,9],dat_cor_p[7,9]) dat_table_S2.4[2,13] <- paste0(dat_cor_r[8,9],dat_cor_p[8,9]) dat_table_S2.4[2,14] <- paste0(dat_cor_r[9,9],dat_cor_p[9,9]) dat_table_S2.4[3,8] <- NA dat_table_S2.4[3,9] <- paste0(dat_cor_r[4,10],dat_cor_p[4,10]) dat_table_S2.4[3,10] <- paste0(dat_cor_r[5,10],dat_cor_p[5,10]) dat_table_S2.4[3,11] <- paste0(dat_cor_r[6,10],dat_cor_p[6,10]) dat_table_S2.4[3,12] <- paste0(dat_cor_r[7,10],dat_cor_p[7,10]) dat_table_S2.4[3,13] <- paste0(dat_cor_r[8,10],dat_cor_p[8,10]) dat_table_S2.4[3,14] <- paste0(dat_cor_r[9,10],dat_cor_p[9,10]) dat_table_S2.4[4,9] <- NA dat_table_S2.4[4,10] <- paste0(dat_cor_r[5,11],dat_cor_p[5,11]) dat_table_S2.4[4,11] <- paste0(dat_cor_r[6,11],dat_cor_p[6,11]) dat_table_S2.4[4,12] <- paste0(dat_cor_r[7,11],dat_cor_p[7,11]) dat_table_S2.4[4,13] <- paste0(dat_cor_r[8,11],dat_cor_p[8,11]) dat_table_S2.4[4,14] <- paste0(dat_cor_r[9,11],dat_cor_p[9,11]) dat_table_S2.4[5,10] <- NA dat_table_S2.4[5,11] <- paste0(dat_cor_r[6,12],dat_cor_p[6,12]) dat_table_S2.4[5,12] <- paste0(dat_cor_r[7,12],dat_cor_p[7,12]) dat_table_S2.4[5,13] <- paste0(dat_cor_r[8,12],dat_cor_p[8,12]) dat_table_S2.4[5,14] <- paste0(dat_cor_r[9,12],dat_cor_p[9,12]) dat_table_S2.4[6,11] <- NA dat_table_S2.4[6,12] <- paste0(dat_cor_r[7,13],dat_cor_p[7,13]) dat_table_S2.4[6,13] <- paste0(dat_cor_r[8,13],dat_cor_p[8,13]) dat_table_S2.4[6,14] <- paste0(dat_cor_r[9,13],dat_cor_p[9,13]) dat_table_S2.4[7,12] <- NA dat_table_S2.4[7,13] <- paste0(dat_cor_r[8,14],dat_cor_p[8,14]) dat_table_S2.4[7,14] <- paste0(dat_cor_r[9,14],dat_cor_p[9,14]) dat_table_S2.4[8,13] <- NA dat_table_S2.4[8,14] <- paste0(dat_cor_r[9,15],dat_cor_p[9,15]) dat_table_S2.4[9,14] <- NA dat_table_S2.4[c(5,8),c(2:3,6:9)] <- NA dat_table_S2.4[8,c(11:12)] <- NA dat_table_S2.4$blank1 <- NA dat_table_S2.4$blank2 <- NA dat_table_S2.4 <- dat_table_S2.4[,c(1:3,15,4:5,16,6:14)] col_keys <- c("X1","X2","X3","blank1","X4","X5","blank2","r1","r2","r3","r4","r5","r6","r7","r8","r9") head1 <- c("","Study 2a","Study 2a","","Study 2b","Study 2b","","","","","","","","","","") head2 <- c("Variable","M","SD","","M","SD","","1","2","3","4","5","6","7","8","9") head <- data.frame(col_keys,head1,head2, stringsAsFactors = FALSE) rm(col_keys,head1,head2) tbl <- flextable(dat_table_S2.4) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:16, border=fp_border(width=2), part="header") tbl <- merge_at(tbl, i=1, j=2:3, part="header") tbl <- merge_at(tbl, i=1, j=5:6, part="header") tbl <- hline(tbl, i=1, j=c(2:3,5:6), border=fp_border(width=1.2), part="header") tbl <- hline(tbl, i=2, j=1:16, border=fp_border(width=1.2), part="header") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j = c("X1"), align="left", part="body") tbl <- italic(tbl, i=2, j=c("X2","X3","X4","X5"), part="header") tbl <- width(tbl, j =~ X1, width=1) tbl <- width(tbl, j =~ X2 + X3 + X4 + X5, width=.55) tbl <- width(tbl, j =~ blank1 + blank2, width=.1) tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S2.4.docx") ##Note of Table S2.4 ###Study 2a dat2a.descriptions_self <- subset(dat2a, select = c(description_dem_self,description_aut_self_r)) dat2a.lbdq_self <- subset(dat2a, select = c(lbdq1_self,lbdq2r_self,lbdq3_self,lbdq4r_self,lbdq5_self, lbdq6r_self,lbdq7_self,lbdq8r_self,lbdq9_self,lbdq10r_self, lbdq11_self,lbdq12r_self,lbdq13_self,lbdq14r_self,lbdq15_self, lbdq16r_self,lbdq17_self,lbdq18r_self,lbdq19_self,lbdq20r_self)) dat2a.descriptions_supervisor <- subset(dat2a, select = c(description_dem_supervisor,description_aut_supervisor_r)) dat2a.lbdq_supervisor <- subset(dat2a, select = c(lbdq1_supervisor,lbdq2r_supervisor,lbdq3_supervisor,lbdq4r_supervisor,lbdq5_supervisor, lbdq6r_supervisor,lbdq7_supervisor,lbdq8r_supervisor,lbdq9_supervisor,lbdq10r_supervisor, lbdq11_supervisor,lbdq12r_supervisor,lbdq13_supervisor,lbdq14r_supervisor,lbdq15_supervisor, lbdq16r_supervisor,lbdq17_supervisor,lbdq18r_supervisor,lbdq19_supervisor,lbdq20r_supervisor)) round(psych::alpha(dat2a.descriptions_self, na.rm=T)$total[1], 2) round(psych::alpha(dat2a.lbdq_self, na.rm=T)$total[1], 2) round(psych::alpha(dat2a.descriptions_supervisor, na.rm=T)$total[1], 2) round(psych::alpha(dat2a.lbdq_supervisor, na.rm=T)$total[1], 2) ###Study 2b dat2b.descriptions_self <- subset(dat2b, select = c(description_dem_self,description_aut_self_r)) dat2b.lbdq_self <- subset(dat2b, select = c(lbdq1_self,lbdq2r_self,lbdq3_self,lbdq4r_self,lbdq5_self, lbdq6r_self,lbdq7_self,lbdq8r_self,lbdq9_self,lbdq10r_self)) round(psych::alpha(dat2b.descriptions_self, na.rm=T)$total[1], 2) round(psych::alpha(dat2b.lbdq_self, na.rm=T)$total[1], 2) round(ICC2(aov(bipolar_measure_supervisor ~ as.factor(team),data=dat2b)),2) rm(dat2a_1,cor_dat2a_1,dat_cor_2a,dat_cor_2a_p,dat_cor_2a_r,dat2b_1,cor_dat2b_1,dat_cor_2b,dat_cor_2b_p,dat_cor_2b_r,dat_cor_p,dat_cor_r, dat_table_S2.4,format_msd,format_p,format_r,head,tbl,doc,dat2a.descriptions_self,dat2a.lbdq_self,dat2a.descriptions_supervisor,dat2a.lbdq_supervisor,dat2b.descriptions_self,dat2b.lbdq_self) ##Tables S2.5 and S2.6: Unique Effects of Narcissistic Admiration and Rivalry on Attraction to Supervisor Moderated by Supervisor's Leadership Style Separately for Each Leadership Measure in Studies 2a-2b ###regression models for Study 2a moderation_model2a_descriptions <- lm(Zattraction ~ Znarq_adm + Znarq_riv + Zdescriptions_supervisor + ZADMxSLS_descriptions + ZRIVxSLS_descriptions, data=dat2a) moderation_model2a_lbdq <- lm(Zattraction ~ Znarq_adm + Znarq_riv + Zlbdq_supervisor + ZADMxSLS_lbdq + ZRIVxSLS_lbdq, data=dat2a) dat2a_mod <- rbind(data.frame(summary(moderation_model2a_descriptions)$coef,confint(moderation_model2a_descriptions)),data.frame(summary(moderation_model2a_lbdq)$coef,confint(moderation_model2a_lbdq))) ###simple slope analysis for Study 2a dat2a$Zdescriptions_supervisor_dem <- dat2a$Zdescriptions_supervisor - abs(max(dat2a$Zdescriptions_supervisor)) dat2a$Zdescriptions_supervisor_aut <- dat2a$Zdescriptions_supervisor + abs(min(dat2a$Zdescriptions_supervisor)) dat2a$Zlbdq_supervisor_dem <- dat2a$Zlbdq_supervisor - abs(max(dat2a$Zlbdq_supervisor)) dat2a$Zlbdq_supervisor_aut <- dat2a$Zlbdq_supervisor + abs(min(dat2a$Zlbdq_supervisor)) dat2a$ZADMxSLS_descriptions_dem <- scale(dat2a$Znarq_adm*dat2a$Zdescriptions_supervisor_dem) dat2a$ZRIVxSLS_descriptions_dem <- scale(dat2a$Znarq_riv*dat2a$Zdescriptions_supervisor_dem) dat2a$ZADMxSLS_descriptions_aut <- scale(dat2a$Znarq_adm*dat2a$Zdescriptions_supervisor_aut) dat2a$ZRIVxSLS_descriptions_aut <- scale(dat2a$Znarq_riv*dat2a$Zdescriptions_supervisor_aut) dat2a$ZADMxSLS_lbdq_dem <- scale(dat2a$Znarq_adm*dat2a$Zlbdq_supervisor_dem) dat2a$ZRIVxSLS_lbdq_dem <- scale(dat2a$Znarq_riv*dat2a$Zlbdq_supervisor_dem) dat2a$ZADMxSLS_lbdq_aut <- scale(dat2a$Znarq_adm*dat2a$Zlbdq_supervisor_aut) dat2a$ZRIVxSLS_lbdq_aut <- scale(dat2a$Znarq_riv*dat2a$Zlbdq_supervisor_aut) model_dem_descriptions <- lm(Zattraction ~ Znarq_adm + Znarq_riv + Zdescriptions_supervisor_dem + ZADMxSLS_descriptions_dem + ZRIVxSLS_descriptions_dem, data=dat2a) model_aut_descriptions <- lm(Zattraction ~ Znarq_adm + Znarq_riv + Zdescriptions_supervisor_aut + ZADMxSLS_descriptions_aut + ZRIVxSLS_descriptions_aut, data=dat2a) dat2a_mod_dem_descriptions <- data.frame(summary(model_dem_descriptions)$coef,confint(model_dem_descriptions)) dat2a_mod_aut_descriptions <- data.frame(summary(model_aut_descriptions)$coef,confint(model_aut_descriptions)) model_dem_lbdq <- lm(Zattraction ~ Znarq_adm + Znarq_riv + Zlbdq_supervisor_dem + ZADMxSLS_lbdq_dem + ZRIVxSLS_lbdq_dem, data=dat2a) model_aut_lbdq <- lm(Zattraction ~ Znarq_adm + Znarq_riv + Zlbdq_supervisor_aut + ZADMxSLS_lbdq_aut + ZRIVxSLS_lbdq_aut, data=dat2a) dat2a_mod_dem_lbdq <- data.frame(summary(model_dem_lbdq)$coef,confint(model_dem_lbdq)) dat2a_mod_aut_lbdq <- data.frame(summary(model_aut_lbdq)$coef,confint(model_aut_lbdq)) dat2a_mod_simpleslopes <- rbind(dat2a_mod_dem_descriptions[3,c(1,5:6,3:4)],dat2a_mod_aut_descriptions[3,c(1,5:6,3:4)],dat2a_mod_dem_lbdq[3,c(1,5:6,3:4)],dat2a_mod_aut_lbdq[3,c(1,5:6,3:4)]) ###extract coefficients from Mplus-Outputs for Study 2b setwd(mplus_wd) output1 <- readModels("Supplement/narq_descriptions_moderation.out", what = "parameters") output1_est_ci <- sapply(output1, "[", "ci.unstandardized") est_ci1 <- sapply(output1_est_ci, "[", c("paramHeader","param","est","low2.5","up2.5")) output1_t_p <- sapply(output1, "[", "unstandardized") t_p1 <- sapply(output1_t_p, "[", c("paramHeader","param","est_se","pval")) dat2b_est_ci1 <- data.frame(matrix(unlist(est_ci1), nrow=11, ncol = 5, byrow=F), stringsAsFactors=FALSE) dat2b_t_p1 <- data.frame(matrix(unlist(t_p1), nrow=11, ncol = 4, byrow=F), stringsAsFactors=FALSE) output2 <- readModels("Supplement/narq_lbdq_moderation.out", what = "parameters") output2_est_ci <- sapply(output2, "[", "ci.unstandardized") est_ci2 <- sapply(output2_est_ci, "[", c("paramHeader","param","est","low2.5","up2.5")) output2_t_p <- sapply(output2, "[", "unstandardized") t_p2 <- sapply(output2_t_p, "[", c("paramHeader","param","est_se","pval")) dat2b_est_ci2 <- data.frame(matrix(unlist(est_ci2), nrow=11, ncol = 5, byrow=F), stringsAsFactors=FALSE) dat2b_t_p2 <- data.frame(matrix(unlist(t_p2), nrow=11, ncol = 4, byrow=F), stringsAsFactors=FALSE) output3 <- readModels("Supplement/narq_bipolar_moderation.out", what = "parameters") output3_est_ci <- sapply(output3, "[", "ci.unstandardized") est_ci3 <- sapply(output3_est_ci, "[", c("paramHeader","param","est","low2.5","up2.5")) output3_t_p <- sapply(output3, "[", "unstandardized") t_p3 <- sapply(output3_t_p, "[", c("paramHeader","param","est_se","pval")) dat2b_est_ci3 <- data.frame(matrix(unlist(est_ci3), nrow=12, ncol = 5, byrow=F), stringsAsFactors=FALSE) dat2b_t_p3 <- data.frame(matrix(unlist(t_p3), nrow=12, ncol = 4, byrow=F), stringsAsFactors=FALSE) dat2b_mod1 <- cbind(dat2b_est_ci1,dat2b_t_p1[,c(3:4)]) dat2b_mod2 <- cbind(dat2b_est_ci2,dat2b_t_p2[,c(3:4)]) dat2b_mod3 <- cbind(dat2b_est_ci3,dat2b_t_p3[,c(3:4)]) dat2b_mod_simpleslopes <- rbind(dat2b_mod1[c(10:11),],dat2b_mod2[c(10:11),],dat2b_mod3[c(11:12),]) dat2b_mod <- rbind(dat2b_mod1[c(6,1,7,5,2,4),],dat2b_mod2[c(6,1,7,5,2,4),],dat2b_mod3[c(5,7,6,4,2,3),]) ###create Table S2.5: Results dat2a_mod[nrow(dat2a_mod)+6,] <- NA dat2a_mod$Predictor <- c("(Intercept)","ADM","RIV","SLS","ADM x SLS","RIV x SLS","(Intercept)","ADM","RIV","SLS","ADM x SLS","RIV x SLS","(Intercept)","ADM","RIV","SLS","ADM x SLS","RIV x SLS") dat2a_mod$blank <- NA dat_table_S2.5 <- cbind(dat2a_mod[,c(7,1,5:6,3:4,8)],dat2b_mod[,c(3:7)]) colnames(dat_table_S2.5) <- c("Predictor","beta","ci_lower1","ci_upper1","t","p1","blank","zPE","ci_lower2","ci_upper2","z","p2") dat_table_S2.5[,2:12] <- sapply(dat_table_S2.5[,2:12], as.numeric) format_beta <- function(x){ ifelse(abs(x) < 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_table_S2.5[,c(2:4,8:10)] <- dat_table_S2.5[,c(2:4,8:10)] %>% mutate_if(is.numeric, format_beta) format_t <- function(x){ formatC(x, format = "f", digits = 2) } dat_table_S2.5[,c(5,11)] <- dat_table_S2.5[,c(5,11)] %>% mutate_if(is.numeric, format_t) format_p <- function(x){ ifelse(abs(x) < 0.001, "< .001", f_num(unlist(x), digits=3)) } dat_table_S2.5[,c(6,12)] <- dat_table_S2.5[,c(6,12)] %>% mutate_if(is.numeric, format_p) dat_table_S2.5$ci1 <- paste0("[", dat_table_S2.5$ci_lower1, ", ", dat_table_S2.5$ci_upper1, "]") dat_table_S2.5$ci2 <- paste0("[", dat_table_S2.5$ci_lower2, ", ", dat_table_S2.5$ci_upper2, "]") dat_table_S2.5 <- dat_table_S2.5[,c("Predictor","beta","ci1","t","p1","blank","zPE","ci2","z","p2")] dat_table_S2.5[c(1,7,13:18),c(2:5)] <- NA dat_table_S2.5[19,2] <- "SLS Based on Leadership Descriptions" dat_table_S2.5[20,2] <- "SLS Based on Leadership Behaviors" dat_table_S2.5[21,2] <- "SLS Based on Bipolar Leadership Measure" dat_table_S2.5 <- dat_table_S2.5[c(19,1:6,20,7:12,21,13:18),] col_keys <- c("Predictor","beta","ci1","t","p1","blank","zPE","ci2","z","p2") head1 <- c("","Study 2a","Study 2a","Study 2a","Study 2a","","Study 2b","Study 2b","Study 2b","Study 2b") head2 <- c("Predictor","\u03B2","95% CI","t","p","","zPE","95% CI","z","p") head <- data.frame(col_keys,head1,head2, stringsAsFactors = FALSE) rm(col_keys,head1,head2) tbl <- flextable(dat_table_S2.5) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:10, border=fp_border(width=2), part="header") tbl <- merge_at(tbl, i=1, j=2:5, part="header") tbl <- merge_at(tbl, i=1, j=7:10, part="header") tbl <- hline(tbl, i=1, j=c(2:5,7:10), border=fp_border(width=1.2), part="header") tbl <- hline(tbl, i=2, j=1:10, border=fp_border(width=1.2), part="header") tbl <- merge_at(tbl, i=1, j=2:10, part="body") tbl <- merge_at(tbl, i=8, j=2:10, part="body") tbl <- merge_at(tbl, i=15, j=2:10, part="body") tbl <- hline(tbl, i=c(7,14), j=1:10, border=fp_border(width=1.2), part="body") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j = c("Predictor"), align="left", part="body") tbl <- italic(tbl, i=2, j=c("t","p1","zPE","z","p2"), part="header") tbl <- width(tbl, j =~ Predictor, width=1) tbl <- width(tbl, j =~ beta + zPE, width=.45) tbl <- width(tbl, j =~ ci1 + ci2, width=.95) tbl <- width(tbl, j =~ t + z + p1 + p2, width=.6) tbl <- width(tbl, j =~ blank, width=.3) tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S2.5.docx") ###create Table S2.6: Conditional Total Effects of Narcissistic Rivalry on Attraction to Supervisor for Democratic and Autocratic Supervisors Separately for Each Leadership Measure dat2a_mod_simpleslopes[nrow(dat2a_mod_simpleslopes)+2,] <- NA dat2a_mod_simpleslopes$SLS <- c("Democratic","Autocratic","Democratic","Autocratic","Democratic","Autocratic") dat2a_mod_simpleslopes$blank <- NA dat_table_S2.6 <- cbind(dat2a_mod_simpleslopes[,c(6,1:5,7)],dat2b_mod_simpleslopes[c(2,1,4,3,6,5),c(3:7)]) colnames(dat_table_S2.6) <- c("SLS","beta","ci_lower1","ci_upper1","t","p1","blank","zPE","ci_lower2","ci_upper2","z","p2") dat_table_S2.6[,2:12] <- sapply(dat_table_S2.6[,2:12], as.numeric) format_beta <- function(x){ ifelse(abs(x) < 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_table_S2.6[,c(2:4,8:10)] <- dat_table_S2.6[,c(2:4,8:10)] %>% mutate_if(is.numeric, format_beta) format_t <- function(x){ formatC(x, format = "f", digits = 2) } dat_table_S2.6[,c(5,11)] <- dat_table_S2.6[,c(5,11)] %>% mutate_if(is.numeric, format_t) format_p <- function(x){ ifelse(abs(x) < 0.001, "< .001", f_num(unlist(x), digits=3)) } dat_table_S2.6[,c(6,12)] <- dat_table_S2.6[,c(6,12)] %>% mutate_if(is.numeric, format_p) dat_table_S2.6$ci1 <- paste0("[", dat_table_S2.6$ci_lower1, ", ", dat_table_S2.6$ci_upper1, "]") dat_table_S2.6$ci2 <- paste0("[", dat_table_S2.6$ci_lower2, ", ", dat_table_S2.6$ci_upper2, "]") dat_table_S2.6 <- dat_table_S2.6[,c("SLS","beta","ci1","t","p1","blank","zPE","ci2","z","p2")] dat_table_S2.6[c(5:6),c(2:5)] <- NA dat_table_S2.6[7,2] <- "SLS Based on Leadership Descriptions" dat_table_S2.6[8,2] <- "SLS Based on Leadership Behaviors" dat_table_S2.6[9,2] <- "SLS Based on Bipolar Leadership Measure" dat_table_S2.6 <- dat_table_S2.6[c(7,1:2,8,3:4,9,5:6),] col_keys <- c("SLS","beta","ci1","t","p1","blank","zPE","ci2","z","p2") head1 <- c("","Study 2a","Study 2a","Study 2a","Study 2a","","Study 2b","Study 2b","Study 2b","Study 2b") head2 <- c("SLS","\u03B2","95% CI","t","p","","zPE","95% CI","z","p") head <- data.frame(col_keys,head1,head2, stringsAsFactors = FALSE) rm(col_keys,head1,head2) tbl <- flextable(dat_table_S2.6) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:10, border=fp_border(width=2), part="header") tbl <- merge_at(tbl, i=1, j=2:5, part="header") tbl <- merge_at(tbl, i=1, j=7:10, part="header") tbl <- hline(tbl, i=1, j=c(2:5,7:10), border=fp_border(width=1.2), part="header") tbl <- hline(tbl, i=2, j=1:10, border=fp_border(width=1.2), part="header") tbl <- merge_at(tbl, i=1, j=2:10, part="body") tbl <- merge_at(tbl, i=4, j=2:10, part="body") tbl <- merge_at(tbl, i=7, j=2:10, part="body") tbl <- hline(tbl, i=c(3,6), j=1:10, border=fp_border(width=1.2), part="body") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j = c("SLS"), align="left", part="body") tbl <- italic(tbl, i=2, j=c("t","p1","zPE","z","p2"), part="header") tbl <- width(tbl, j =~ SLS, width=1) tbl <- width(tbl, j =~ beta + zPE, width=.45) tbl <- width(tbl, j =~ ci1 + ci2, width=.95) tbl <- width(tbl, j =~ t + z + p1 + p2, width=.6) tbl <- width(tbl, j =~ blank, width=.3) tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S2.6.docx") ##Note of Tables S2.6, S2.8, S2.14, and S2.16 ###Study 2a max(dat2a$descriptions_supervisor) #leadership descriptions value of the most democratic supervisors: 7 max(dat2a$lbdq_supervisor) #leadership behaviors value of the most democratic supervisors: 4.75 min(dat2a$descriptions_supervisor) #leadership descriptions value of the most autocratic supervisors: 1 min(dat2a$lbdq_supervisor) #leadership behaviors value of the most autocratic supervisors: 1.2 boxplot(dat2a$Zdescriptions_supervisor, ylab = "Zdescriptions_supervisor") #no leadership descriptions values are outliers boxplot(dat2a$Zlbdq_supervisor, ylab = "Zlbdq_supervisor") #no leadership behaviors values are outliers ###Study 2b max(dat2b$descriptions_supervisor_team) #leadership descriptions value of the most democratic supervisors: 5.83 max(dat2b$lbdq_supervisor_team) #leadership behaviors value of the most democratic supervisors: 5.5 max(dat2b$bipolar_measure_supervisor_team) #the most democratic supervisors' value on the bipolar leadership measure: 10.75 min(dat2b$descriptions_supervisor_team) #leadership descriptions value of the most autocratic supervisors: 1.5 min(dat2b$lbdq_supervisor_team) #leadership behaviors value of the most autocratic supervisors: 1.63 min(dat2b$bipolar_measure_supervisor_team) #the most autocratic supervisors' value on the bipolar leadership measure: 2 boxplot(dat2b$Zdescriptions_supervisor_team, ylab = "Zdescriptions_supervisor_team") #no leadership descriptions values are outliers boxplot(dat2b$Zlbdq_supervisor_team, ylab = "Zlbdq_supervisor_team") #no leadership behaviors values are extreme outliers boxplot(dat2b$Zbipolar_measure_supervisor_team, ylab = "Zbipolar_measure_supervisor_team") #no values on the bipolar leadership measure are outliers rm(moderation_model2a_descriptions,moderation_model2a_lbdq,dat2a_mod,model_dem_descriptions,model_aut_descriptions,dat2a_mod_dem_descriptions,dat2a_mod_aut_descriptions, model_dem_lbdq,model_aut_lbdq,dat2a_mod_dem_lbdq,dat2a_mod_aut_lbdq,dat2a_mod_simpleslopes,output1,output1_est_ci,est_ci1,output1_t_p,t_p1,dat2b_est_ci1,dat2b_t_p1, output2,output2_est_ci,est_ci2,output2_t_p,t_p2,dat2b_est_ci2,dat2b_t_p2,output3,output3_est_ci,est_ci3,output3_t_p,t_p3,dat2b_est_ci3,dat2b_t_p3, dat2b_mod1,dat2b_mod2,dat2b_mod3,dat2b_mod,dat2b_mod_simpleslopes,dat_table_S2.5,dat_table_S2.6,format_beta,format_p,format_t,head,tbl,doc) ##Tables S2.7 and S2.8: Moderated Mediation Model With Narcissistic Admiration and Rivalry Separately for Each Leadership Measure in Studies 2a-2b ###standardized values of leadership measures for conditional effects ####Study 2a min(dat2a$Zdescriptions_supervisor) #standardized leadership descriptions value of the most autocratic supervisors: -1.85317 max(dat2a$Zdescriptions_supervisor) #standardized leadership descriptions value of the most democratic supervisors: 1.435109 min(dat2a$Zlbdq_supervisor) #standardized leadership behaviors value of the most autocratic supervisors: -2.721009 max(dat2a$Zlbdq_supervisor) #standardized leadership behaviors value of the most democratic supervisors: 2.040864 ####Study 2b min(dat2b$Zdescriptions_supervisor_team) #standardized leadership descriptions value of the most autocratic supervisors: -2.253091 max(dat2b$Zdescriptions_supervisor_team) #standardized leadership descriptions value of the most democratic supervisors: 1.387379 min(dat2b$Zlbdq_supervisor_team) #standardized leadership behaviors value of the most autocratic supervisors: -2.959622 max(dat2b$Zlbdq_supervisor_team) #standardized leadership behaviors value of the most democratic supervisors: 1.697091 min(dat2b$Zbipolar_measure_supervisor_team) #the most autocratic supervisors' standardized value on the bipolar leadership measure: -2.102371 max(dat2b$Zbipolar_measure_supervisor_team) #the most autocratic supervisors' standardized value on the bipolar leadership measure: 1.341297 ###moderated mediation models for Study 2a set.seed(123) #setting the seed for reproducibility mediation_model2a_descriptions <- ' Zattraction ~ Znarq_adm + c*Znarq_riv + Zdescriptions_supervisor + b*Zdescriptions_self + ZADMxSLS_descriptions + h*ZRIVxSLS_descriptions + g*ZSHLSxSLS_descriptions Zdescriptions_self ~ a1*Znarq_adm + a2*Znarq_riv ## index of moderated mediaion index_adm := a1 * g index_riv := a2 * g ## conditional effects of RIV indirect_aut := a2*(b-1.85317*g) indirect_dem := a2*(b+1.435109*g) direct_aut := c-1.85317*h direct_dem := c+1.435109*h ## conditional effects of SHLS SHLS_aut := b-1.85317*g SHLS_dem := b+1.435109*g' results_descriptions <- sem(mediation_model2a_descriptions, data = dat2a, meanstructure = TRUE, se = "bootstrap", bootstrap = 10000) dat2a_modmed_descriptions <- data.frame(parameterEstimates(results_descriptions, ci = TRUE, level = 0.95, boot.ci.type = "bca.simple")) #bias-corrected percentile method set.seed(123) #setting the seed for reproducibility mediation_model2a_lbdq <- ' Zattraction ~ Znarq_adm + c*Znarq_riv + Zlbdq_supervisor + b*Zlbdq_self + ZADMxSLS_lbdq + h*ZRIVxSLS_lbdq + g*ZSHLSxSLS_lbdq Zlbdq_self ~ a1*Znarq_adm + a2*Znarq_riv ## index of moderated mediaion index_adm := a1 * g index_riv := a2 * g ## conditional effects of RIV indirect_aut := a2*(b-2.721009*g) indirect_dem := a2*(b+2.040864*g) direct_aut := c-2.721009*h direct_dem := c+2.040864*h ## conditional effects of SHLS SHLS_aut := b-2.721009*g SHLS_dem := b+2.040864*g' results_lbdq <- sem(mediation_model2a_lbdq, data = dat2a, meanstructure = TRUE, se = "bootstrap", bootstrap = 10000) dat2a_modmed_lbdq <- data.frame(parameterEstimates(results_lbdq, ci = TRUE, level = 0.95, boot.ci.type = "bca.simple")) #bias-corrected percentile method dat2a_modmed_index_simpleslopes <- rbind(dat2a_modmed_descriptions[c(41:48),],dat2a_modmed_lbdq[c(41:48),]) dat2a_modmed <- rbind(dat2a_modmed_descriptions[c(8:9,33,1:2,4,3,5:7),],dat2a_modmed_lbdq[c(8:9,33,1:2,4,3,5:7),]) ###extract coefficients from Mplus-Outputs for Study 2b setwd(mplus_wd) output1 <- readModels("Supplement/narq_descriptions_mediation.out", what = "parameters") output1_est_ci <- sapply(output1, "[", "ci.unstandardized") est_ci1 <- sapply(output1_est_ci, "[", c("paramHeader","param","est","low2.5","up2.5")) output1_t_p <- sapply(output1, "[", "unstandardized") t_p1 <- sapply(output1_t_p, "[", c("paramHeader","param","est_se","pval")) dat2b_est_ci1 <- data.frame(matrix(unlist(est_ci1), nrow=24, ncol = 5, byrow=F), stringsAsFactors=FALSE) dat2b_t_p1 <- data.frame(matrix(unlist(t_p1), nrow=24, ncol = 4, byrow=F), stringsAsFactors=FALSE) output2 <- readModels("Supplement/narq_lbdq_mediation.out", what = "parameters") output2_est_ci <- sapply(output2, "[", "ci.unstandardized") est_ci2 <- sapply(output2_est_ci, "[", c("paramHeader","param","est","low2.5","up2.5")) output2_t_p <- sapply(output2, "[", "unstandardized") t_p2 <- sapply(output2_t_p, "[", c("paramHeader","param","est_se","pval")) dat2b_est_ci2 <- data.frame(matrix(unlist(est_ci2), nrow=24, ncol = 5, byrow=F), stringsAsFactors=FALSE) dat2b_t_p2 <- data.frame(matrix(unlist(t_p2), nrow=24, ncol = 4, byrow=F), stringsAsFactors=FALSE) output3 <- readModels("Supplement/narq_bipolar_mediation.out", what = "parameters") output3_est_ci <- sapply(output3, "[", "ci.unstandardized") est_ci3 <- sapply(output3_est_ci, "[", c("paramHeader","param","est","low2.5","up2.5")) output3_t_p <- sapply(output3, "[", "unstandardized") t_p3 <- sapply(output3_t_p, "[", c("paramHeader","param","est_se","pval")) dat2b_est_ci3 <- data.frame(matrix(unlist(est_ci3), nrow=25, ncol = 5, byrow=F), stringsAsFactors=FALSE) dat2b_t_p3 <- data.frame(matrix(unlist(t_p3), nrow=25, ncol = 4, byrow=F), stringsAsFactors=FALSE) dat2b_mod1 <- cbind(dat2b_est_ci1,dat2b_t_p1[,c(3:4)]) dat2b_mod2 <- cbind(dat2b_est_ci2,dat2b_t_p2[,c(3:4)]) dat2b_mod3 <- cbind(dat2b_est_ci3,dat2b_t_p3[,c(3:4)]) dat2b_modmed_simpleslopes <- rbind(dat2b_mod1[c(17:24),],dat2b_mod2[c(17:24),],dat2b_mod3[c(18:25),]) dat2b_modmed <- rbind(dat2b_mod1[c(4,3,11,1,12,13,10,2,9,8),],dat2b_mod2[c(4,3,11,1,12,13,10,2,9,8),],dat2b_mod3[c(2,1,10,12,11,13,9,6,8,7),]) ###create Table S2.7: Results dat2a_modmed[nrow(dat2a_modmed)+10,] <- NA dat2a_modmed$Predictor <- c("ADM","RIV","(Intercept)","ADM","RIV","SHLS","SLS","ADM x SLS","RIV x SLS","SHLS x SLS","ADM","RIV","(Intercept)","ADM","RIV","SHLS","SLS","ADM x SLS","RIV x SLS","SHLS x SLS","ADM","RIV","(Intercept)","ADM","RIV","SHLS","SLS","ADM x SLS","RIV x SLS","SHLS x SLS") dat2a_modmed$blank <- NA dat_table_S2.7 <- cbind(dat2a_modmed[,c(11,5,9:10,7:8,12)],dat2b_modmed[,c(3:7)]) colnames(dat_table_S2.7) <- c("Predictor","beta","ci_lower1","ci_upper1","z1","p1","blank","zPE","ci_lower2","ci_upper2","z2","p2") dat_table_S2.7[,2:12] <- sapply(dat_table_S2.7[,2:12], as.numeric) format_beta <- function(x){ ifelse(abs(x) < 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_table_S2.7[,c(2:4,8:10)] <- dat_table_S2.7[,c(2:4,8:10)] %>% mutate_if(is.numeric, format_beta) format_t <- function(x){ formatC(x, format = "f", digits = 2) } dat_table_S2.7[,c(5,11)] <- dat_table_S2.7[,c(5,11)] %>% mutate_if(is.numeric, format_t) format_p <- function(x){ ifelse(abs(x) < 0.001, "< .001", f_num(unlist(x), digits=3)) } dat_table_S2.7[,c(6,12)] <- dat_table_S2.7[,c(6,12)] %>% mutate_if(is.numeric, format_p) dat_table_S2.7$ci1 <- paste0("[", dat_table_S2.7$ci_lower1, ", ", dat_table_S2.7$ci_upper1, "]") dat_table_S2.7$ci2 <- paste0("[", dat_table_S2.7$ci_lower2, ", ", dat_table_S2.7$ci_upper2, "]") dat_table_S2.7 <- dat_table_S2.7[,c("Predictor","beta","ci1","z1","p1","blank","zPE","ci2","z2","p2")] dat_table_S2.7[c(3,13,21:30),c(2:5)] <- NA dat_table_S2.7[31,2] <- "SLS and SHLS Based on Leadership Descriptions" dat_table_S2.7[32,2] <- "Outcome: SHLS" dat_table_S2.7[33,2] <- "Outcome: Attraction to Supervisor" dat_table_S2.7[34,2] <- "SLS and SHLS Based on Leadership Behaviors" dat_table_S2.7[35,2] <- "Outcome: SHLS" dat_table_S2.7[36,2] <- "Outcome: Attraction to Supervisor" dat_table_S2.7[37,2] <- "SLS and SHLS Based on Bipolar Leadership Measure" dat_table_S2.7[38,2] <- "Outcome: SHLS" dat_table_S2.7[39,2] <- "Outcome: Attraction to Supervisor" dat_table_S2.7 <- dat_table_S2.7[c(31:32,1:2,33,3:10,34:35,11:12,36,13:20,37:38,21:22,39,23:30),] col_keys <- c("Predictor","beta","ci1","z1","p1","blank","zPE","ci2","z2","p2") head1 <- c("","Study 2a","Study 2a","Study 2a","Study 2a","","Study 2b","Study 2b","Study 2b","Study 2b") head2 <- c("Predictor","\u03B2","95% CI","z","p","","zPE","95% CI","z","p") head <- data.frame(col_keys,head1,head2, stringsAsFactors = FALSE) rm(col_keys,head1,head2) tbl <- flextable(dat_table_S2.7) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:10, border=fp_border(width=2), part="header") tbl <- merge_at(tbl, i=1, j=2:5, part="header") tbl <- merge_at(tbl, i=1, j=7:10, part="header") tbl <- merge_at(tbl, i=1, j=2:10, part="body") tbl <- merge_at(tbl, i=2, j=2:10, part="body") tbl <- merge_at(tbl, i=5, j=2:10, part="body") tbl <- merge_at(tbl, i=14, j=2:10, part="body") tbl <- merge_at(tbl, i=15, j=2:10, part="body") tbl <- merge_at(tbl, i=18, j=2:10, part="body") tbl <- merge_at(tbl, i=27, j=2:10, part="body") tbl <- merge_at(tbl, i=28, j=2:10, part="body") tbl <- merge_at(tbl, i=31, j=2:10, part="body") tbl <- hline(tbl, i=1, j=c(2:5,7:10), border=fp_border(width=1.2), part="header") tbl <- hline(tbl, i=2, j=1:10, border=fp_border(width=1.2), part="header") tbl <- hline(tbl, i=c(13,26), j=1:10, border=fp_border(width=1.2), part="body") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j = c("Predictor"), align="left", part="body") tbl <- italic(tbl, i=2, j=c("z1","p1","zPE","z2","p2"), part="header") tbl <- width(tbl, j =~ Predictor, width=1.1) tbl <- width(tbl, j =~ beta + zPE, width=.45) tbl <- width(tbl, j =~ ci1 + ci2, width=.95) tbl <- width(tbl, j =~ z1 + z2 + p1 + p2, width=.6) tbl <- width(tbl, j =~ blank, width=.3) tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S2.7.docx") ###create Table S2.8: Index of Moderated Mediation, Conditional Indirect Effects, and Conditional Direct Effects dat2a_modmed_index_simpleslopes[nrow(dat2a_modmed_index_simpleslopes)+8,] <- NA dat2a_modmed_index_simpleslopes <- dat2a_modmed_index_simpleslopes[c(8,7,1:2,4,3,6,5,16,15,9:10,12,11,14,13,17:24),] dat2a_modmed_index_simpleslopes$Effect <- c(" Democratic"," Autocratic"," ADM"," RIV"," Democratic"," Autocratic"," Democratic"," Autocratic"," Democratic"," Autocratic"," ADM"," RIV"," Democratic"," Autocratic"," Democratic"," Autocratic"," Democratic"," Autocratic"," ADM"," RIV"," Democratic"," Autocratic"," Democratic"," Autocratic") dat2a_modmed_index_simpleslopes$blank <- NA dat_table_S2.8 <- cbind(dat2a_modmed_index_simpleslopes[,c(11,5,9:10,7:8,12)],dat2b_modmed_simpleslopes[c(8,7,2,1,4,3,6,5,16,15,10,9,12,11,14,13,24,23,18,17,20,19,22,21),c(3:7)]) colnames(dat_table_S2.8) <- c("Effect","beta","ci_lower1","ci_upper1","t","p1","blank","zPE","ci_lower2","ci_upper2","z","p2") dat_table_S2.8[,2:12] <- sapply(dat_table_S2.8[,2:12], as.numeric) format_beta <- function(x){ ifelse(abs(x) < 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_table_S2.8[,c(2:4,8:10)] <- dat_table_S2.8[,c(2:4,8:10)] %>% mutate_if(is.numeric, format_beta) format_t <- function(x){ formatC(x, format = "f", digits = 2) } dat_table_S2.8[,c(5,11)] <- dat_table_S2.8[,c(5,11)] %>% mutate_if(is.numeric, format_t) format_p <- function(x){ ifelse(abs(x) < 0.001, "< .001", f_num(unlist(x), digits=3)) } dat_table_S2.8[,c(6,12)] <- dat_table_S2.8[,c(6,12)] %>% mutate_if(is.numeric, format_p) dat_table_S2.8$ci1 <- paste0("[", dat_table_S2.8$ci_lower1, ", ", dat_table_S2.8$ci_upper1, "]") dat_table_S2.8$ci2 <- paste0("[", dat_table_S2.8$ci_lower2, ", ", dat_table_S2.8$ci_upper2, "]") dat_table_S2.8 <- dat_table_S2.8[,c("Effect","beta","ci1","t","p1","blank","zPE","ci2","z","p2")] dat_table_S2.8[c(17:24),c(2:5)] <- NA dat_table_S2.8[25,2] <- "SLS and SHLS Based on Leadership Descriptions" dat_table_S2.8[26,1] <- "Conditional Direct Effects of SHLS on Attraction to Supervisor" dat_table_S2.8[27,1] <- "Index of Moderated Mediation" dat_table_S2.8[28,1] <- "Conditional Indirect Effects of RIV on Attraction to Supervisor" dat_table_S2.8[29,1] <- "Conditional Direct Effects of RIV on Attraction to Supervisor" dat_table_S2.8[30,2] <- "SLS and SHLS Based on Leadership Behaviors" dat_table_S2.8[31,1] <- "Conditional Direct Effects of SHLS on Attraction to Supervisor" dat_table_S2.8[32,1] <- "Index of Moderated Mediation" dat_table_S2.8[33,1] <- "Conditional Indirect Effects of RIV on Attraction to Supervisor" dat_table_S2.8[34,1] <- "Conditional Direct Effects of RIV on Attraction to Supervisor" dat_table_S2.8[35,2] <- "SLS and SHLS Based on Bipolar Leadership Measure" dat_table_S2.8[36,1] <- "Conditional Direct Effects of SHLS on Attraction to Supervisor" dat_table_S2.8[37,1] <- "Index of Moderated Mediation" dat_table_S2.8[38,1] <- "Conditional Indirect Effects of RIV on Attraction to Supervisor" dat_table_S2.8[39,1] <- "Conditional Direct Effects of RIV on Attraction to Supervisor" dat_table_S2.8 <- dat_table_S2.8[c(25:26,1:2,27,3:4,28,5:6,29,7:8,30:31,9:10,32,11:12,33,13:14,34,15:16,35:36,17:18,37,19:20,38,21:22,39,23:24),] col_keys <- c("Effect","beta","ci1","t","p1","blank","zPE","ci2","z","p2") head1 <- c("","Study 2a","Study 2a","Study 2a","Study 2a","","Study 2b","Study 2b","Study 2b","Study 2b") head2 <- c("Effect","\u03B2","95% CI","t","p","","zPE","95% CI","z","p") head <- data.frame(col_keys,head1,head2, stringsAsFactors = FALSE) rm(col_keys,head1,head2) tbl <- flextable(dat_table_S2.8) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:10, border=fp_border(width=2), part="header") tbl <- merge_at(tbl, i=1, j=2:5, part="header") tbl <- merge_at(tbl, i=1, j=7:10, part="header") tbl <- hline(tbl, i=1, j=c(2:5,7:10), border=fp_border(width=1.2), part="header") tbl <- hline(tbl, i=2, j=1:10, border=fp_border(width=1.2), part="header") tbl <- merge_at(tbl, i=1, j=2:10, part="body") tbl <- merge_at(tbl, i=14, j=2:10, part="body") tbl <- merge_at(tbl, i=27, j=2:10, part="body") tbl <- merge_at(tbl, i=2, j=1:10, part="body") tbl <- merge_at(tbl, i=5, j=1:10, part="body") tbl <- merge_at(tbl, i=8, j=1:10, part="body") tbl <- merge_at(tbl, i=11, j=1:10, part="body") tbl <- merge_at(tbl, i=15, j=1:10, part="body") tbl <- merge_at(tbl, i=18, j=1:10, part="body") tbl <- merge_at(tbl, i=21, j=1:10, part="body") tbl <- merge_at(tbl, i=24, j=1:10, part="body") tbl <- merge_at(tbl, i=28, j=1:10, part="body") tbl <- merge_at(tbl, i=31, j=1:10, part="body") tbl <- merge_at(tbl, i=34, j=1:10, part="body") tbl <- merge_at(tbl, i=37, j=1:10, part="body") tbl <- hline(tbl, i=c(13,26), j=1:10, border=fp_border(width=1.2), part="body") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j = c("Effect"), align="left", part="body") tbl <- align(tbl, i = c(2,5,8,11,15,18,21,24,28,31,34,37), align="left", part="body") tbl <- italic(tbl, i=2, j=c("t","p1","zPE","z","p2"), part="header") tbl <- width(tbl, j =~ Effect, width=1.2) tbl <- width(tbl, j =~ beta + zPE, width=.5) tbl <- width(tbl, j =~ ci1 + ci2, width=.95) tbl <- width(tbl, j =~ t + z + p1 + p2, width=.55) tbl <- width(tbl, j =~ blank, width=.3) tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S2.8.docx") rm(mediation_model2a_descriptions,results_descriptions,dat2a_modmed_descriptions,mediation_model2a_lbdq,results_lbdq,dat2a_modmed_lbdq,dat2a_modmed,dat2a_modmed_index_simpleslopes, output1,output1_est_ci,est_ci1,output1_t_p,t_p1,dat2b_est_ci1,dat2b_t_p1,output2,output2_est_ci,est_ci2,output2_t_p,t_p2,dat2b_est_ci2,dat2b_t_p2, output3,output3_est_ci,est_ci3,output3_t_p,t_p3,dat2b_est_ci3,dat2b_t_p3,dat2b_mod1,dat2b_mod2,dat2b_mod3,dat2b_modmed,dat2b_modmed_simpleslopes, dat_table_S2.7,dat_table_S2.8,format_beta,format_p,format_t,head,tbl,doc) #Completion Order in Study 2a ##Table S2.9: Unique Effects of Narcissistic Admiration and Rivalry on Attraction to Supervisor Moderated by Supervisor's Leadership Style and ## Completion Order of Supervisor's Leadership Style and Subordinate's Hypothetical Leadership Style in Study 2a ###regression model model_order <- lm(Zattraction ~ Znarq_adm + Znarq_riv + Zstyle_index_supervisor + Zorder + ZADMxSLS + ZRIVxSLS + ZADMxORD + ZRIVxORD + ZSLSxORD + ZADMxSLSxORD + ZRIVxSLSxORD, data=dat2a) dat_table_S2.9 <- data.frame(summary(model_order)$coef,confint(model_order)) ###create table dat_table_S2.9 <- dat_table_S2.9[!(row.names(dat_table_S2.9) %in% "(Intercept)"), ] dat_table_S2.9$Predictor <- c("ADM","RIV","SLS","Order","ADM x SLS","RIV x SLS","ADM x Order","RIV x Order","SLS x Order","ADM x SLS x Order","RIV x SLS x Order") dat_table_S2.9 <- dat_table_S2.9[,c(7,1,5:6,3:4)] colnames(dat_table_S2.9) <- c("Predictor","beta","ci_lower","ci_upper","t","p") dat_table_S2.9[,2:6] <- sapply(dat_table_S2.9[,2:6], as.numeric) format_beta <- function(x){ ifelse(abs(x) < 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_table_S2.9[,c(2:4)] <- dat_table_S2.9[,c(2:4)] %>% mutate_if(is.numeric, format_beta) format_t <- function(x){ formatC(x, format = "f", digits = 2) } dat_table_S2.9[,5] <- sapply(dat_table_S2.9[,5], format_t) format_p <- function(x){ ifelse(abs(x) < 0.001, "< .001", f_num(unlist(x), digits=3)) } dat_table_S2.9[,6] <- sapply(dat_table_S2.9[,6], format_p) dat_table_S2.9$ci <- paste0("[", dat_table_S2.9$ci_lower, ", ", dat_table_S2.9$ci_upper, "]") dat_table_S2.9 <- dat_table_S2.9[,c("Predictor","beta","ci","t","p")] col_keys <- c("Predictor","beta","ci","t","p") head1 <- c("Predictor","\u03B2","95% CI","t","p") head <- data.frame(col_keys,head1, stringsAsFactors = FALSE) rm(col_keys,head1) tbl <- flextable(dat_table_S2.9) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:5, border=fp_border(width=2), part="header") tbl <- hline(tbl, i=1, j=1:5, border=fp_border(width=1.2), part="header") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j = c("Predictor"), align="left", part="body") tbl <- italic(tbl, i=1, j=c("t","p"), part="header") tbl <- width(tbl, j =~ Predictor, width=1.6) tbl <- width(tbl, j =~ beta, width=.5) tbl <- width(tbl, j =~ ci, width=.95) tbl <- width(tbl, j =~ t + p, width=.6) tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S2.9.docx") ##Footnote S2: simple slopes of three-way interaction between admiration, supervisor's leadership Style, and completion order dat2a$Zorder_SLS_first <- dat2a$Zorder - abs(max(dat2a$Zorder)) dat2a$Zorder_SHLS_first <- dat2a$Zorder + abs(min(dat2a$Zorder)) dat2a$Zsupervisor_dem <- dat2a$Zstyle_index_supervisor - abs(max(dat2a$Zstyle_index_supervisor)) dat2a$Zsupervisor_aut <- dat2a$Zstyle_index_supervisor + abs(min(dat2a$Zstyle_index_supervisor)) dat2a$ZADMxSLS_dem <- scale(dat2a$Znarq_adm*dat2a$Zsupervisor_dem) dat2a$ZRIVxSLS_dem <- scale(dat2a$Znarq_riv*dat2a$Zsupervisor_dem) dat2a$ZADMxSLS_aut <- scale(dat2a$Znarq_adm*dat2a$Zsupervisor_aut) dat2a$ZRIVxSLS_aut <- scale(dat2a$Znarq_riv*dat2a$Zsupervisor_aut) dat2a$ZADMxORD_SLS_first <- scale(dat2a$Znarq_adm*dat2a$Zorder_SLS_first) dat2a$ZRIVxORD_SLS_first <- scale(dat2a$Znarq_riv*dat2a$Zorder_SLS_first) dat2a$ZSLS_demxORD_SLS_first <- scale(dat2a$Zsupervisor_dem*dat2a$Zorder_SLS_first) dat2a$ZSLS_autxORD_SLS_first <- scale(dat2a$Zsupervisor_aut*dat2a$Zorder_SLS_first) dat2a$ZADMxORD_SHLS_first <- scale(dat2a$Znarq_adm*dat2a$Zorder_SHLS_first) dat2a$ZRIVxORD_SHLS_first <- scale(dat2a$Znarq_riv*dat2a$Zorder_SHLS_first) dat2a$ZSLS_demxORD_SHLS_first <- scale(dat2a$Zsupervisor_dem*dat2a$Zorder_SHLS_first) dat2a$ZSLS_autxORD_SHLS_first <- scale(dat2a$Zsupervisor_aut*dat2a$Zorder_SHLS_first) dat2a$ZADMxSLS_demxORD_SLS_first <- scale(dat2a$Znarq_adm*dat2a$Zsupervisor_dem*dat2a$Zorder_SLS_first) dat2a$ZRIVxSLS_demxORD_SLS_first <- scale(dat2a$Znarq_riv*dat2a$Zsupervisor_dem*dat2a$Zorder_SLS_first) dat2a$ZADMxSLS_autxORD_SLS_first <- scale(dat2a$Znarq_adm*dat2a$Zsupervisor_aut*dat2a$Zorder_SLS_first) dat2a$ZRIVxSLS_autxORD_SLS_first <- scale(dat2a$Znarq_riv*dat2a$Zsupervisor_aut*dat2a$Zorder_SLS_first) dat2a$ZADMxSLS_demxORD_SHLS_first <- scale(dat2a$Znarq_adm*dat2a$Zsupervisor_dem*dat2a$Zorder_SHLS_first) dat2a$ZRIVxSLS_demxORD_SHLS_first <- scale(dat2a$Znarq_riv*dat2a$Zsupervisor_dem*dat2a$Zorder_SHLS_first) dat2a$ZADMxSLS_autxORD_SHLS_first <- scale(dat2a$Znarq_adm*dat2a$Zsupervisor_aut*dat2a$Zorder_SHLS_first) dat2a$ZRIVxSLS_autxORD_SHLS_first <- scale(dat2a$Znarq_riv*dat2a$Zsupervisor_aut*dat2a$Zorder_SHLS_first) model_order_SLS_first_supervisor_dem <- lm(Zattraction ~ Znarq_adm + Znarq_riv + Zsupervisor_dem + Zorder + ZADMxSLS_dem + ZRIVxSLS_dem + ZADMxORD_SLS_first + ZRIVxORD_SLS_first + ZSLS_demxORD_SLS_first + ZADMxSLS_demxORD_SLS_first + ZRIVxSLS_demxORD_SLS_first, data=dat2a) model_order_SLS_first_supervisor_aut <- lm(Zattraction ~ Znarq_adm + Znarq_riv + Zsupervisor_aut + Zorder + ZADMxSLS_aut + ZRIVxSLS_aut + ZADMxORD_SLS_first + ZRIVxORD_SLS_first + ZSLS_autxORD_SLS_first + ZADMxSLS_autxORD_SLS_first + ZRIVxSLS_autxORD_SLS_first, data=dat2a) model_order_SHLS_first_supervisor_dem <- lm(Zattraction ~ Znarq_adm + Znarq_riv + Zsupervisor_dem + Zorder + ZADMxSLS_dem + ZRIVxSLS_dem + ZADMxORD_SHLS_first + ZRIVxORD_SHLS_first + ZSLS_demxORD_SHLS_first + ZADMxSLS_demxORD_SHLS_first + ZRIVxSLS_demxORD_SHLS_first, data=dat2a) model_order_SHLS_first_supervisor_aut <- lm(Zattraction ~ Znarq_adm + Znarq_riv + Zsupervisor_aut + Zorder + ZADMxSLS_aut + ZRIVxSLS_aut + ZADMxORD_SHLS_first + ZRIVxORD_SHLS_first + ZSLS_autxORD_SHLS_first + ZADMxSLS_autxORD_SHLS_first + ZRIVxSLS_autxORD_SHLS_first, data=dat2a) dat2a_mod_order_SLS_first_supervisor_dem <- data.frame(summary(model_order_SLS_first_supervisor_dem)$coef,confint(model_order_SLS_first_supervisor_dem)) dat2a_mod_order_SLS_first_supervisor_aut <- data.frame(summary(model_order_SLS_first_supervisor_aut)$coef,confint(model_order_SLS_first_supervisor_aut)) dat2a_mod_order_SHLS_first_supervisor_dem <- data.frame(summary(model_order_SHLS_first_supervisor_dem)$coef,confint(model_order_SHLS_first_supervisor_dem)) dat2a_mod_order_SHLS_first_supervisor_aut <- data.frame(summary(model_order_SHLS_first_supervisor_aut)$coef,confint(model_order_SHLS_first_supervisor_aut)) paste0("relation between admiration and attraction to democratic supervisors when supervisor's leadership style was completed first: beta = ", round(dat2a_mod_order_SLS_first_supervisor_dem[2,1], digits= 2), ", 95% CI [", round(dat2a_mod_order_SLS_first_supervisor_dem[2,5], digits = 2), ", ", round(dat2a_mod_order_SLS_first_supervisor_dem[2,6], digits = 2), "], t(144) = ", round(dat2a_mod_order_SLS_first_supervisor_dem[2,3], digits = 2), ", p = ", round(dat2a_mod_order_SLS_first_supervisor_dem[2,4], digits = 3)) paste0("relation between admiration and attraction to autocratic supervisors when supervisor's leadership style was completed first: beta = ", round(dat2a_mod_order_SLS_first_supervisor_aut[2,1], digits= 2), ", 95% CI [", round(dat2a_mod_order_SLS_first_supervisor_aut[2,5], digits = 2), ", ", round(dat2a_mod_order_SLS_first_supervisor_aut[2,6], digits = 2), "], t(144) = ", round(dat2a_mod_order_SLS_first_supervisor_aut[2,3], digits = 2), ", p = ", round(dat2a_mod_order_SLS_first_supervisor_aut[2,4], digits = 3)) paste0("relation between admiration and attraction to democratic supervisors when subordinate's hypothetical leadership style was completed first: beta = ", round(dat2a_mod_order_SHLS_first_supervisor_dem[2,1], digits = 2), ", 95% CI [", round(dat2a_mod_order_SHLS_first_supervisor_dem[2,5], digits = 2), ", ", round(dat2a_mod_order_SHLS_first_supervisor_dem[2,6], digits = 2), "], t(144) = ", round(dat2a_mod_order_SHLS_first_supervisor_dem[2,3], digits = 2), ", p = ", round(dat2a_mod_order_SHLS_first_supervisor_dem[2,4], digits = 3)) paste0("relation between admiration and attraction to autocratic supervisors when subordinate's hypothetical leadership style was completed first: beta = ", round(dat2a_mod_order_SHLS_first_supervisor_aut[2,1], digits = 2), ", 95% CI [", round(dat2a_mod_order_SHLS_first_supervisor_aut[2,5], digits = 2), ", ", round(dat2a_mod_order_SHLS_first_supervisor_aut[2,6], digits = 2), "], t(144) = ", round(dat2a_mod_order_SHLS_first_supervisor_aut[2,3], digits = 2), ", p = ", round(dat2a_mod_order_SHLS_first_supervisor_aut[2,4], digits = 3)) rm(model_order,dat_table_S2.9,format_beta,format_p,format_t,head,tbl,doc,model_order_SLS_first_supervisor_dem,model_order_SLS_first_supervisor_aut,model_order_SHLS_first_supervisor_dem,model_order_SHLS_first_supervisor_aut, dat2a_mod_order_SLS_first_supervisor_dem,dat2a_mod_order_SLS_first_supervisor_aut,dat2a_mod_order_SHLS_first_supervisor_dem,dat2a_mod_order_SHLS_first_supervisor_aut) #The Big Five and Self-Esteem as Covariates ##Internal Consistencies of Covariates ###Study 2a dat2a.agr <- subset(dat2a, select = c(bfi2, bfi7r)) dat2a.cns <- subset(dat2a, select = c(bfi3, bfi8r)) dat2a.ext <- subset(dat2a, select = c(bfi1r, bfi6)) dat2a.neu <- subset(dat2a, select = c(bfi4r, bfi9)) dat2a.opn <- subset(dat2a, select = c(bfi5, bfi10r)) dat2a.selfesteem <- subset(dat2a, select = c(se1, se2, se3r,se4,se5r,se6,se7,se8r,se9r,se10r)) round(psych::alpha(dat2a.agr, na.rm=T)$total[1], 2) round(psych::alpha(dat2a.cns, na.rm=T)$total[1], 2) round(psych::alpha(dat2a.ext, na.rm=T)$total[1], 2) round(psych::alpha(dat2a.neu, na.rm=T)$total[1], 2) round(psych::alpha(dat2a.opn, na.rm=T)$total[1], 2) round(psych::alpha(dat2a.selfesteem, na.rm=T)$total[1], 2) ###Study 2b dat2b.agr <- subset(dat2b, select = c(bfi2, bfi7r, bfi12)) dat2b.cns <- subset(dat2b, select = c(bfi3r, bfi8r, bfi13)) dat2b.ext <- subset(dat2b, select = c(bfi1r, bfi6, bfi11)) dat2b.neu <- subset(dat2b, select = c(bfi4, bfi9, bfi14r)) dat2b.opn <- subset(dat2b, select = c(bfi5, bfi10r, bfi15)) round(psych::alpha(dat2b.agr, na.rm=T)$total[1], 2) round(psych::alpha(dat2b.cns, na.rm=T)$total[1], 2) round(psych::alpha(dat2b.ext, na.rm=T)$total[1], 2) round(psych::alpha(dat2b.neu, na.rm=T)$total[1], 2) round(psych::alpha(dat2b.opn, na.rm=T)$total[1], 2) rm(dat2a.agr,dat2a.cns,dat2a.ext,dat2a.neu,dat2a.opn,dat2a.selfesteem,dat2b.agr, dat2b.cns,dat2b.ext,dat2b.neu,dat2b.opn) ##Table S2.10: Descriptive Statistics and Zero-Order Correlations of the Big Five and Self-Esteem in Studies 2a-2b dat_table_S2.10 <- data.frame(matrix(nrow=11, ncol=5)) dat_table_S2.10[,1] <- c("ADM","RIV","AGR","CNS","EXT","NEU","OPN","SE","SHLS","SLS","Attraction") dat_table_S2.10[,2] <- c(mean(dat2a$narq_adm, na.rm=T),mean(dat2a$narq_riv, na.rm=T),mean(dat2a$agr, na.rm=T),mean(dat2a$cns, na.rm=T),mean(dat2a$ext, na.rm=T),mean(dat2a$neu, na.rm=T),mean(dat2a$opn, na.rm=T),mean(dat2a$selfesteem, na.rm=T),mean(dat2a$style_index_self, na.rm=T),mean(dat2a$style_index_supervisor, na.rm=T),mean(dat2a$attraction, na.rm=T)) dat_table_S2.10[,3] <- c(sd(dat2a$narq_adm, na.rm=T),sd(dat2a$narq_riv, na.rm=T),sd(dat2a$agr, na.rm=T),sd(dat2a$cns, na.rm=T),sd(dat2a$ext, na.rm=T),sd(dat2a$neu, na.rm=T),sd(dat2a$opn, na.rm=T),sd(dat2a$selfesteem, na.rm=T),sd(dat2a$style_index_self, na.rm=T),sd(dat2a$style_index_supervisor, na.rm=T),sd(dat2a$attraction, na.rm=T)) dat_table_S2.10[,4] <- c(mean(dat2b$narq_adm, na.rm=T),mean(dat2b$narq_riv, na.rm=T),mean(dat2b$agr, na.rm=T),mean(dat2b$cns, na.rm=T),mean(dat2b$ext, na.rm=T),mean(dat2b$neu, na.rm=T),mean(dat2b$opn, na.rm=T),mean(dat2b$selfesteem, na.rm=T),mean(dat2b$style_index_self, na.rm=T),mean(dat2b$style_index_supervisor_team, na.rm=T),mean(dat2b$attraction, na.rm=T)) dat_table_S2.10[,5] <- c(sd(dat2b$narq_adm, na.rm=T),sd(dat2b$narq_riv, na.rm=T),sd(dat2b$agr, na.rm=T),sd(dat2b$cns, na.rm=T),sd(dat2b$ext, na.rm=T),sd(dat2b$neu, na.rm=T),sd(dat2b$opn, na.rm=T),sd(dat2b$selfesteem, na.rm=T),sd(dat2b$style_index_self, na.rm=T),sd(dat2b$style_index_supervisor_team, na.rm=T),sd(dat2b$attraction, na.rm=T)) dat2a_1 <- subset(dat2a, select = c(narq_adm,narq_riv,agr,cns,ext,neu,opn,selfesteem,style_index_self,style_index_supervisor,attraction)) cor_dat2a_1 <- corr.test(dat2a_1) dat_cor_2a <- as.data.frame(matrix(unlist(cor_dat2a_1), nrow=1270, ncol = 1, byrow=F), stringsAsFactors=FALSE) dat_cor_2a_r <- as.data.frame(matrix(dat_cor_2a[1:121,], nrow=11)) dat_cor_2a_p <- as.data.frame(matrix(dat_cor_2a[244:364,], nrow=11)) dat2b_1 <- subset(dat2b, select = c(narq_adm,narq_riv,agr,cns,ext,neu,opn,selfesteem,style_index_self,style_index_supervisor_team,attraction)) cor_dat2b_1 <- corr.test(dat2b_1) dat_cor_2b <- as.data.frame(matrix(unlist(cor_dat2b_1), nrow=1270, ncol = 1, byrow=F), stringsAsFactors=FALSE) dat_cor_2b_r <- as.data.frame(matrix(dat_cor_2b[1:121,], nrow=11)) dat_cor_2b_p <- as.data.frame(matrix(dat_cor_2b[244:364,], nrow=11)) dat_cor_r <- cbind(dat_cor_2a_r,dat_cor_2b_r) dat_cor_p <- cbind(dat_cor_2a_p,dat_cor_2b_p) dat_table_S2.10[,2:5] <- sapply(dat_table_S2.10[,2:5], as.numeric) format_msd <- function(x){ formatC(x, format = "f", digits = 2) } dat_table_S2.10[,2:5] <- dat_table_S2.10[,2:5] %>% mutate_if(is.numeric, format_msd) dat_table_S2.10[9,2] <- "0.00" dat_table_S2.10[11,4] <- "0.00" dat_cor_r[,1:22] <- sapply(dat_cor_r[,1:22], as.numeric) format_r <- function(x){ ifelse(abs(x) < 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_cor_r[,1:22] <- dat_cor_r[,1:22] %>% mutate_if(is.numeric, format_r) dat_cor_p[,1:22] <- sapply(dat_cor_p[,1:22], as.numeric) format_p <- function(x){ ifelse(abs(x) < 0.05 & abs(x) >= 0.01, "*", ifelse(abs(x) < 0.01 & abs(x) >= 0.001, "**", ifelse(abs(x) < 0.001, "***", ""))) } dat_cor_p[,1:22] <- dat_cor_p[,1:22] %>% mutate_if(is.numeric, format_p) dat_table_S2.10$r1 <- paste0(dat_cor_r[,1],dat_cor_p[,1]) dat_table_S2.10$r2 <- paste0(dat_cor_r[,2],dat_cor_p[,2]) dat_table_S2.10$r3 <- paste0(dat_cor_r[,3],dat_cor_p[,3]) dat_table_S2.10$r4 <- paste0(dat_cor_r[,4],dat_cor_p[,4]) dat_table_S2.10$r5 <- paste0(dat_cor_r[,5],dat_cor_p[,5]) dat_table_S2.10$r6 <- paste0(dat_cor_r[,6],dat_cor_p[,6]) dat_table_S2.10$r7 <- paste0(dat_cor_r[,7],dat_cor_p[,7]) dat_table_S2.10$r8 <- paste0(dat_cor_r[,8],dat_cor_p[,8]) dat_table_S2.10$r9 <- paste0(dat_cor_r[,9],dat_cor_p[,9]) dat_table_S2.10$r10 <- paste0(dat_cor_r[,10],dat_cor_p[,10]) dat_table_S2.10$r11 <- paste0(dat_cor_r[,11],dat_cor_p[,11]) dat_table_S2.10[1,6] <- NA dat_table_S2.10[1,7] <- paste0(dat_cor_r[2,12],dat_cor_p[2,12]) dat_table_S2.10[1,8] <- paste0(dat_cor_r[3,12],dat_cor_p[3,12]) dat_table_S2.10[1,9] <- paste0(dat_cor_r[4,12],dat_cor_p[4,12]) dat_table_S2.10[1,10] <- paste0(dat_cor_r[5,12],dat_cor_p[5,12]) dat_table_S2.10[1,11] <- paste0(dat_cor_r[6,12],dat_cor_p[6,12]) dat_table_S2.10[1,12] <- paste0(dat_cor_r[7,12],dat_cor_p[7,12]) dat_table_S2.10[1,13] <- paste0(dat_cor_r[8,12],dat_cor_p[8,12]) dat_table_S2.10[1,14] <- paste0(dat_cor_r[9,12],dat_cor_p[9,12]) dat_table_S2.10[1,15] <- paste0(dat_cor_r[10,12],dat_cor_p[10,12]) dat_table_S2.10[1,16] <- paste0(dat_cor_r[11,12],dat_cor_p[11,12]) dat_table_S2.10[2,7] <- NA dat_table_S2.10[2,8] <- paste0(dat_cor_r[3,13],dat_cor_p[3,13]) dat_table_S2.10[2,9] <- paste0(dat_cor_r[4,13],dat_cor_p[4,13]) dat_table_S2.10[2,10] <- paste0(dat_cor_r[5,13],dat_cor_p[5,13]) dat_table_S2.10[2,11] <- paste0(dat_cor_r[6,13],dat_cor_p[6,13]) dat_table_S2.10[2,12] <- paste0(dat_cor_r[7,13],dat_cor_p[7,13]) dat_table_S2.10[2,13] <- paste0(dat_cor_r[8,13],dat_cor_p[8,13]) dat_table_S2.10[2,14] <- paste0(dat_cor_r[9,13],dat_cor_p[9,13]) dat_table_S2.10[2,15] <- paste0(dat_cor_r[10,13],dat_cor_p[10,13]) dat_table_S2.10[2,16] <- paste0(dat_cor_r[11,13],dat_cor_p[11,13]) dat_table_S2.10[3,8] <- NA dat_table_S2.10[3,9] <- paste0(dat_cor_r[4,14],dat_cor_p[4,14]) dat_table_S2.10[3,10] <- paste0(dat_cor_r[5,14],dat_cor_p[5,14]) dat_table_S2.10[3,11] <- paste0(dat_cor_r[6,14],dat_cor_p[6,14]) dat_table_S2.10[3,12] <- paste0(dat_cor_r[7,14],dat_cor_p[7,14]) dat_table_S2.10[3,13] <- paste0(dat_cor_r[8,14],dat_cor_p[8,14]) dat_table_S2.10[3,14] <- paste0(dat_cor_r[9,14],dat_cor_p[9,14]) dat_table_S2.10[3,15] <- paste0(dat_cor_r[10,14],dat_cor_p[10,14]) dat_table_S2.10[3,16] <- paste0(dat_cor_r[11,14],dat_cor_p[11,14]) dat_table_S2.10[4,9] <- NA dat_table_S2.10[4,10] <- paste0(dat_cor_r[5,15],dat_cor_p[5,15]) dat_table_S2.10[4,11] <- paste0(dat_cor_r[6,15],dat_cor_p[6,15]) dat_table_S2.10[4,12] <- paste0(dat_cor_r[7,15],dat_cor_p[7,15]) dat_table_S2.10[4,13] <- paste0(dat_cor_r[8,15],dat_cor_p[8,15]) dat_table_S2.10[4,14] <- paste0(dat_cor_r[9,15],dat_cor_p[9,15]) dat_table_S2.10[4,15] <- paste0(dat_cor_r[10,15],dat_cor_p[10,15]) dat_table_S2.10[4,16] <- paste0(dat_cor_r[11,15],dat_cor_p[11,15]) dat_table_S2.10[5,10] <- NA dat_table_S2.10[5,11] <- paste0(dat_cor_r[6,16],dat_cor_p[6,16]) dat_table_S2.10[5,12] <- paste0(dat_cor_r[7,16],dat_cor_p[7,16]) dat_table_S2.10[5,13] <- paste0(dat_cor_r[8,16],dat_cor_p[8,16]) dat_table_S2.10[5,14] <- paste0(dat_cor_r[9,16],dat_cor_p[9,16]) dat_table_S2.10[5,15] <- paste0(dat_cor_r[10,16],dat_cor_p[10,16]) dat_table_S2.10[5,16] <- paste0(dat_cor_r[11,16],dat_cor_p[11,16]) dat_table_S2.10[6,11] <- NA dat_table_S2.10[6,12] <- paste0(dat_cor_r[7,17],dat_cor_p[7,17]) dat_table_S2.10[6,13] <- paste0(dat_cor_r[8,17],dat_cor_p[8,17]) dat_table_S2.10[6,14] <- paste0(dat_cor_r[9,17],dat_cor_p[9,17]) dat_table_S2.10[6,15] <- paste0(dat_cor_r[10,17],dat_cor_p[10,17]) dat_table_S2.10[6,16] <- paste0(dat_cor_r[11,17],dat_cor_p[11,17]) dat_table_S2.10[7,12] <- NA dat_table_S2.10[7,13] <- paste0(dat_cor_r[8,18],dat_cor_p[8,18]) dat_table_S2.10[7,14] <- paste0(dat_cor_r[9,18],dat_cor_p[9,18]) dat_table_S2.10[7,15] <- paste0(dat_cor_r[10,18],dat_cor_p[10,18]) dat_table_S2.10[7,16] <- paste0(dat_cor_r[11,18],dat_cor_p[11,18]) dat_table_S2.10[8,13] <- NA dat_table_S2.10[8,14] <- paste0(dat_cor_r[9,19],dat_cor_p[9,19]) dat_table_S2.10[8,15] <- paste0(dat_cor_r[10,19],dat_cor_p[10,19]) dat_table_S2.10[8,16] <- paste0(dat_cor_r[11,19],dat_cor_p[11,19]) dat_table_S2.10[9,14] <- NA dat_table_S2.10[9,15] <- paste0(dat_cor_r[10,20],dat_cor_p[10,20]) dat_table_S2.10[9,16] <- paste0(dat_cor_r[11,20],dat_cor_p[11,20]) dat_table_S2.10[10,15] <- NA dat_table_S2.10[10,16] <- paste0(dat_cor_r[11,21],dat_cor_p[11,21]) dat_table_S2.10[11,16] <- NA dat_table_S2.10$blank1 <- NA dat_table_S2.10$blank2 <- NA dat_table_S2.10 <- dat_table_S2.10[,c(1:3,17,4:5,18,6:16)] dat_table_S2.10[6,10] <- ".00" col_keys <- c("X1","X2","X3","blank1","X4","X5","blank2","r1","r2","r3","r4","r5","r6","r7","r8","r9","r10","r11") head1 <- c("","Study 2a","Study 2a","","Study 2b","Study 2b","","","","","","","","","","","","") head2 <- c("Variable","M","SD","","M","SD","","1","2","3","4","5","6","7","8","9","10","11") head <- data.frame(col_keys,head1,head2, stringsAsFactors = FALSE) rm(col_keys,head1,head2) tbl <- flextable(dat_table_S2.10) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:18, border=fp_border(width=2), part="header") tbl <- merge_at(tbl, i=1, j=2:3, part="header") tbl <- merge_at(tbl, i=1, j=5:6, part="header") tbl <- hline(tbl, i=1, j=c(2:3,5:6), border=fp_border(width=1.2), part="header") tbl <- hline(tbl, i=2, j=1:18, border=fp_border(width=1.2), part="header") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j = c("X1"), align="left", part="body") tbl <- italic(tbl, i=2, j=c("X2","X3","X4","X5"), part="header") tbl <- width(tbl, j =~ X1, width=.9) tbl <- width(tbl, j =~ X2 + X3 + X4 + X5, width=.55) tbl <- width(tbl, j =~ blank1 + blank2, width=.05) tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S2.10.docx") rm(dat2a_1,cor_dat2a_1,dat_cor_2a,dat_cor_2a_p,dat_cor_2a_r,dat2b_1,cor_dat2b_1,dat_cor_2b,dat_cor_2b_p,dat_cor_2b_r,dat_cor_p,dat_cor_r, dat_table_S2.10,format_msd,format_p,format_r,head,tbl,doc) ##Table S2.11: Unique Effects of Narcissistic Admiration and Rivalry on Attraction to Supervisor Moderated by Supervisor's Leadership Style and Controlled for the Big Five and Self-Esteem in Studies 2a-2b ###regression model for Study 2a moderation_model2a_cov <- lm(Zattraction ~ Znarq_adm + Znarq_riv + Zagr + Zcns + Zext + Zneu + Zopn + Zse + Zstyle_index_supervisor + ZADMxSLS + ZRIVxSLS + ZAGRxSLS + ZCNSxSLS + ZEXTxSLS + ZNEUxSLS + ZOPNxSLS + ZSExSLS, data=dat2a) dat2a_mod_cov <- data.frame(summary(moderation_model2a_cov)$coef,confint(moderation_model2a_cov)) ###extract coefficients from Mplus-Output for Study 2b setwd(mplus_wd) output <- readModels("Supplement/narq_bfi_se_index_moderation.out", what = "parameters") output_est_ci <- sapply(output, "[", "ci.unstandardized") est_ci <- sapply(output_est_ci, "[", c("paramHeader","param","est","low2.5","up2.5")) output_t_p <- sapply(output, "[", "unstandardized") t_p <- sapply(output_t_p, "[", c("paramHeader","param","est_se","pval")) dat2b_est_ci <- data.frame(matrix(unlist(est_ci), nrow=30, ncol = 5, byrow=F), stringsAsFactors=FALSE) dat2b_t_p <- data.frame(matrix(unlist(t_p), nrow=30, ncol = 4, byrow=F), stringsAsFactors=FALSE) dat2b_mod_cov <- cbind(dat2b_est_ci,dat2b_t_p[,c(3:4)]) dat2b_mod_cov <- dat2b_mod_cov[c(11,13,12,14:19,10,2,9,3:8),] ###create table dat2a_mod_cov$Predictor <- c("(Intercept)","ADM","RIV","AGR","CNS","EXT","NEU","OPN","SE","SLS", "ADM x SLS","RIV x SLS","AGR x SLS","CNS x SLS","EXT x SLS","NEU x SLS","OPN x SLS","SE x SLS") dat2a_mod_cov$blank <- NA dat_table_S2.11 <- cbind(dat2a_mod_cov[,c(7,1,5:6,3:4,8)],dat2b_mod_cov[,c(3:7)]) colnames(dat_table_S2.11) <- c("Predictor","beta","ci_lower1","ci_upper1","t","p1","blank","zPE","ci_lower2","ci_upper2","z","p2") dat_table_S2.11[,2:12] <- sapply(dat_table_S2.11[,2:12], as.numeric) format_beta <- function(x){ ifelse(abs(x) < 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_table_S2.11[,c(2:4,8:10)] <- dat_table_S2.11[,c(2:4,8:10)] %>% mutate_if(is.numeric, format_beta) format_t <- function(x){ formatC(x, format = "f", digits = 2) } dat_table_S2.11[,c(5,11)] <- dat_table_S2.11[,c(5,11)] %>% mutate_if(is.numeric, format_t) format_p <- function(x){ ifelse(abs(x) < 0.001, "< .001", f_num(unlist(x), digits=3)) } dat_table_S2.11[,c(6,12)] <- dat_table_S2.11[,c(6,12)] %>% mutate_if(is.numeric, format_p) dat_table_S2.11$ci1 <- paste0("[", dat_table_S2.11$ci_lower1, ", ", dat_table_S2.11$ci_upper1, "]") dat_table_S2.11$ci2 <- paste0("[", dat_table_S2.11$ci_lower2, ", ", dat_table_S2.11$ci_upper2, "]") dat_table_S2.11 <- dat_table_S2.11[,c("Predictor","beta","ci1","t","p1","blank","zPE","ci2","z","p2")] dat_table_S2.11[1,c(2:5)] <- NA col_keys <- c("Predictor","beta","ci1","t","p1","blank","zPE","ci2","z","p2") head1 <- c("","Study 2a","Study 2a","Study 2a","Study 2a","","Study 2b","Study 2b","Study 2b","Study 2b") head2 <- c("Predictor","\u03B2","95% CI","t","p","","zPE","95% CI","z","p") head <- data.frame(col_keys,head1,head2, stringsAsFactors = FALSE) rm(col_keys,head1,head2) tbl <- flextable(dat_table_S2.11) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:10, border=fp_border(width=2), part="header") tbl <- merge_at(tbl, i=1, j=2:5, part="header") tbl <- merge_at(tbl, i=1, j=7:10, part="header") tbl <- hline(tbl, i=1, j=c(2:5,7:10), border=fp_border(width=1.2), part="header") tbl <- hline(tbl, i=2, j=1:10, border=fp_border(width=1.2), part="header") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j = c("Predictor"), align="left", part="body") tbl <- italic(tbl, i=2, j=c("t","p1","zPE","z","p2"), part="header") tbl <- width(tbl, j =~ Predictor, width=1) tbl <- width(tbl, j =~ beta + zPE, width=.5) tbl <- width(tbl, j =~ ci1 + ci2, width=.95) tbl <- width(tbl, j =~ t + z + p1 + p2, width=.6) tbl <- width(tbl, j =~ blank, width=.3) tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S2.11.docx") rm(moderation_model2a_cov,dat2a_mod_cov,output,output_est_ci,est_ci,output_t_p,t_p,dat2b_est_ci,dat2b_t_p,dat2b_mod_cov,dat_table_S2.11,format_beta,format_p,format_t,head,tbl,doc) ##Table S2.12: Results of the Moderated Mediation Model With Narcissistic Admiration and Rivalry Controlled for the Big Five and Self-Esteem in Studies 2a-2b ###moderated mediation model for Study 2a set.seed(123) #setting the seed for reproducibility mediation_model2a_cov <- ' Zattraction ~ Znarq_adm + c*Znarq_riv + Zagr + Zcns + Zext + Zneu + Zopn + Zse + Zstyle_index_supervisor + b*Zstyle_index_self + ZADMxSLS + h*ZRIVxSLS + ZAGRxSLS + ZCNSxSLS + ZEXTxSLS + ZNEUxSLS + ZOPNxSLS + ZSExSLS + g*ZSHLSxSLS Zstyle_index_self ~ a1*Znarq_adm + a2*Znarq_riv + a3*Zagr + a4*Zcns + a5*Zext + a6*Zneu + a7*Zopn + a8*Zse ##index of moderated mediation index_adm := a1 * g index_riv := a2 * g index_agr := a3 * g index_cns := a4 * g index_ext := a5 * g index_neu := a6 * g index_opn := a7 * g index_se := a8 * g ##conditional effects of RIV indirect_aut := a2*(b-2.404079*g) indirect_dem := a2*(b+1.826888*g) direct_aut := c-2.404079*h direct_dem := c+1.826888*h ## conditional effects of SHLS SHLS_aut := b-2.404079*g SHLS_dem := b+1.826888*g' results_cov <- sem(mediation_model2a_cov, data = dat2a, meanstructure = TRUE, se = "bootstrap", bootstrap = 10000) dat2a_modmed_cov <- data.frame(parameterEstimates(results_cov, ci = TRUE, level = 0.95, boot.ci.type = "bca.simple")) #bias-corrected percentile method dat2a_modmed_cov <- dat2a_modmed_cov[c(20:27,201,1:19),] ###extract coefficients from Mplus-Output for Study 2b setwd(mplus_wd) output <- readModels("Supplement/narq_bfi_se_index_mediation.out", what = "parameters") output_est_ci <- sapply(output, "[", "ci.unstandardized") est_ci <- sapply(output_est_ci, "[", c("paramHeader","param","est","low2.5","up2.5")) output_t_p <- sapply(output, "[", "unstandardized") t_p <- sapply(output_t_p, "[", c("paramHeader","param","est_se","pval")) dat2b_est_ci <- data.frame(matrix(unlist(est_ci), nrow=47, ncol = 5, byrow=F), stringsAsFactors=FALSE) dat2b_t_p <- data.frame(matrix(unlist(t_p), nrow=47, ncol = 4, byrow=F), stringsAsFactors=FALSE) dat2b_modmed_cov <- cbind(dat2b_est_ci,dat2b_t_p[,c(3:4)]) dat2b_modmed_cov <- dat2b_modmed_cov[c(2,1,3:8,22,24,23,26:31,25,21,12,20,13:19),] ###create table dat2a_modmed_cov$Predictor <- c("ADM","RIV","AGR","CNS","EXT","NEU","OPN","SE", "(Intercept)","ADM","RIV","AGR","CNS","EXT","NEU","OPN","SE","SHLS","SLS", "ADM x SLS","RIV x SLS","AGR x SLS","CNS x SLS","EXT x SLS","NEU x SLS","OPN x SLS","SE x SLS","SHLS x SLS") dat2a_modmed_cov$blank <- NA dat_table_S2.12 <- cbind(dat2a_modmed_cov[,c(11,5,9:10,7:8,12)],dat2b_modmed_cov[,c(3:7)]) colnames(dat_table_S2.12) <- c("Predictor","beta","ci_lower1","ci_upper1","z1","p1","blank","zPE","ci_lower2","ci_upper2","z2","p2") dat_table_S2.12[,2:12] <- sapply(dat_table_S2.12[,2:12], as.numeric) format_beta <- function(x){ ifelse(abs(x) < 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_table_S2.12[,c(2:4,8:10)] <- dat_table_S2.12[,c(2:4,8:10)] %>% mutate_if(is.numeric, format_beta) dat_table_S2.12[26,2] <- ".00" format_t <- function(x){ formatC(x, format = "f", digits = 2) } dat_table_S2.12[,c(5,11)] <- dat_table_S2.12[,c(5,11)] %>% mutate_if(is.numeric, format_t) dat_table_S2.12[26,5] <- "0.00" format_p <- function(x){ ifelse(abs(x) < 0.001, "< .001", f_num(unlist(x), digits=3)) } dat_table_S2.12[,c(6,12)] <- dat_table_S2.12[,c(6,12)] %>% mutate_if(is.numeric, format_p) dat_table_S2.12$ci1 <- paste0("[", dat_table_S2.12$ci_lower1, ", ", dat_table_S2.12$ci_upper1, "]") dat_table_S2.12$ci2 <- paste0("[", dat_table_S2.12$ci_lower2, ", ", dat_table_S2.12$ci_upper2, "]") dat_table_S2.12 <- dat_table_S2.12[,c("Predictor","beta","ci1","z1","p1","blank","zPE","ci2","z2","p2")] dat_table_S2.12[9,c(2:5)] <- NA dat_table_S2.12[29,2] <- "Subordinate's Hypothetical Leadership Style" dat_table_S2.12[30,2] <- "Attraction to Supervisor" dat_table_S2.12 <- dat_table_S2.12[c(29,1:8,30,9:28),] col_keys <- c("Predictor","beta","ci1","z1","p1","blank","zPE","ci2","z2","p2") head1 <- c("","Study 2a","Study 2a","Study 2a","Study 2a","","Study 2b","Study 2b","Study 2b","Study 2b") head2 <- c("Predictor","\u03B2","95% CI","z","p","","zPE","95% CI","z","p") head <- data.frame(col_keys,head1,head2, stringsAsFactors = FALSE) rm(col_keys,head1,head2) tbl <- flextable(dat_table_S2.12) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:10, border=fp_border(width=2), part="header") tbl <- merge_at(tbl, i=1, j=2:5, part="header") tbl <- merge_at(tbl, i=1, j=7:10, part="header") tbl <- merge_at(tbl, i=1, j=2:10, part="body") tbl <- merge_at(tbl, i=10, j=2:10, part="body") tbl <- hline(tbl, i=1, j=c(2:5,7:10), border=fp_border(width=1.2), part="header") tbl <- hline(tbl, i=2, j=1:10, border=fp_border(width=1.2), part="header") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j = c("Predictor"), align="left", part="body") tbl <- italic(tbl, i=2, j=c("z1","p1","zPE","z2","p2"), part="header") tbl <- width(tbl, j =~ Predictor, width=1.1) tbl <- width(tbl, j =~ beta + zPE, width=.5) tbl <- width(tbl, j =~ ci1 + ci2, width=.95) tbl <- width(tbl, j =~ z1 + z2 + p1 + p2, width=.6) tbl <- width(tbl, j =~ blank, width=.3) tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S2.12.docx") rm(mediation_model2a_cov,results_cov,dat2a_modmed_cov,output,output_est_ci,est_ci,output_t_p,t_p,dat2b_est_ci,dat2b_t_p,dat2b_modmed_cov,dat_table_S2.12,format_beta,format_t,format_p,head,tbl,doc) #NARQ Total Score ##Internal Consistency and Descriptive Statistics of the NARQ Total Score ###Study 2a dat2a.narq <- subset(dat2a, select = c(70:87)) round(psych::alpha(dat2a.narq, na.rm=T)$total[1], digits = 2) round(mean(dat2a$narq),2) round(sd(dat2a$narq),2) rm(dat2a.narq) ###Study 2b dat2b.narq <- subset(dat2b, select = c(41:58)) round(psych::alpha(dat2b.narq, na.rm=T)$total[1], digits = 2) round(mean(dat2b$narq),2) round(sd(dat2b$narq),2) rm(dat2b.narq) ##Tables S2.13 and S2.14: Effect of the NARQ Total Score on Attraction to Supervisor Moderated by Supervisor's Leadership Style Separately for Each Leadership Measure in Studies 2a-2b ###regression models for Study 2a moderation_model2a <- lm(Zattraction ~ Znarq + Zstyle_index_supervisor + ZNARQxSLS, data=dat2a) moderation_model2a_descriptions <- lm(Zattraction ~ Znarq + Zdescriptions_supervisor + ZNARQxSLS_descriptions, data=dat2a) moderation_model2a_lbdq <- lm(Zattraction ~ Znarq + Zlbdq_supervisor + ZNARQxSLS_lbdq, data=dat2a) dat2a_mod <- rbind(data.frame(summary(moderation_model2a)$coef,confint(moderation_model2a)),data.frame(summary(moderation_model2a_descriptions)$coef,confint(moderation_model2a_descriptions)),data.frame(summary(moderation_model2a_lbdq)$coef,confint(moderation_model2a_lbdq))) ###simple slope analysis for Study 2a dat2a$Zstyle_index_supervisor_dem <- dat2a$Zstyle_index_supervisor - abs(max(dat2a$Zstyle_index_supervisor)) dat2a$Zstyle_index_supervisor_aut <- dat2a$Zstyle_index_supervisor + abs(min(dat2a$Zstyle_index_supervisor)) dat2a$Zdescriptions_supervisor_dem <- dat2a$Zdescriptions_supervisor - abs(max(dat2a$Zdescriptions_supervisor)) dat2a$Zdescriptions_supervisor_aut <- dat2a$Zdescriptions_supervisor + abs(min(dat2a$Zdescriptions_supervisor)) dat2a$Zlbdq_supervisor_dem <- dat2a$Zlbdq_supervisor - abs(max(dat2a$Zlbdq_supervisor)) dat2a$Zlbdq_supervisor_aut <- dat2a$Zlbdq_supervisor + abs(min(dat2a$Zlbdq_supervisor)) dat2a$ZNARQxSLS_index_dem <- scale(dat2a$Znarq*dat2a$Zstyle_index_supervisor_dem) dat2a$ZNARQxSLS_index_aut <- scale(dat2a$Znarq*dat2a$Zstyle_index_supervisor_aut) dat2a$ZNARQxSLS_descriptions_dem <- scale(dat2a$Znarq*dat2a$Zdescriptions_supervisor_dem) dat2a$ZNARQxSLS_descriptions_aut <- scale(dat2a$Znarq*dat2a$Zdescriptions_supervisor_aut) dat2a$ZNARQxSLS_lbdq_dem <- scale(dat2a$Znarq*dat2a$Zlbdq_supervisor_dem) dat2a$ZNARQxSLS_lbdq_aut <- scale(dat2a$Znarq*dat2a$Zlbdq_supervisor_aut) model_dem <- lm(Zattraction ~ Znarq + Zstyle_index_supervisor_dem + ZNARQxSLS_index_dem, data=dat2a) model_aut <- lm(Zattraction ~ Znarq + Zstyle_index_supervisor_aut + ZNARQxSLS_index_aut, data=dat2a) dat2a_mod_dem <- data.frame(summary(model_dem)$coef,confint(model_dem)) dat2a_mod_aut <- data.frame(summary(model_aut)$coef,confint(model_aut)) model_dem_descriptions <- lm(Zattraction ~ Znarq + Zdescriptions_supervisor_dem + ZNARQxSLS_descriptions_dem, data=dat2a) model_aut_descriptions <- lm(Zattraction ~ Znarq + Zdescriptions_supervisor_aut + ZNARQxSLS_descriptions_aut, data=dat2a) dat2a_mod_dem_descriptions <- data.frame(summary(model_dem_descriptions)$coef,confint(model_dem_descriptions)) dat2a_mod_aut_descriptions <- data.frame(summary(model_aut_descriptions)$coef,confint(model_aut_descriptions)) model_dem_lbdq <- lm(Zattraction ~ Znarq + Zlbdq_supervisor_dem + ZNARQxSLS_lbdq_dem, data=dat2a) model_aut_lbdq <- lm(Zattraction ~ Znarq + Zlbdq_supervisor_aut + ZNARQxSLS_lbdq_aut, data=dat2a) dat2a_mod_dem_lbdq <- data.frame(summary(model_dem_lbdq)$coef,confint(model_dem_lbdq)) dat2a_mod_aut_lbdq <- data.frame(summary(model_aut_lbdq)$coef,confint(model_aut_lbdq)) dat2a_mod_simpleslopes <- rbind(dat2a_mod_dem[2,c(1,5:6,3:4)],dat2a_mod_aut[2,c(1,5:6,3:4)],dat2a_mod_dem_descriptions[2,c(1,5:6,3:4)],dat2a_mod_aut_descriptions[2,c(1,5:6,3:4)],dat2a_mod_dem_lbdq[2,c(1,5:6,3:4)],dat2a_mod_aut_lbdq[2,c(1,5:6,3:4)]) ###extract coefficients from Mplus-Outputs for Study 2b setwd(mplus_wd) output1 <- readModels("Supplement/narq_total_index_moderation.out", what = "parameters") output1_est_ci <- sapply(output1, "[", "ci.unstandardized") est_ci1 <- sapply(output1_est_ci, "[", c("paramHeader","param","est","low2.5","up2.5")) output1_t_p <- sapply(output1, "[", "unstandardized") t_p1 <- sapply(output1_t_p, "[", c("paramHeader","param","est_se","pval")) dat2b_est_ci1 <- data.frame(matrix(unlist(est_ci1), nrow=10, ncol = 5, byrow=F), stringsAsFactors=FALSE) dat2b_t_p1 <- data.frame(matrix(unlist(t_p1), nrow=10, ncol = 4, byrow=F), stringsAsFactors=FALSE) output2 <- readModels("Supplement/narq_total_descriptions_moderation.out", what = "parameters") output2_est_ci <- sapply(output2, "[", "ci.unstandardized") est_ci2 <- sapply(output2_est_ci, "[", c("paramHeader","param","est","low2.5","up2.5")) output2_t_p <- sapply(output2, "[", "unstandardized") t_p2 <- sapply(output2_t_p, "[", c("paramHeader","param","est_se","pval")) dat2b_est_ci2 <- data.frame(matrix(unlist(est_ci2), nrow=10, ncol = 5, byrow=F), stringsAsFactors=FALSE) dat2b_t_p2 <- data.frame(matrix(unlist(t_p2), nrow=10, ncol = 4, byrow=F), stringsAsFactors=FALSE) output3 <- readModels("Supplement/narq_total_lbdq_moderation.out", what = "parameters") output3_est_ci <- sapply(output3, "[", "ci.unstandardized") est_ci3 <- sapply(output3_est_ci, "[", c("paramHeader","param","est","low2.5","up2.5")) output3_t_p <- sapply(output3, "[", "unstandardized") t_p3 <- sapply(output3_t_p, "[", c("paramHeader","param","est_se","pval")) dat2b_est_ci3 <- data.frame(matrix(unlist(est_ci3), nrow=10, ncol = 5, byrow=F), stringsAsFactors=FALSE) dat2b_t_p3 <- data.frame(matrix(unlist(t_p3), nrow=10, ncol = 4, byrow=F), stringsAsFactors=FALSE) output4 <- readModels("Supplement/narq_total_bipolar_moderation.out", what = "parameters") output4_est_ci <- sapply(output4, "[", "ci.unstandardized") est_ci4 <- sapply(output4_est_ci, "[", c("paramHeader","param","est","low2.5","up2.5")) output4_t_p <- sapply(output4, "[", "unstandardized") t_p4 <- sapply(output4_t_p, "[", c("paramHeader","param","est_se","pval")) dat2b_est_ci4 <- data.frame(matrix(unlist(est_ci4), nrow=10, ncol = 5, byrow=F), stringsAsFactors=FALSE) dat2b_t_p4 <- data.frame(matrix(unlist(t_p4), nrow=10, ncol = 4, byrow=F), stringsAsFactors=FALSE) dat2b_mod1 <- cbind(dat2b_est_ci1,dat2b_t_p1[,c(3:4)]) dat2b_mod2 <- cbind(dat2b_est_ci2,dat2b_t_p2[,c(3:4)]) dat2b_mod3 <- cbind(dat2b_est_ci3,dat2b_t_p3[,c(3:4)]) dat2b_mod4 <- cbind(dat2b_est_ci4,dat2b_t_p4[,c(3:4)]) dat2b_mod_simpleslopes <- rbind(dat2b_mod1[c(9:10),],dat2b_mod2[c(9:10),],dat2b_mod3[c(9:10),],dat2b_mod4[c(9:10),]) dat2b_mod <- rbind(dat2b_mod1[c(5,6,3,2),],dat2b_mod2[c(5,6,3,2),],dat2b_mod3[c(5,6,3,2),],dat2b_mod4[c(5,6,3,2),]) ###create Table S2.13: Results dat2a_mod[nrow(dat2a_mod)+4,] <- NA dat2a_mod$Predictor <- c("(Intercept)","NARQ","SLS","NARQ x SLS","(Intercept)","NARQ","SLS","NARQ x SLS","(Intercept)","NARQ","SLS","NARQ x SLS","(Intercept)","NARQ","SLS","NARQ x SLS") dat2a_mod$blank <- NA dat_table_S2.13 <- cbind(dat2a_mod[,c(7,1,5:6,3:4,8)],dat2b_mod[,c(3:7)]) colnames(dat_table_S2.13) <- c("Predictor","beta","ci_lower1","ci_upper1","t","p1","blank","zPE","ci_lower2","ci_upper2","z","p2") dat_table_S2.13[,2:12] <- sapply(dat_table_S2.13[,2:12], as.numeric) format_beta <- function(x){ ifelse(abs(x) < 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_table_S2.13[,c(2:4,8:10)] <- dat_table_S2.13[,c(2:4,8:10)] %>% mutate_if(is.numeric, format_beta) format_t <- function(x){ formatC(x, format = "f", digits = 2) } dat_table_S2.13[,c(5,11)] <- dat_table_S2.13[,c(5,11)] %>% mutate_if(is.numeric, format_t) format_p <- function(x){ ifelse(abs(x) < 0.001, "< .001", f_num(unlist(x), digits=3)) } dat_table_S2.13[,c(6,12)] <- dat_table_S2.13[,c(6,12)] %>% mutate_if(is.numeric, format_p) dat_table_S2.13$ci1 <- paste0("[", dat_table_S2.13$ci_lower1, ", ", dat_table_S2.13$ci_upper1, "]") dat_table_S2.13$ci2 <- paste0("[", dat_table_S2.13$ci_lower2, ", ", dat_table_S2.13$ci_upper2, "]") dat_table_S2.13 <- dat_table_S2.13[,c("Predictor","beta","ci1","t","p1","blank","zPE","ci2","z","p2")] dat_table_S2.13[c(1,5,9,13:16),c(2:5)] <- NA dat_table_S2.13[17,2] <- "SLS Based on Index of Leadership Style" dat_table_S2.13[18,2] <- "SLS Based on Leadership Descriptions" dat_table_S2.13[19,2] <- "SLS Based on Leadership Behaviors" dat_table_S2.13[20,2] <- "SLS Based on Bipolar Leadership Measure" dat_table_S2.13 <- dat_table_S2.13[c(17,1:4,18,5:8,19,9:12,20,13:16),] col_keys <- c("Predictor","beta","ci1","t","p1","blank","zPE","ci2","z","p2") head1 <- c("","Study 2a","Study 2a","Study 2a","Study 2a","","Study 2b","Study 2b","Study 2b","Study 2b") head2 <- c("Predictor","\u03B2","95% CI","t","p","","zPE","95% CI","z","p") head <- data.frame(col_keys,head1,head2, stringsAsFactors = FALSE) rm(col_keys,head1,head2) tbl <- flextable(dat_table_S2.13) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:10, border=fp_border(width=2), part="header") tbl <- merge_at(tbl, i=1, j=2:5, part="header") tbl <- merge_at(tbl, i=1, j=7:10, part="header") tbl <- hline(tbl, i=1, j=c(2:5,7:10), border=fp_border(width=1.2), part="header") tbl <- hline(tbl, i=2, j=1:10, border=fp_border(width=1.2), part="header") tbl <- merge_at(tbl, i=1, j=2:10, part="body") tbl <- merge_at(tbl, i=6, j=2:10, part="body") tbl <- merge_at(tbl, i=11, j=2:10, part="body") tbl <- merge_at(tbl, i=16, j=2:10, part="body") tbl <- hline(tbl, i=c(5,10,15), j=1:10, border=fp_border(width=1.2), part="body") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j = c("Predictor"), align="left", part="body") tbl <- italic(tbl, i=2, j=c("t","p1","zPE","z","p2"), part="header") tbl <- width(tbl, j =~ Predictor, width=1.1) tbl <- width(tbl, j =~ beta + zPE, width=.45) tbl <- width(tbl, j =~ ci1 + ci2, width=.95) tbl <- width(tbl, j =~ t + z + p1 + p2, width=.6) tbl <- width(tbl, j =~ blank, width=.3) tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S2.13.docx") ###create Table S2.14: Conditional Total Effects of the NARQ Total Score on Attraction to Supervisor for Democratic and Autocratic Supervisors Separately for Each Leadership Measure dat2a_mod_simpleslopes[nrow(dat2a_mod_simpleslopes)+2,] <- NA dat2a_mod_simpleslopes$SLS <- c("Democratic","Autocratic","Democratic","Autocratic","Democratic","Autocratic","Democratic","Autocratic") dat2a_mod_simpleslopes$blank <- NA dat_table_S2.14 <- cbind(dat2a_mod_simpleslopes[,c(6,1:5,7)],dat2b_mod_simpleslopes[c(2,1,4,3,6,5,8,7),c(3:7)]) colnames(dat_table_S2.14) <- c("SLS","beta","ci_lower1","ci_upper1","t","p1","blank","zPE","ci_lower2","ci_upper2","z","p2") dat_table_S2.14[,2:12] <- sapply(dat_table_S2.14[,2:12], as.numeric) format_beta <- function(x){ ifelse(abs(x) < 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_table_S2.14[,c(2:4,8:10)] <- dat_table_S2.14[,c(2:4,8:10)] %>% mutate_if(is.numeric, format_beta) format_t <- function(x){ formatC(x, format = "f", digits = 2) } dat_table_S2.14[,c(5,11)] <- dat_table_S2.14[,c(5,11)] %>% mutate_if(is.numeric, format_t) format_p <- function(x){ ifelse(abs(x) < 0.001, "< .001", f_num(unlist(x), digits=3)) } dat_table_S2.14[,c(6,12)] <- dat_table_S2.14[,c(6,12)] %>% mutate_if(is.numeric, format_p) dat_table_S2.14$ci1 <- paste0("[", dat_table_S2.14$ci_lower1, ", ", dat_table_S2.14$ci_upper1, "]") dat_table_S2.14$ci2 <- paste0("[", dat_table_S2.14$ci_lower2, ", ", dat_table_S2.14$ci_upper2, "]") dat_table_S2.14 <- dat_table_S2.14[,c("SLS","beta","ci1","t","p1","blank","zPE","ci2","z","p2")] dat_table_S2.14[c(7:8),c(2:5)] <- NA dat_table_S2.14[9,2] <- "SLS Based on Index of Leadership Style" dat_table_S2.14[10,2] <- "SLS Based on Leadership Descriptions" dat_table_S2.14[11,2] <- "SLS Based on Leadership Behaviors" dat_table_S2.14[12,2] <- "SLS Based on Bipolar Leadership Measure" dat_table_S2.14 <- dat_table_S2.14[c(9,1:2,10,3:4,11,5:6,12,7:8),] col_keys <- c("SLS","beta","ci1","t","p1","blank","zPE","ci2","z","p2") head1 <- c("","Study 2a","Study 2a","Study 2a","Study 2a","","Study 2b","Study 2b","Study 2b","Study 2b") head2 <- c("SLS","\u03B2","95% CI","t","p","","zPE","95% CI","z","p") head <- data.frame(col_keys,head1,head2, stringsAsFactors = FALSE) rm(col_keys,head1,head2) tbl <- flextable(dat_table_S2.14) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:10, border=fp_border(width=2), part="header") tbl <- merge_at(tbl, i=1, j=2:5, part="header") tbl <- merge_at(tbl, i=1, j=7:10, part="header") tbl <- hline(tbl, i=1, j=c(2:5,7:10), border=fp_border(width=1.2), part="header") tbl <- hline(tbl, i=2, j=1:10, border=fp_border(width=1.2), part="header") tbl <- merge_at(tbl, i=1, j=2:10, part="body") tbl <- merge_at(tbl, i=4, j=2:10, part="body") tbl <- merge_at(tbl, i=7, j=2:10, part="body") tbl <- merge_at(tbl, i=10, j=2:10, part="body") tbl <- hline(tbl, i=c(3,6,9), j=1:10, border=fp_border(width=1.2), part="body") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j = c("SLS"), align="left", part="body") tbl <- italic(tbl, i=2, j=c("t","p1","zPE","z","p2"), part="header") tbl <- width(tbl, j =~ SLS, width=1) tbl <- width(tbl, j =~ beta + zPE, width=.5) tbl <- width(tbl, j =~ ci1 + ci2, width=1) tbl <- width(tbl, j =~ t + z + p1 + p2, width=.6) tbl <- width(tbl, j =~ blank, width=.3) tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S2.14.docx") rm(moderation_model2a,moderation_model2a_descriptions,moderation_model2a_lbdq,dat2a_mod,model_dem,model_aut,dat2a_mod_dem,dat2a_mod_aut,model_dem_descriptions,model_aut_descriptions,dat2a_mod_dem_descriptions,dat2a_mod_aut_descriptions, model_dem_lbdq,model_aut_lbdq,dat2a_mod_dem_lbdq,dat2a_mod_aut_lbdq,dat2a_mod_simpleslopes,output1,output1_est_ci,est_ci1,output1_t_p,t_p1,dat2b_est_ci1,dat2b_t_p1,output2,output2_est_ci,est_ci2,output2_t_p,t_p2,dat2b_est_ci2,dat2b_t_p2, output3,output3_est_ci,est_ci3,output3_t_p,t_p3,dat2b_est_ci3,dat2b_t_p3,output4,output4_est_ci,est_ci4,output4_t_p,t_p4,dat2b_est_ci4,dat2b_t_p4,dat2b_mod1,dat2b_mod2,dat2b_mod3,dat2b_mod4,dat2b_mod,dat2b_mod_simpleslopes, dat_table_S2.13,dat_table_S2.14,format_beta,format_p,format_t,head,tbl,doc) ##Tables S2.15 and S2.16: Moderated Mediation Model With NARQ Total Score Separately for Each Leadership Measure in Studies 2a-2b ###moderated mediation models for Study 2a set.seed(123) #setting the seed for reproducibility mediation_model2a <- ' Zattraction ~ c*Znarq + Zstyle_index_supervisor + b*Zstyle_index_self + h*ZNARQxSLS + g*ZSHLSxSLS Zstyle_index_self ~ a*Znarq ## index of moderated mediaion index_narq := a * g ## conditional effects of narq indirect_aut := a*(b-2.404079*g) indirect_dem := a*(b+1.826888*g) direct_aut := c-2.404079*h direct_dem := c+1.826888*h ## conditional effects of SHLS SHLS_aut := b-2.404079*g SHLS_dem := b+1.826888*g' results1 <- sem(mediation_model2a, data = dat2a, meanstructure = TRUE, se = "bootstrap", bootstrap = 10000) dat2a_modmed <- data.frame(parameterEstimates(results1, ci = TRUE, level = 0.95, boot.ci.type = "bca.simple")) #bias-corrected percentile method set.seed(123) #setting the seed for reproducibility mediation_model2a_descriptions <- ' Zattraction ~ c*Znarq + Zdescriptions_supervisor + b*Zdescriptions_self + h*ZNARQxSLS_descriptions + g*ZSHLSxSLS_descriptions Zdescriptions_self ~ a*Znarq ## index of moderated mediaion index_narq := a * g ## conditional effects of narq indirect_aut := a*(b-1.85317*g) indirect_dem := a*(b+1.435109*g) direct_aut := c-1.85317*h direct_dem := c+1.435109*h ## conditional effects of SHLS SHLS_aut := b-1.85317*g SHLS_dem := b+1.435109*g' results2 <- sem(mediation_model2a_descriptions, data = dat2a, meanstructure = TRUE, se = "bootstrap", bootstrap = 10000) dat2a_modmed_descriptions <- data.frame(parameterEstimates(results2, ci = TRUE, level = 0.95, boot.ci.type = "bca.simple")) #bias-corrected percentile method set.seed(123) #setting the seed for reproducibility mediation_model2a_lbdq <- ' Zattraction ~ c*Znarq + Zlbdq_supervisor + b*Zlbdq_self + h*ZNARQxSLS_lbdq + g*ZSHLSxSLS_lbdq Zlbdq_self ~ a*Znarq ## index of moderated mediaion index_narq := a * g ## conditional effects of narq indirect_aut := a*(b-2.721009*g) indirect_dem := a*(b+2.040864*g) direct_aut := c-2.721009*h direct_dem := c+2.040864*h ## conditional effects of SHLS SHLS_aut := b-2.721009*g SHLS_dem := b+2.040864*g' results3 <- sem(mediation_model2a_lbdq, data = dat2a, meanstructure = TRUE, se = "bootstrap", bootstrap = 10000) dat2a_modmed_lbdq <- data.frame(parameterEstimates(results3, ci = TRUE, level = 0.95, boot.ci.type = "bca.simple")) #bias-corrected percentile method dat2a_modmed_index_simpleslopes <- rbind(dat2a_modmed[c(25:31),],dat2a_modmed_descriptions[c(25:31),],dat2a_modmed_lbdq[c(25:31),]) dat2a_modmed <- rbind(dat2a_modmed[c(6,19,1,3,2,4:5),],dat2a_modmed_descriptions[c(6,19,1,3,2,4:5),],dat2a_modmed_lbdq[c(6,19,1,3,2,4:5),]) ###extract coefficients from Mplus-Outputs for Study 2b setwd(mplus_wd) output1 <- readModels("Supplement/narq_total_index_mediation.out", what = "parameters") output1_est_ci <- sapply(output1, "[", "ci.unstandardized") est_ci1 <- sapply(output1_est_ci, "[", c("paramHeader","param","est","low2.5","up2.5")) output1_t_p <- sapply(output1, "[", "unstandardized") t_p1 <- sapply(output1_t_p, "[", c("paramHeader","param","est_se","pval")) dat2b_est_ci1 <- data.frame(matrix(unlist(est_ci1), nrow=21, ncol = 5, byrow=F), stringsAsFactors=FALSE) dat2b_t_p1 <- data.frame(matrix(unlist(t_p1), nrow=21, ncol = 4, byrow=F), stringsAsFactors=FALSE) output2 <- readModels("Supplement/narq_total_descriptions_mediation.out", what = "parameters") output2_est_ci <- sapply(output2, "[", "ci.unstandardized") est_ci2 <- sapply(output2_est_ci, "[", c("paramHeader","param","est","low2.5","up2.5")) output2_t_p <- sapply(output2, "[", "unstandardized") t_p2 <- sapply(output2_t_p, "[", c("paramHeader","param","est_se","pval")) dat2b_est_ci2 <- data.frame(matrix(unlist(est_ci2), nrow=21, ncol = 5, byrow=F), stringsAsFactors=FALSE) dat2b_t_p2 <- data.frame(matrix(unlist(t_p2), nrow=21, ncol = 4, byrow=F), stringsAsFactors=FALSE) output3 <- readModels("Supplement/narq_total_lbdq_mediation.out", what = "parameters") output3_est_ci <- sapply(output3, "[", "ci.unstandardized") est_ci3 <- sapply(output3_est_ci, "[", c("paramHeader","param","est","low2.5","up2.5")) output3_t_p <- sapply(output3, "[", "unstandardized") t_p3 <- sapply(output3_t_p, "[", c("paramHeader","param","est_se","pval")) dat2b_est_ci3 <- data.frame(matrix(unlist(est_ci3), nrow=21, ncol = 5, byrow=F), stringsAsFactors=FALSE) dat2b_t_p3 <- data.frame(matrix(unlist(t_p3), nrow=21, ncol = 4, byrow=F), stringsAsFactors=FALSE) output4 <- readModels("Supplement/narq_total_bipolar_mediation.out", what = "parameters") output4_est_ci <- sapply(output4, "[", "ci.unstandardized") est_ci4 <- sapply(output4_est_ci, "[", c("paramHeader","param","est","low2.5","up2.5")) output4_t_p <- sapply(output4, "[", "unstandardized") t_p4 <- sapply(output4_t_p, "[", c("paramHeader","param","est_se","pval")) dat2b_est_ci4 <- data.frame(matrix(unlist(est_ci4), nrow=21, ncol = 5, byrow=F), stringsAsFactors=FALSE) dat2b_t_p4 <- data.frame(matrix(unlist(t_p4), nrow=21, ncol = 4, byrow=F), stringsAsFactors=FALSE) dat2b_mod1 <- cbind(dat2b_est_ci1,dat2b_t_p1[,c(3:4)]) dat2b_mod2 <- cbind(dat2b_est_ci2,dat2b_t_p2[,c(3:4)]) dat2b_mod3 <- cbind(dat2b_est_ci3,dat2b_t_p3[,c(3:4)]) dat2b_mod4 <- cbind(dat2b_est_ci4,dat2b_t_p4[,c(3:4)]) dat2b_modmed_simpleslopes <- rbind(dat2b_mod1[c(15:21),],dat2b_mod2[c(15:21),],dat2b_mod3[c(15:21),],dat2b_mod4[c(15:21),]) dat2b_modmed <- rbind(dat2b_mod1[c(1,9:11,7,6,5),],dat2b_mod2[c(1,9:11,7,6,5),],dat2b_mod3[c(1,9:11,7,6,5),],dat2b_mod4[c(1,9:11,7,6,5),]) ###create Table S2.15: Results dat2a_modmed[nrow(dat2a_modmed)+7,] <- NA dat2a_modmed$Predictor <- c("NARQ","(Intercept)","NARQ","SHLS","SLS","NARQ x SLS","SHLS x SLS","NARQ","(Intercept)","NARQ","SHLS","SLS","NARQ x SLS","SHLS x SLS","NARQ","(Intercept)","NARQ","SHLS","SLS","NARQ x SLS","SHLS x SLS","NARQ","(Intercept)","NARQ","SHLS","SLS","NARQ x SLS","SHLS x SLS") dat2a_modmed$blank <- NA dat_table_S2.15 <- cbind(dat2a_modmed[,c(11,5,9:10,7:8,12)],dat2b_modmed[,c(3:7)]) colnames(dat_table_S2.15) <- c("Predictor","beta","ci_lower1","ci_upper1","z1","p1","blank","zPE","ci_lower2","ci_upper2","z2","p2") dat_table_S2.15[,2:12] <- sapply(dat_table_S2.15[,2:12], as.numeric) format_beta <- function(x){ ifelse(abs(x) < 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_table_S2.15[,c(2:4,8:10)] <- dat_table_S2.15[,c(2:4,8:10)] %>% mutate_if(is.numeric, format_beta) format_t <- function(x){ formatC(x, format = "f", digits = 2) } dat_table_S2.15[,c(5,11)] <- dat_table_S2.15[,c(5,11)] %>% mutate_if(is.numeric, format_t) format_p <- function(x){ ifelse(abs(x) < 0.001, "< .001", f_num(unlist(x), digits=3)) } dat_table_S2.15[,c(6,12)] <- dat_table_S2.15[,c(6,12)] %>% mutate_if(is.numeric, format_p) dat_table_S2.15$ci1 <- paste0("[", dat_table_S2.15$ci_lower1, ", ", dat_table_S2.15$ci_upper1, "]") dat_table_S2.15$ci2 <- paste0("[", dat_table_S2.15$ci_lower2, ", ", dat_table_S2.15$ci_upper2, "]") dat_table_S2.15 <- dat_table_S2.15[,c("Predictor","beta","ci1","z1","p1","blank","zPE","ci2","z2","p2")] dat_table_S2.15[c(2,9,16,22:28),c(2:5)] <- NA dat_table_S2.15[29,2] <- "SLS and SHLS Based on Index of Leadership Style" dat_table_S2.15[30,2] <- "Outcome: SHLS" dat_table_S2.15[31,2] <- "Outcome: Attraction to Supervisor" dat_table_S2.15[32,2] <- "SLS and SHLS Based on Leadership Descriptions" dat_table_S2.15[33,2] <- "Outcome: SHLS" dat_table_S2.15[34,2] <- "Outcome: Attraction to Supervisor" dat_table_S2.15[35,2] <- "SLS and SHLS Based on Leadership Behaviors" dat_table_S2.15[36,2] <- "Outcome: SHLS" dat_table_S2.15[37,2] <- "Outcome: Attraction to Supervisor" dat_table_S2.15[38,2] <- "SLS and SHLS Based on Bipolar Leadership Measure" dat_table_S2.15[39,2] <- "Outcome: SHLS" dat_table_S2.15[40,2] <- "Outcome: Attraction to Supervisor" dat_table_S2.15 <- dat_table_S2.15[c(29:30,1,31,2:7,32:33,8,34,9:14,35:36,15,37,16:21,38:39,22,40,23:28),] col_keys <- c("Predictor","beta","ci1","z1","p1","blank","zPE","ci2","z2","p2") head1 <- c("","Study 2a","Study 2a","Study 2a","Study 2a","","Study 2b","Study 2b","Study 2b","Study 2b") head2 <- c("Predictor","\u03B2","95% CI","z","p","","zPE","95% CI","z","p") head <- data.frame(col_keys,head1,head2, stringsAsFactors = FALSE) rm(col_keys,head1,head2) tbl <- flextable(dat_table_S2.15) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:10, border=fp_border(width=2), part="header") tbl <- merge_at(tbl, i=1, j=2:5, part="header") tbl <- merge_at(tbl, i=1, j=7:10, part="header") tbl <- merge_at(tbl, i=1, j=2:10, part="body") tbl <- merge_at(tbl, i=2, j=2:10, part="body") tbl <- merge_at(tbl, i=4, j=2:10, part="body") tbl <- merge_at(tbl, i=11, j=2:10, part="body") tbl <- merge_at(tbl, i=12, j=2:10, part="body") tbl <- merge_at(tbl, i=14, j=2:10, part="body") tbl <- merge_at(tbl, i=21, j=2:10, part="body") tbl <- merge_at(tbl, i=22, j=2:10, part="body") tbl <- merge_at(tbl, i=24, j=2:10, part="body") tbl <- merge_at(tbl, i=31, j=2:10, part="body") tbl <- merge_at(tbl, i=32, j=2:10, part="body") tbl <- merge_at(tbl, i=34, j=2:10, part="body") tbl <- hline(tbl, i=1, j=c(2:5,7:10), border=fp_border(width=1.2), part="header") tbl <- hline(tbl, i=2, j=1:10, border=fp_border(width=1.2), part="header") tbl <- hline(tbl, i=c(10,20,30), j=1:10, border=fp_border(width=1.2), part="body") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j = c("Predictor"), align="left", part="body") tbl <- italic(tbl, i=2, j=c("z1","p1","zPE","z2","p2"), part="header") tbl <- width(tbl, j =~ Predictor, width=1.1) tbl <- width(tbl, j =~ beta + zPE, width=.5) tbl <- width(tbl, j =~ ci1 + ci2, width=.95) tbl <- width(tbl, j =~ z1 + z2 + p1 + p2, width=.6) tbl <- width(tbl, j =~ blank, width=.3) tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S2.15.docx") ###create Table S2.16: Index of Moderated Mediation, Conditional Indirect Effects, and Conditional Direct Effects dat2a_modmed_index_simpleslopes[nrow(dat2a_modmed_index_simpleslopes)+7,] <- NA dat2a_modmed_index_simpleslopes <- dat2a_modmed_index_simpleslopes[c(7,6,1,3,2,5,4,14,13,8,10,9,12,11,21,20,15,17,16,19,18,28,27,22,24,23,26,25),] dat2a_modmed_index_simpleslopes$Effect <- c(" Democratic"," Autocratic"," NARQ"," Democratic"," Autocratic"," Democratic"," Autocratic"," Democratic"," Autocratic"," NARQ"," Democratic"," Autocratic"," Democratic"," Autocratic"," Democratic"," Autocratic"," NARQ"," Democratic"," Autocratic"," Democratic"," Autocratic"," Democratic"," Autocratic"," NARQ"," Democratic"," Autocratic"," Democratic"," Autocratic") dat2a_modmed_index_simpleslopes$blank <- NA dat_table_S2.16 <- cbind(dat2a_modmed_index_simpleslopes[,c(11,5,9:10,7:8,12)],dat2b_modmed_simpleslopes[c(7,6,1,3,2,5,4,14,13,8,10,9,12,11,21,20,15,17,16,19,18,28,27,22,24,23,26,25),c(3:7)]) colnames(dat_table_S2.16) <- c("Effect","beta","ci_lower1","ci_upper1","t","p1","blank","zPE","ci_lower2","ci_upper2","z","p2") dat_table_S2.16[,2:12] <- sapply(dat_table_S2.16[,2:12], as.numeric) format_beta <- function(x){ ifelse(abs(x) <= 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_table_S2.16[,c(2:4,8:10)] <- dat_table_S2.16[,c(2:4,8:10)] %>% mutate_if(is.numeric, format_beta) format_t <- function(x){ formatC(x, format = "f", digits = 2) } dat_table_S2.16[,c(5,11)] <- dat_table_S2.16[,c(5,11)] %>% mutate_if(is.numeric, format_t) format_p <- function(x){ ifelse(abs(x) < 0.001, "< .001", f_num(unlist(x), digits=3)) } dat_table_S2.16[,c(6,12)] <- dat_table_S2.16[,c(6,12)] %>% mutate_if(is.numeric, format_p) dat_table_S2.16$ci1 <- paste0("[", dat_table_S2.16$ci_lower1, ", ", dat_table_S2.16$ci_upper1, "]") dat_table_S2.16$ci2 <- paste0("[", dat_table_S2.16$ci_lower2, ", ", dat_table_S2.16$ci_upper2, "]") dat_table_S2.16 <- dat_table_S2.16[,c("Effect","beta","ci1","t","p1","blank","zPE","ci2","z","p2")] dat_table_S2.16[c(22:28),c(2:5)] <- NA dat_table_S2.16[29,2] <- "SLS and SHLS Based on Index of Leadership Style" dat_table_S2.16[30,1] <- "Conditional Direct Effects of SHLS on Attraction to Supervisor" dat_table_S2.16[31,1] <- "Index of Moderated Mediation" dat_table_S2.16[32,1] <- "Conditional Indirect Effects of NARQ on Attraction to Supervisor" dat_table_S2.16[33,1] <- "Conditional Direct Effects of NARQ on Attraction to Supervisor" dat_table_S2.16[34,2] <- "SLS and SHLS Based on Leadership Descriptions" dat_table_S2.16[35,1] <- "Conditional Direct Effects of SHLS on Attraction to Supervisor" dat_table_S2.16[36,1] <- "Index of Moderated Mediation" dat_table_S2.16[37,1] <- "Conditional Indirect Effects of NARQ on Attraction to Supervisor" dat_table_S2.16[38,1] <- "Conditional Direct Effects of NARQ on Attraction to Supervisor" dat_table_S2.16[39,2] <- "SLS and SHLS Based on Leadership Behaviors" dat_table_S2.16[40,1] <- "Conditional Direct Effects of SHLS on Attraction to Supervisor" dat_table_S2.16[41,1] <- "Index of Moderated Mediation" dat_table_S2.16[42,1] <- "Conditional Indirect Effects of NARQ on Attraction to Supervisor" dat_table_S2.16[43,1] <- "Conditional Direct Effects of NARQ on Attraction to Supervisor" dat_table_S2.16[44,2] <- "SLS and SHLS Based on Bipolar Leadership Measure" dat_table_S2.16[45,1] <- "Conditional Direct Effects of SHLS on Attraction to Supervisor" dat_table_S2.16[46,1] <- "Index of Moderated Mediation" dat_table_S2.16[47,1] <- "Conditional Indirect Effects of NARQ on Attraction to Supervisor" dat_table_S2.16[48,1] <- "Conditional Direct Effects of NARQ on Attraction to Supervisor" dat_table_S2.16 <- dat_table_S2.16[c(29:30,1:2,31,3,32,4:5,33,6:7,34:35,8:9,36,10,37,11:12,38,13:14,39:40,15:16,41,17,42,18:19,43,20:21,44:45,22:23,46,24,47,25:26,48,27:28),] col_keys <- c("Effect","beta","ci1","t","p1","blank","zPE","ci2","z","p2") head1 <- c("","Study 2a","Study 2a","Study 2a","Study 2a","","Study 2b","Study 2b","Study 2b","Study 2b") head2 <- c("Effect","\u03B2","95% CI","t","p","","zPE","95% CI","z","p") head <- data.frame(col_keys,head1,head2, stringsAsFactors = FALSE) rm(col_keys,head1,head2) tbl <- flextable(dat_table_S2.16) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:10, border=fp_border(width=2), part="header") tbl <- merge_at(tbl, i=1, j=2:5, part="header") tbl <- merge_at(tbl, i=1, j=7:10, part="header") tbl <- hline(tbl, i=1, j=c(2:5,7:10), border=fp_border(width=1.2), part="header") tbl <- hline(tbl, i=2, j=1:10, border=fp_border(width=1.2), part="header") tbl <- merge_at(tbl, i=1, j=2:10, part="body") tbl <- merge_at(tbl, i=13, j=2:10, part="body") tbl <- merge_at(tbl, i=25, j=2:10, part="body") tbl <- merge_at(tbl, i=37, j=2:10, part="body") tbl <- merge_at(tbl, i=2, j=1:10, part="body") tbl <- merge_at(tbl, i=5, j=1:10, part="body") tbl <- merge_at(tbl, i=7, j=1:10, part="body") tbl <- merge_at(tbl, i=10, j=1:10, part="body") tbl <- merge_at(tbl, i=14, j=1:10, part="body") tbl <- merge_at(tbl, i=17, j=1:10, part="body") tbl <- merge_at(tbl, i=19, j=1:10, part="body") tbl <- merge_at(tbl, i=22, j=1:10, part="body") tbl <- merge_at(tbl, i=26, j=1:10, part="body") tbl <- merge_at(tbl, i=29, j=1:10, part="body") tbl <- merge_at(tbl, i=31, j=1:10, part="body") tbl <- merge_at(tbl, i=34, j=1:10, part="body") tbl <- merge_at(tbl, i=38, j=1:10, part="body") tbl <- merge_at(tbl, i=41, j=1:10, part="body") tbl <- merge_at(tbl, i=43, j=1:10, part="body") tbl <- merge_at(tbl, i=46, j=1:10, part="body") tbl <- hline(tbl, i=c(12,24,36), j=1:10, border=fp_border(width=1.2), part="body") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j = c("Effect"), align="left", part="body") tbl <- align(tbl, i = c(2,5,7,10,14,17,19,22,26,29,31,34,38,41,43,46), align="left", part="body") tbl <- italic(tbl, i=2, j=c("t","p1","zPE","z","p2"), part="header") tbl <- width(tbl, j =~ Effect, width=1.2) tbl <- width(tbl, j =~ beta + zPE, width=.5) tbl <- width(tbl, j =~ ci1 + ci2, width=1) tbl <- width(tbl, j =~ t + z + p1 + p2, width=.6) tbl <- width(tbl, j =~ blank, width=.3) tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S2.16.docx") rm(mediation_model2a,results1,mediation_model2a_descriptions,results2,dat2a_modmed_descriptions,mediation_model2a_lbdq,results3,dat2a_modmed_lbdq,dat2a_modmed,dat2a_modmed_index_simpleslopes, output1,output1_est_ci,est_ci1,output1_t_p,t_p1,dat2b_est_ci1,dat2b_t_p1,output2,output2_est_ci,est_ci2,output2_t_p,t_p2,dat2b_est_ci2,dat2b_t_p2, output3,output3_est_ci,est_ci3,output3_t_p,t_p3,dat2b_est_ci3,dat2b_t_p3,output4,output4_est_ci,est_ci4,output4_t_p,t_p4,dat2b_est_ci4,dat2b_t_p4, dat2b_mod1,dat2b_mod2,dat2b_mod3,dat2b_mod4,dat2b_modmed,dat2b_modmed_simpleslopes, dat_table_S2.15,dat_table_S2.16,format_beta,format_p,format_t,head,tbl,doc) ##Table S2.17: Effect of the NARQ Total Score on Attraction to Supervisor Moderated by Supervisor's Leadership Style and ## Completion Order of Supervisor's Leadership Style and Subordinate's Hypothetical Leadership Style in Study 2a ###regression model model_order <- lm(Zattraction ~ Znarq + Zstyle_index_supervisor + Zorder + ZNARQxSLS + ZNARQxORD + ZSLSxORD + ZNARQxSLSxORD, data=dat2a) dat_table_S2.17 <- data.frame(summary(model_order)$coef,confint(model_order)) ###create table dat_table_S2.17 <- dat_table_S2.17[!(row.names(dat_table_S2.17) %in% "(Intercept)"), ] dat_table_S2.17$Predictor <- c("NARQ","SLS","Order","NARQ x SLS","NARQ x Order","SLS x Order","NARQ x SLS x Order") dat_table_S2.17 <- dat_table_S2.17[,c(7,1,5:6,3:4)] colnames(dat_table_S2.17) <- c("Predictor","beta","ci_lower","ci_upper","t","p") dat_table_S2.17[,2:6] <- sapply(dat_table_S2.17[,2:6], as.numeric) format_beta <- function(x){ ifelse(abs(x) < 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_table_S2.17[,c(2:4)] <- dat_table_S2.17[,c(2:4)] %>% mutate_if(is.numeric, format_beta) format_t <- function(x){ formatC(x, format = "f", digits = 2) } dat_table_S2.17[,5] <- sapply(dat_table_S2.17[,5], format_t) format_p <- function(x){ ifelse(abs(x) < 0.001, "< .001", f_num(unlist(x), digits=3)) } dat_table_S2.17[,6] <- sapply(dat_table_S2.17[,6], format_p) dat_table_S2.17$ci <- paste0("[", dat_table_S2.17$ci_lower, ", ", dat_table_S2.17$ci_upper, "]") dat_table_S2.17 <- dat_table_S2.17[,c("Predictor","beta","ci","t","p")] col_keys <- c("Predictor","beta","ci","t","p") head1 <- c("Predictor","\u03B2","95% CI","t","p") head <- data.frame(col_keys,head1, stringsAsFactors = FALSE) rm(col_keys,head1) tbl <- flextable(dat_table_S2.17) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:5, border=fp_border(width=2), part="header") tbl <- hline(tbl, i=1, j=1:5, border=fp_border(width=1.2), part="header") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j = c("Predictor"), align="left", part="body") tbl <- italic(tbl, i=1, j=c("t","p"), part="header") tbl <- width(tbl, j =~ Predictor, width=1.7) tbl <- width(tbl, j =~ beta, width=.45) tbl <- width(tbl, j =~ ci, width=.95) tbl <- width(tbl, j =~ t, width=.55) tbl <- width(tbl, j =~ p, width=.6) tbl <- height_all(tbl, height=.2, part="all") tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S2.17.docx") rm(model_order,dat_table_S2.17,format_beta,format_p,format_t,head,tbl,doc) ##Table S2.18: Zero-Order Correlations of the Big Five and Self-Esteem with the NARQ Total Score in Studies 2a-2b dat2a_1 <- subset(dat2a, select = c(narq,agr,cns,ext,neu,opn,selfesteem)) cor_dat2a_1 <- corr.test(dat2a_1) dat_cor_2a <- as.data.frame(matrix(unlist(cor_dat2a_1), nrow=502, ncol = 1, byrow=F), stringsAsFactors=FALSE) dat_cor_2a_r <- as.data.frame(matrix(dat_cor_2a[2:7,], nrow=6)) dat_cor_2a_p <- as.data.frame(matrix(dat_cor_2a[101:106,], nrow=6)) dat2b_1 <- subset(dat2b, select = c(narq,agr,cns,ext,neu,opn,selfesteem)) cor_dat2b_1 <- corr.test(dat2b_1) dat_cor_2b <- as.data.frame(matrix(unlist(cor_dat2b_1), nrow=502, ncol = 1, byrow=F), stringsAsFactors=FALSE) dat_cor_2b_r <- as.data.frame(matrix(dat_cor_2b[2:7,], nrow=6)) dat_cor_2b_p <- as.data.frame(matrix(dat_cor_2b[101:106,], nrow=6)) dat_cor_r <- cbind(dat_cor_2a_r,dat_cor_2b_r) dat_cor_p <- cbind(dat_cor_2a_p,dat_cor_2b_p) dat_cor_r[,1:2] <- sapply(dat_cor_r[,1:2], as.numeric) format_r <- function(x){ ifelse(abs(x) < 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_cor_r[,1:2] <- dat_cor_r[,1:2] %>% mutate_if(is.numeric, format_r) dat_cor_p[,1:2] <- sapply(dat_cor_p[,1:2], as.numeric) format_p <- function(x){ ifelse(abs(x) < 0.05 & abs(x) >= 0.01, "*", ifelse(abs(x) < 0.01 & abs(x) >= 0.001, "**", ifelse(abs(x) < 0.001, "***", ""))) } dat_cor_p[,1:2] <- dat_cor_p[,1:2] %>% mutate_if(is.numeric, format_p) dat_table_S2.18 <- data.frame(matrix(nrow=6, ncol=3)) dat_table_S2.18[,1] <- c("Agreeableness","Conscientiousness","Extraversion","Neuroticism","Openness","Self-Esteem") dat_table_S2.18[,2] <- paste0(dat_cor_r[,1],dat_cor_p[,1]) dat_table_S2.18[,3] <- paste0(dat_cor_r[,2],dat_cor_p[,2]) col_keys <- c("X1","X2","X3") head1 <- c("Variable","Study 2a","Study 2b") head <- data.frame(col_keys,head1, stringsAsFactors = FALSE) rm(col_keys,head1) tbl <- flextable(dat_table_S2.18) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:3, border=fp_border(width=2), part="header") tbl <- hline(tbl, i=1, j=1:3, border=fp_border(width=1.2), part="header") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j =~ X1, align="left", part="body") tbl <- width(tbl, j =~ X1, width=1.4) tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S2.18.docx") rm(dat2a_1,cor_dat2a_1,dat_cor_2a,dat_cor_2a_p,dat_cor_2a_r,dat2b_1,cor_dat2b_1,dat_cor_2b,dat_cor_2b_p,dat_cor_2b_r,dat_cor_p,dat_cor_r, dat_table_S2.18,format_p,format_r,head,tbl,doc) ##Table S2.19: Effect of the NARQ Total Score on Attraction to Supervisor Moderated by Supervisor's Leadership Style and Controlled for the Big Five and Self-Esteem in Studies 2a-2b ###regression model for Study 2a moderation_model2a_cov <- lm(Zattraction ~ Znarq + Zagr + Zcns + Zext + Zneu + Zopn + Zse + Zstyle_index_supervisor + ZNARQxSLS + ZAGRxSLS + ZCNSxSLS + ZEXTxSLS + ZNEUxSLS + ZOPNxSLS + ZSExSLS, data=dat2a) dat2a_mod_cov <- data.frame(summary(moderation_model2a_cov)$coef,confint(moderation_model2a_cov)) ###extract coefficients from Mplus-Output for Study 2b setwd(mplus_wd) output <- readModels("Supplement/narq_total_bfi_se_index_moderation.out", what = "parameters") output_est_ci <- sapply(output, "[", "ci.unstandardized") est_ci <- sapply(output_est_ci, "[", c("paramHeader","param","est","low2.5","up2.5")) output_t_p <- sapply(output, "[", "unstandardized") t_p <- sapply(output_t_p, "[", c("paramHeader","param","est_se","pval")) dat2b_est_ci <- data.frame(matrix(unlist(est_ci), nrow=28, ncol = 5, byrow=F), stringsAsFactors=FALSE) dat2b_t_p <- data.frame(matrix(unlist(t_p), nrow=28, ncol = 4, byrow=F), stringsAsFactors=FALSE) dat2b_mod_cov <- cbind(dat2b_est_ci,dat2b_t_p[,c(3:4)]) dat2b_mod_cov <- dat2b_mod_cov[c(11:18,9,8,2:7),] ###create table dat2a_mod_cov$Predictor <- c("(Intercept)","NARQ","AGR","CNS","EXT","NEU","OPN","SE","SLS", "NARQ x SLS","AGR x SLS","CNS x SLS","EXT x SLS","NEU x SLS","OPN x SLS","SE x SLS") dat2a_mod_cov$blank <- NA dat_table_S2.19 <- cbind(dat2a_mod_cov[,c(7,1,5:6,3:4,8)],dat2b_mod_cov[,c(3:7)]) colnames(dat_table_S2.19) <- c("Predictor","beta","ci_lower1","ci_upper1","t","p1","blank","zPE","ci_lower2","ci_upper2","z","p2") dat_table_S2.19[,2:12] <- sapply(dat_table_S2.19[,2:12], as.numeric) format_beta <- function(x){ ifelse(abs(x) < 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_table_S2.19[,c(2:4,8:10)] <- dat_table_S2.19[,c(2:4,8:10)] %>% mutate_if(is.numeric, format_beta) format_t <- function(x){ formatC(x, format = "f", digits = 2) } dat_table_S2.19[,c(5,11)] <- dat_table_S2.19[,c(5,11)] %>% mutate_if(is.numeric, format_t) format_p <- function(x){ ifelse(abs(x) < 0.001, "< .001", f_num(unlist(x), digits=3)) } dat_table_S2.19[,c(6,12)] <- dat_table_S2.19[,c(6,12)] %>% mutate_if(is.numeric, format_p) dat_table_S2.19$ci1 <- paste0("[", dat_table_S2.19$ci_lower1, ", ", dat_table_S2.19$ci_upper1, "]") dat_table_S2.19$ci2 <- paste0("[", dat_table_S2.19$ci_lower2, ", ", dat_table_S2.19$ci_upper2, "]") dat_table_S2.19 <- dat_table_S2.19[,c("Predictor","beta","ci1","t","p1","blank","zPE","ci2","z","p2")] dat_table_S2.19[1,c(2:5)] <- NA col_keys <- c("Predictor","beta","ci1","t","p1","blank","zPE","ci2","z","p2") head1 <- c("","Study 2a","Study 2a","Study 2a","Study 2a","","Study 2b","Study 2b","Study 2b","Study 2b") head2 <- c("Predictor","\u03B2","95% CI","t","p","","zPE","95% CI","z","p") head <- data.frame(col_keys,head1,head2, stringsAsFactors = FALSE) rm(col_keys,head1,head2) tbl <- flextable(dat_table_S2.19) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:10, border=fp_border(width=2), part="header") tbl <- merge_at(tbl, i=1, j=2:5, part="header") tbl <- merge_at(tbl, i=1, j=7:10, part="header") tbl <- hline(tbl, i=1, j=c(2:5,7:10), border=fp_border(width=1.2), part="header") tbl <- hline(tbl, i=2, j=1:10, border=fp_border(width=1.2), part="header") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j = c("Predictor"), align="left", part="body") tbl <- italic(tbl, i=2, j=c("t","p1","zPE","z","p2"), part="header") tbl <- width(tbl, j =~ Predictor, width=1.1) tbl <- width(tbl, j =~ beta + zPE, width=.5) tbl <- width(tbl, j =~ ci1 + ci2, width=1) tbl <- width(tbl, j =~ t + z + p1 + p2, width=.6) tbl <- width(tbl, j =~ blank, width=.3) tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S2.19.docx") rm(moderation_model2a_cov,dat2a_mod_cov,output,output_est_ci,est_ci,output_t_p,t_p,dat2b_est_ci,dat2b_t_p,dat2b_mod_cov,dat_table_S2.19,format_beta,format_p,format_t,head,tbl,doc) ##Table S2.20: Results of the Moderated Mediation Model With the NARQ Total Score Controlled for the Big Five and Self-Esteem in Studies 2a-2b ###moderated mediation model for Study 2a set.seed(123) #setting the seed for reproducibility mediation_model2a_cov <- ' Zattraction ~ c*Znarq + Zagr + Zcns + Zext + Zneu + Zopn + Zse + Zstyle_index_supervisor + b*Zstyle_index_self + h*ZNARQxSLS + ZAGRxSLS + ZCNSxSLS + ZEXTxSLS + ZNEUxSLS + ZOPNxSLS + ZSExSLS + g*ZSHLSxSLS Zstyle_index_self ~ a1*Znarq + a2*Zagr + a3*Zcns + a4*Zext + a5*Zneu + a6*Zopn + a7*Zse ## index of moderated mediaion index_narq := a1 * g index_agr := a2 * g index_cns := a3 * g index_ext := a4 * g index_neu := a5 * g index_opn := a6 * g index_se := a7 * g ## conditional effects of narq indirect_aut := a1*(b-2.404079*g) indirect_dem := a1*(b+1.826888*g) direct_aut := c-2.404079*h direct_dem := c+1.826888*h ## conditional effects of SHLS SHLS_aut := b-2.404079*g SHLS_dem := b+1.826888*g' results_cov <- sem(mediation_model2a_cov, data = dat2a, meanstructure = TRUE, se = "bootstrap", bootstrap = 10000) dat2a_modmed_cov <- data.frame(parameterEstimates(results_cov, ci = TRUE, level = 0.95, boot.ci.type = "bca.simple")) #bias-corrected percentile method dat2a_modmed_cov <- dat2a_modmed_cov[c(18:24,163,1:7,9,8,10:17),] ###extract coefficients from Mplus-Output for Study 2b setwd(mplus_wd) output <- readModels("Supplement/narq_total_bfi_se_index_mediation.out", what = "parameters") output_est_ci <- sapply(output, "[", "ci.unstandardized") est_ci <- sapply(output_est_ci, "[", c("paramHeader","param","est","low2.5","up2.5")) output_t_p <- sapply(output, "[", "unstandardized") t_p <- sapply(output_t_p, "[", c("paramHeader","param","est_se","pval")) dat2b_est_ci <- data.frame(matrix(unlist(est_ci), nrow=43, ncol = 5, byrow=F), stringsAsFactors=FALSE) dat2b_t_p <- data.frame(matrix(unlist(t_p), nrow=43, ncol = 4, byrow=F), stringsAsFactors=FALSE) dat2b_modmed_cov <- cbind(dat2b_est_ci,dat2b_t_p[,c(3:4)]) dat2b_modmed_cov <- dat2b_modmed_cov[c(1:7,21:22,24:29,23,19,18,11:17),] ###create table dat2a_modmed_cov$Predictor <- c("NARQ","AGR","CNS","EXT","NEU","OPN","SE", "(Intercept)","NARQ","AGR","CNS","EXT","NEU","OPN","SE","SHLS","SLS", "NARQ x SLS","AGR x SLS","CNS x SLS","EXT x SLS","NEU x SLS","OPN x SLS","SE x SLS","SHLS x SLS") dat2a_modmed_cov$blank <- NA dat_table_S2.20 <- cbind(dat2a_modmed_cov[,c(11,5,9:10,7:8,12)],dat2b_modmed_cov[,c(3:7)]) colnames(dat_table_S2.20) <- c("Predictor","beta","ci_lower1","ci_upper1","z1","p1","blank","zPE","ci_lower2","ci_upper2","z2","p2") dat_table_S2.20[,2:12] <- sapply(dat_table_S2.20[,2:12], as.numeric) format_beta <- function(x){ ifelse(abs(x) < 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_table_S2.20[,c(2:4,8:10)] <- dat_table_S2.20[,c(2:4,8:10)] %>% mutate_if(is.numeric, format_beta) dat_table_S2.20[4,8] <- ".00" format_t <- function(x){ formatC(x, format = "f", digits = 2) } dat_table_S2.20[,c(5,11)] <- dat_table_S2.20[,c(5,11)] %>% mutate_if(is.numeric, format_t) dat_table_S2.20[4,11] <- "0.00" format_p <- function(x){ ifelse(abs(x) < 0.001, "< .001", f_num(unlist(x), digits=3)) } dat_table_S2.20[,c(6,12)] <- dat_table_S2.20[,c(6,12)] %>% mutate_if(is.numeric, format_p) dat_table_S2.20$ci1 <- paste0("[", dat_table_S2.20$ci_lower1, ", ", dat_table_S2.20$ci_upper1, "]") dat_table_S2.20$ci2 <- paste0("[", dat_table_S2.20$ci_lower2, ", ", dat_table_S2.20$ci_upper2, "]") dat_table_S2.20 <- dat_table_S2.20[,c("Predictor","beta","ci1","z1","p1","blank","zPE","ci2","z2","p2")] dat_table_S2.20[8,c(2:5)] <- NA dat_table_S2.20[26,2] <- "Subordinate's Hypothetical Leadership Style" dat_table_S2.20[27,2] <- "Attraction to Supervisor" dat_table_S2.20 <- dat_table_S2.20[c(26,1:7,27,8:25),] col_keys <- c("Predictor","beta","ci1","z1","p1","blank","zPE","ci2","z2","p2") head1 <- c("","Study 2a","Study 2a","Study 2a","Study 2a","","Study 2b","Study 2b","Study 2b","Study 2b") head2 <- c("Predictor","\u03B2","95% CI","z","p","","zPE","95% CI","z","p") head <- data.frame(col_keys,head1,head2, stringsAsFactors = FALSE) rm(col_keys,head1,head2) tbl <- flextable(dat_table_S2.20) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:10, border=fp_border(width=2), part="header") tbl <- merge_at(tbl, i=1, j=2:5, part="header") tbl <- merge_at(tbl, i=1, j=7:10, part="header") tbl <- merge_at(tbl, i=1, j=2:10, part="body") tbl <- merge_at(tbl, i=9, j=2:10, part="body") tbl <- hline(tbl, i=1, j=c(2:5,7:10), border=fp_border(width=1.2), part="header") tbl <- hline(tbl, i=2, j=1:10, border=fp_border(width=1.2), part="header") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j = c("Predictor"), align="left", part="body") tbl <- italic(tbl, i=2, j=c("z1","p1","zPE","z2","p2"), part="header") tbl <- width(tbl, j =~ Predictor, width=1.1) tbl <- width(tbl, j =~ beta + zPE, width=.5) tbl <- width(tbl, j =~ ci1 + ci2, width=.95) tbl <- width(tbl, j =~ z1 + z2 + p1 + p2, width=.6) tbl <- width(tbl, j =~ blank, width=.3) tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S2.20.docx") rm(mediation_model2a_cov,results_cov,dat2a_modmed_cov,output,output_est_ci,est_ci,output_t_p,t_p,dat2b_est_ci,dat2b_t_p,dat2b_modmed_cov,dat_table_S2.20,format_beta,format_t,format_p,head,tbl,doc) #NPI-Narcissism ##Internal Consistency and Descriptive Statistics of NPI-Narcissism ###Study 2a dat2a.npi <- subset(dat2a, select = c(30:69)) round(psych::alpha(dat2a.npi, na.rm=T)$total[1], digits = 2) round(mean(dat2a$npi),2) round(sd(dat2a$npi),2) rm(dat2a.npi) ###Study 2b dat2b.npi <- subset(dat2b, select = c(28:40)) round(psych::alpha(dat2b.npi, na.rm=T)$total[1], digits = 2) #for one item, the item-total correlation was slightly negative; we kept that item anyway because excluding that item did not alter the results. round(mean(dat2b$npi),2) round(sd(dat2b$npi),2) rm(dat2b.npi) ##Tables S2.21 and S2.22: Effect of NPI-Narcissism on Attraction to Supervisor Moderated by Supervisor's Leadership Style Separately for Each Leadership Measure in Studies 2a-2b ###regression models for Study 2a moderation_model2a <- lm(Zattraction ~ Znpi + Zstyle_index_supervisor + ZNPIxSLS, data=dat2a) moderation_model2a_descriptions <- lm(Zattraction ~ Znpi + Zdescriptions_supervisor + ZNPIxSLS_descriptions, data=dat2a) moderation_model2a_lbdq <- lm(Zattraction ~ Znpi + Zlbdq_supervisor + ZNPIxSLS_lbdq, data=dat2a) dat2a_mod <- rbind(data.frame(summary(moderation_model2a)$coef,confint(moderation_model2a)),data.frame(summary(moderation_model2a_descriptions)$coef,confint(moderation_model2a_descriptions)),data.frame(summary(moderation_model2a_lbdq)$coef,confint(moderation_model2a_lbdq))) ###simple slope analysis for Study 2a dat2a$Zstyle_index_supervisor_dem <- dat2a$Zstyle_index_supervisor - abs(max(dat2a$Zstyle_index_supervisor)) dat2a$Zstyle_index_supervisor_aut <- dat2a$Zstyle_index_supervisor + abs(min(dat2a$Zstyle_index_supervisor)) dat2a$Zdescriptions_supervisor_dem <- dat2a$Zdescriptions_supervisor - abs(max(dat2a$Zdescriptions_supervisor)) dat2a$Zdescriptions_supervisor_aut <- dat2a$Zdescriptions_supervisor + abs(min(dat2a$Zdescriptions_supervisor)) dat2a$Zlbdq_supervisor_dem <- dat2a$Zlbdq_supervisor - abs(max(dat2a$Zlbdq_supervisor)) dat2a$Zlbdq_supervisor_aut <- dat2a$Zlbdq_supervisor + abs(min(dat2a$Zlbdq_supervisor)) dat2a$ZNPIxSLS_index_dem <- scale(dat2a$Znpi*dat2a$Zstyle_index_supervisor_dem) dat2a$ZNPIxSLS_index_aut <- scale(dat2a$Znpi*dat2a$Zstyle_index_supervisor_aut) dat2a$ZNPIxSLS_descriptions_dem <- scale(dat2a$Znpi*dat2a$Zdescriptions_supervisor_dem) dat2a$ZNPIxSLS_descriptions_aut <- scale(dat2a$Znpi*dat2a$Zdescriptions_supervisor_aut) dat2a$ZNPIxSLS_lbdq_dem <- scale(dat2a$Znpi*dat2a$Zlbdq_supervisor_dem) dat2a$ZNPIxSLS_lbdq_aut <- scale(dat2a$Znpi*dat2a$Zlbdq_supervisor_aut) model_dem <- lm(Zattraction ~ Znpi + Zstyle_index_supervisor_dem + ZNPIxSLS_index_dem, data=dat2a) model_aut <- lm(Zattraction ~ Znpi + Zstyle_index_supervisor_aut + ZNPIxSLS_index_aut, data=dat2a) dat2a_mod_dem <- data.frame(summary(model_dem)$coef,confint(model_dem)) dat2a_mod_aut <- data.frame(summary(model_aut)$coef,confint(model_aut)) model_dem_descriptions <- lm(Zattraction ~ Znpi + Zdescriptions_supervisor_dem + ZNPIxSLS_descriptions_dem, data=dat2a) model_aut_descriptions <- lm(Zattraction ~ Znpi + Zdescriptions_supervisor_aut + ZNPIxSLS_descriptions_aut, data=dat2a) dat2a_mod_dem_descriptions <- data.frame(summary(model_dem_descriptions)$coef,confint(model_dem_descriptions)) dat2a_mod_aut_descriptions <- data.frame(summary(model_aut_descriptions)$coef,confint(model_aut_descriptions)) model_dem_lbdq <- lm(Zattraction ~ Znpi + Zlbdq_supervisor_dem + ZNPIxSLS_lbdq_dem, data=dat2a) model_aut_lbdq <- lm(Zattraction ~ Znpi + Zlbdq_supervisor_aut + ZNPIxSLS_lbdq_aut, data=dat2a) dat2a_mod_dem_lbdq <- data.frame(summary(model_dem_lbdq)$coef,confint(model_dem_lbdq)) dat2a_mod_aut_lbdq <- data.frame(summary(model_aut_lbdq)$coef,confint(model_aut_lbdq)) dat2a_mod_simpleslopes <- rbind(dat2a_mod_dem[2,c(1,5:6,3:4)],dat2a_mod_aut[2,c(1,5:6,3:4)],dat2a_mod_dem_descriptions[2,c(1,5:6,3:4)],dat2a_mod_aut_descriptions[2,c(1,5:6,3:4)],dat2a_mod_dem_lbdq[2,c(1,5:6,3:4)],dat2a_mod_aut_lbdq[2,c(1,5:6,3:4)]) ###extract coefficients from Mplus-Outputs for Study 2b setwd(mplus_wd) output1 <- readModels("Supplement/npi_index_moderation.out", what = "parameters") output1_est_ci <- sapply(output1, "[", "ci.unstandardized") est_ci1 <- sapply(output1_est_ci, "[", c("paramHeader","param","est","low2.5","up2.5")) output1_t_p <- sapply(output1, "[", "unstandardized") t_p1 <- sapply(output1_t_p, "[", c("paramHeader","param","est_se","pval")) dat2b_est_ci1 <- data.frame(matrix(unlist(est_ci1), nrow=10, ncol = 5, byrow=F), stringsAsFactors=FALSE) dat2b_t_p1 <- data.frame(matrix(unlist(t_p1), nrow=10, ncol = 4, byrow=F), stringsAsFactors=FALSE) output2 <- readModels("Supplement/npi_descriptions_moderation.out", what = "parameters") output2_est_ci <- sapply(output2, "[", "ci.unstandardized") est_ci2 <- sapply(output2_est_ci, "[", c("paramHeader","param","est","low2.5","up2.5")) output2_t_p <- sapply(output2, "[", "unstandardized") t_p2 <- sapply(output2_t_p, "[", c("paramHeader","param","est_se","pval")) dat2b_est_ci2 <- data.frame(matrix(unlist(est_ci2), nrow=10, ncol = 5, byrow=F), stringsAsFactors=FALSE) dat2b_t_p2 <- data.frame(matrix(unlist(t_p2), nrow=10, ncol = 4, byrow=F), stringsAsFactors=FALSE) output3 <- readModels("Supplement/npi_lbdq_moderation.out", what = "parameters") output3_est_ci <- sapply(output3, "[", "ci.unstandardized") est_ci3 <- sapply(output3_est_ci, "[", c("paramHeader","param","est","low2.5","up2.5")) output3_t_p <- sapply(output3, "[", "unstandardized") t_p3 <- sapply(output3_t_p, "[", c("paramHeader","param","est_se","pval")) dat2b_est_ci3 <- data.frame(matrix(unlist(est_ci3), nrow=10, ncol = 5, byrow=F), stringsAsFactors=FALSE) dat2b_t_p3 <- data.frame(matrix(unlist(t_p3), nrow=10, ncol = 4, byrow=F), stringsAsFactors=FALSE) output4 <- readModels("Supplement/npi_bipolar_moderation.out", what = "parameters") output4_est_ci <- sapply(output4, "[", "ci.unstandardized") est_ci4 <- sapply(output4_est_ci, "[", c("paramHeader","param","est","low2.5","up2.5")) output4_t_p <- sapply(output4, "[", "unstandardized") t_p4 <- sapply(output4_t_p, "[", c("paramHeader","param","est_se","pval")) dat2b_est_ci4 <- data.frame(matrix(unlist(est_ci4), nrow=10, ncol = 5, byrow=F), stringsAsFactors=FALSE) dat2b_t_p4 <- data.frame(matrix(unlist(t_p4), nrow=10, ncol = 4, byrow=F), stringsAsFactors=FALSE) dat2b_mod1 <- cbind(dat2b_est_ci1,dat2b_t_p1[,c(3:4)]) dat2b_mod2 <- cbind(dat2b_est_ci2,dat2b_t_p2[,c(3:4)]) dat2b_mod3 <- cbind(dat2b_est_ci3,dat2b_t_p3[,c(3:4)]) dat2b_mod4 <- cbind(dat2b_est_ci4,dat2b_t_p4[,c(3:4)]) dat2b_mod_simpleslopes <- rbind(dat2b_mod1[c(9:10),],dat2b_mod2[c(9:10),],dat2b_mod3[c(9:10),],dat2b_mod4[c(9:10),]) dat2b_mod <- rbind(dat2b_mod1[c(5,6,3,2),],dat2b_mod2[c(5,6,3,2),],dat2b_mod3[c(5,6,3,2),],dat2b_mod4[c(5,6,3,2),]) ###create Table S2.21: Results dat2a_mod[nrow(dat2a_mod)+4,] <- NA dat2a_mod$Predictor <- c("(Intercept)","NPI","SLS","NPI x SLS","(Intercept)","NPI","SLS","NPI x SLS","(Intercept)","NPI","SLS","NPI x SLS","(Intercept)","NPI","SLS","NPI x SLS") dat2a_mod$blank <- NA dat_table_S2.21 <- cbind(dat2a_mod[,c(7,1,5:6,3:4,8)],dat2b_mod[,c(3:7)]) colnames(dat_table_S2.21) <- c("Predictor","beta","ci_lower1","ci_upper1","t","p1","blank","zPE","ci_lower2","ci_upper2","z","p2") dat_table_S2.21[,2:12] <- sapply(dat_table_S2.21[,2:12], as.numeric) format_beta <- function(x){ ifelse(abs(x) < 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_table_S2.21[,c(2:4,8:10)] <- dat_table_S2.21[,c(2:4,8:10)] %>% mutate_if(is.numeric, format_beta) format_t <- function(x){ formatC(x, format = "f", digits = 2) } dat_table_S2.21[,c(5,11)] <- dat_table_S2.21[,c(5,11)] %>% mutate_if(is.numeric, format_t) format_p <- function(x){ ifelse(abs(x) < 0.001, "< .001", f_num(unlist(x), digits=3)) } dat_table_S2.21[,c(6,12)] <- dat_table_S2.21[,c(6,12)] %>% mutate_if(is.numeric, format_p) dat_table_S2.21$ci1 <- paste0("[", dat_table_S2.21$ci_lower1, ", ", dat_table_S2.21$ci_upper1, "]") dat_table_S2.21$ci2 <- paste0("[", dat_table_S2.21$ci_lower2, ", ", dat_table_S2.21$ci_upper2, "]") dat_table_S2.21 <- dat_table_S2.21[,c("Predictor","beta","ci1","t","p1","blank","zPE","ci2","z","p2")] dat_table_S2.21[c(1,5,9,13:16),c(2:5)] <- NA dat_table_S2.21[17,2] <- "SLS Based on Index of Leadership Style" dat_table_S2.21[18,2] <- "SLS Based on Leadership Descriptions" dat_table_S2.21[19,2] <- "SLS Based on Leadership Behaviors" dat_table_S2.21[20,2] <- "SLS Based on Bipolar Leadership Measure" dat_table_S2.21 <- dat_table_S2.21[c(17,1:4,18,5:8,19,9:12,20,13:16),] col_keys <- c("Predictor","beta","ci1","t","p1","blank","zPE","ci2","z","p2") head1 <- c("","Study 2a","Study 2a","Study 2a","Study 2a","","Study 2b","Study 2b","Study 2b","Study 2b") head2 <- c("Predictor","\u03B2","95% CI","t","p","","zPE","95% CI","z","p") head <- data.frame(col_keys,head1,head2, stringsAsFactors = FALSE) rm(col_keys,head1,head2) tbl <- flextable(dat_table_S2.21) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:10, border=fp_border(width=2), part="header") tbl <- merge_at(tbl, i=1, j=2:5, part="header") tbl <- merge_at(tbl, i=1, j=7:10, part="header") tbl <- hline(tbl, i=1, j=c(2:5,7:10), border=fp_border(width=1.2), part="header") tbl <- hline(tbl, i=2, j=1:10, border=fp_border(width=1.2), part="header") tbl <- merge_at(tbl, i=1, j=2:10, part="body") tbl <- merge_at(tbl, i=6, j=2:10, part="body") tbl <- merge_at(tbl, i=11, j=2:10, part="body") tbl <- merge_at(tbl, i=16, j=2:10, part="body") tbl <- hline(tbl, i=c(5,10,15), j=1:10, border=fp_border(width=1.2), part="body") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j = c("Predictor"), align="left", part="body") tbl <- italic(tbl, i=2, j=c("t","p1","zPE","z","p2"), part="header") tbl <- width(tbl, j =~ Predictor, width=1) tbl <- width(tbl, j =~ beta + zPE, width=.5) tbl <- width(tbl, j =~ ci1 + ci2, width=.95) tbl <- width(tbl, j =~ t + z + p1 + p2, width=.6) tbl <- width(tbl, j =~ blank, width=.3) tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S2.21.docx") ###create Table S2.22: Conditional Total Effects of NPI-Narcissism on Attraction to Supervisor for Democratic and Autocratic Supervisors Separately for Each Leadership Measure dat2a_mod_simpleslopes[nrow(dat2a_mod_simpleslopes)+2,] <- NA dat2a_mod_simpleslopes$SLS <- c("Democratic","Autocratic","Democratic","Autocratic","Democratic","Autocratic","Democratic","Autocratic") dat2a_mod_simpleslopes$blank <- NA dat_table_S2.22 <- cbind(dat2a_mod_simpleslopes[,c(6,1:5,7)],dat2b_mod_simpleslopes[c(2,1,4,3,6,5,8,7),c(3:7)]) colnames(dat_table_S2.22) <- c("SLS","beta","ci_lower1","ci_upper1","t","p1","blank","zPE","ci_lower2","ci_upper2","z","p2") dat_table_S2.22[,2:12] <- sapply(dat_table_S2.22[,2:12], as.numeric) format_beta <- function(x){ ifelse(abs(x) < 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_table_S2.22[,c(2:4,8:10)] <- dat_table_S2.22[,c(2:4,8:10)] %>% mutate_if(is.numeric, format_beta) format_t <- function(x){ formatC(x, format = "f", digits = 2) } dat_table_S2.22[,c(5,11)] <- dat_table_S2.22[,c(5,11)] %>% mutate_if(is.numeric, format_t) format_p <- function(x){ ifelse(abs(x) < 0.001, "< .001", f_num(unlist(x), digits=3)) } dat_table_S2.22[,c(6,12)] <- dat_table_S2.22[,c(6,12)] %>% mutate_if(is.numeric, format_p) dat_table_S2.22$ci1 <- paste0("[", dat_table_S2.22$ci_lower1, ", ", dat_table_S2.22$ci_upper1, "]") dat_table_S2.22$ci2 <- paste0("[", dat_table_S2.22$ci_lower2, ", ", dat_table_S2.22$ci_upper2, "]") dat_table_S2.22 <- dat_table_S2.22[,c("SLS","beta","ci1","t","p1","blank","zPE","ci2","z","p2")] dat_table_S2.22[c(7:8),c(2:5)] <- NA dat_table_S2.22[9,2] <- "SLS Based on Index of Leadership Style" dat_table_S2.22[10,2] <- "SLS Based on Leadership Descriptions" dat_table_S2.22[11,2] <- "SLS Based on Leadership Behaviors" dat_table_S2.22[12,2] <- "SLS Based on Bipolar Leadership Measure" dat_table_S2.22 <- dat_table_S2.22[c(9,1:2,10,3:4,11,5:6,12,7:8),] col_keys <- c("SLS","beta","ci1","t","p1","blank","zPE","ci2","z","p2") head1 <- c("","Study 2a","Study 2a","Study 2a","Study 2a","","Study 2b","Study 2b","Study 2b","Study 2b") head2 <- c("SLS","\u03B2","95% CI","t","p","","zPE","95% CI","z","p") head <- data.frame(col_keys,head1,head2, stringsAsFactors = FALSE) rm(col_keys,head1,head2) tbl <- flextable(dat_table_S2.22) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:10, border=fp_border(width=2), part="header") tbl <- merge_at(tbl, i=1, j=2:5, part="header") tbl <- merge_at(tbl, i=1, j=7:10, part="header") tbl <- hline(tbl, i=1, j=c(2:5,7:10), border=fp_border(width=1.2), part="header") tbl <- hline(tbl, i=2, j=1:10, border=fp_border(width=1.2), part="header") tbl <- merge_at(tbl, i=1, j=2:10, part="body") tbl <- merge_at(tbl, i=4, j=2:10, part="body") tbl <- merge_at(tbl, i=7, j=2:10, part="body") tbl <- merge_at(tbl, i=10, j=2:10, part="body") tbl <- hline(tbl, i=c(3,6,9), j=1:10, border=fp_border(width=1.2), part="body") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j = c("SLS"), align="left", part="body") tbl <- italic(tbl, i=2, j=c("t","p1","zPE","z","p2"), part="header") tbl <- width(tbl, j =~ SLS, width=1) tbl <- width(tbl, j =~ beta + zPE, width=.5) tbl <- width(tbl, j =~ ci1 + ci2, width=.95) tbl <- width(tbl, j =~ t + z + p1 + p2, width=.6) tbl <- width(tbl, j =~ blank, width=.3) tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S2.22.docx") rm(moderation_model2a,moderation_model2a_descriptions,moderation_model2a_lbdq,dat2a_mod,model_dem,model_aut,dat2a_mod_dem,dat2a_mod_aut,model_dem_descriptions,model_aut_descriptions,dat2a_mod_dem_descriptions,dat2a_mod_aut_descriptions, model_dem_lbdq,model_aut_lbdq,dat2a_mod_dem_lbdq,dat2a_mod_aut_lbdq,dat2a_mod_simpleslopes,output1,output1_est_ci,est_ci1,output1_t_p,t_p1,dat2b_est_ci1,dat2b_t_p1,output2,output2_est_ci,est_ci2,output2_t_p,t_p2,dat2b_est_ci2,dat2b_t_p2, output3,output3_est_ci,est_ci3,output3_t_p,t_p3,dat2b_est_ci3,dat2b_t_p3,output4,output4_est_ci,est_ci4,output4_t_p,t_p4,dat2b_est_ci4,dat2b_t_p4,dat2b_mod1,dat2b_mod2,dat2b_mod3,dat2b_mod4,dat2b_mod,dat2b_mod_simpleslopes, dat_table_S2.21,dat_table_S2.22,format_beta,format_p,format_t,head,tbl,doc) ##Tables S2.23 and S2.24: Moderated Mediation Model With NPI-Narcissism Separately for Each Leadership Measure in Studies 2a-2b ###moderated mediation models for Study 2a set.seed(123) #setting the seed for reproducibility mediation_model2a <- ' Zattraction ~ c*Znpi + Zstyle_index_supervisor + b*Zstyle_index_self + h*ZNPIxSLS + g*ZSHLSxSLS Zstyle_index_self ~ a*Znpi ## index of moderated mediaion index_npi := a * g ## conditional effects of NPI indirect_aut := a*(b-2.404079*g) indirect_dem := a*(b+1.826888*g) direct_aut := c-2.404079*h direct_dem := c+1.826888*h ## conditional effects of SHLS SHLS_aut := b-2.404079*g SHLS_dem := b+1.826888*g' results1 <- sem(mediation_model2a, data = dat2a, meanstructure = TRUE, se = "bootstrap", bootstrap = 10000) dat2a_modmed <- data.frame(parameterEstimates(results1, ci = TRUE, level = 0.95, boot.ci.type = "bca.simple")) #bias-corrected percentile method set.seed(123) #setting the seed for reproducibility mediation_model2a_descriptions <- ' Zattraction ~ c*Znpi + Zdescriptions_supervisor + b*Zdescriptions_self + h*ZNPIxSLS_descriptions + g*ZSHLSxSLS_descriptions Zdescriptions_self ~ a*Znpi ## index of moderated mediaion index_npi := a * g ## conditional effects of NPI indirect_aut := a*(b-1.85317*g) indirect_dem := a*(b+1.435109*g) direct_aut := c-1.85317*h direct_dem := c+1.435109*h ## conditional effects of SHLS SHLS_aut := b-1.85317*g SHLS_dem := b+1.435109*g' results2 <- sem(mediation_model2a_descriptions, data = dat2a, meanstructure = TRUE, se = "bootstrap", bootstrap = 10000) dat2a_modmed_descriptions <- data.frame(parameterEstimates(results2, ci = TRUE, level = 0.95, boot.ci.type = "bca.simple")) #bias-corrected percentile method set.seed(123) #setting the seed for reproducibility mediation_model2a_lbdq <- ' Zattraction ~ c*Znpi + Zlbdq_supervisor + b*Zlbdq_self + h*ZNPIxSLS_lbdq + g*ZSHLSxSLS_lbdq Zlbdq_self ~ a*Znpi ## index of moderated mediaion index_npi := a * g ## conditional effects of NPI indirect_aut := a*(b-2.721009*g) indirect_dem := a*(b+2.040864*g) direct_aut := c-2.721009*h direct_dem := c+2.040864*h ## conditional effects of SHLS SHLS_aut := b-2.721009*g SHLS_dem := b+2.040864*g' results3 <- sem(mediation_model2a_lbdq, data = dat2a, meanstructure = TRUE, se = "bootstrap", bootstrap = 10000) dat2a_modmed_lbdq <- data.frame(parameterEstimates(results3, ci = TRUE, level = 0.95, boot.ci.type = "bca.simple")) #bias-corrected percentile method dat2a_modmed_index_simpleslopes <- rbind(dat2a_modmed[c(25:31),],dat2a_modmed_descriptions[c(25:31),],dat2a_modmed_lbdq[c(25:31),]) dat2a_modmed <- rbind(dat2a_modmed[c(6,19,1,3,2,4:5),],dat2a_modmed_descriptions[c(6,19,1,3,2,4:5),],dat2a_modmed_lbdq[c(6,19,1,3,2,4:5),]) ###extract coefficients from Mplus-Outputs for Study 2b setwd(mplus_wd) output1 <- readModels("Supplement/npi_index_mediation.out", what = "parameters") output1_est_ci <- sapply(output1, "[", "ci.unstandardized") est_ci1 <- sapply(output1_est_ci, "[", c("paramHeader","param","est","low2.5","up2.5")) output1_t_p <- sapply(output1, "[", "unstandardized") t_p1 <- sapply(output1_t_p, "[", c("paramHeader","param","est_se","pval")) dat2b_est_ci1 <- data.frame(matrix(unlist(est_ci1), nrow=21, ncol = 5, byrow=F), stringsAsFactors=FALSE) dat2b_t_p1 <- data.frame(matrix(unlist(t_p1), nrow=21, ncol = 4, byrow=F), stringsAsFactors=FALSE) output2 <- readModels("Supplement/npi_descriptions_mediation.out", what = "parameters") output2_est_ci <- sapply(output2, "[", "ci.unstandardized") est_ci2 <- sapply(output2_est_ci, "[", c("paramHeader","param","est","low2.5","up2.5")) output2_t_p <- sapply(output2, "[", "unstandardized") t_p2 <- sapply(output2_t_p, "[", c("paramHeader","param","est_se","pval")) dat2b_est_ci2 <- data.frame(matrix(unlist(est_ci2), nrow=21, ncol = 5, byrow=F), stringsAsFactors=FALSE) dat2b_t_p2 <- data.frame(matrix(unlist(t_p2), nrow=21, ncol = 4, byrow=F), stringsAsFactors=FALSE) output3 <- readModels("Supplement/npi_lbdq_mediation.out", what = "parameters") output3_est_ci <- sapply(output3, "[", "ci.unstandardized") est_ci3 <- sapply(output3_est_ci, "[", c("paramHeader","param","est","low2.5","up2.5")) output3_t_p <- sapply(output3, "[", "unstandardized") t_p3 <- sapply(output3_t_p, "[", c("paramHeader","param","est_se","pval")) dat2b_est_ci3 <- data.frame(matrix(unlist(est_ci3), nrow=21, ncol = 5, byrow=F), stringsAsFactors=FALSE) dat2b_t_p3 <- data.frame(matrix(unlist(t_p3), nrow=21, ncol = 4, byrow=F), stringsAsFactors=FALSE) output4 <- readModels("Supplement/npi_bipolar_mediation.out", what = "parameters") output4_est_ci <- sapply(output4, "[", "ci.unstandardized") est_ci4 <- sapply(output4_est_ci, "[", c("paramHeader","param","est","low2.5","up2.5")) output4_t_p <- sapply(output4, "[", "unstandardized") t_p4 <- sapply(output4_t_p, "[", c("paramHeader","param","est_se","pval")) dat2b_est_ci4 <- data.frame(matrix(unlist(est_ci4), nrow=21, ncol = 5, byrow=F), stringsAsFactors=FALSE) dat2b_t_p4 <- data.frame(matrix(unlist(t_p4), nrow=21, ncol = 4, byrow=F), stringsAsFactors=FALSE) dat2b_mod1 <- cbind(dat2b_est_ci1,dat2b_t_p1[,c(3:4)]) dat2b_mod2 <- cbind(dat2b_est_ci2,dat2b_t_p2[,c(3:4)]) dat2b_mod3 <- cbind(dat2b_est_ci3,dat2b_t_p3[,c(3:4)]) dat2b_mod4 <- cbind(dat2b_est_ci4,dat2b_t_p4[,c(3:4)]) dat2b_modmed_simpleslopes <- rbind(dat2b_mod1[c(15:21),],dat2b_mod2[c(15:21),],dat2b_mod3[c(15:21),],dat2b_mod4[c(15:21),]) dat2b_modmed <- rbind(dat2b_mod1[c(1,9:11,7,6,5),],dat2b_mod2[c(1,9:11,7,6,5),],dat2b_mod3[c(1,9:11,7,6,5),],dat2b_mod4[c(1,9:11,7,6,5),]) ###create Table S2.23: Results dat2a_modmed[nrow(dat2a_modmed)+7,] <- NA dat2a_modmed$Predictor <- c("NPI","(Intercept)","NPI","SHLS","SLS","NPI x SLS","SHLS x SLS","NPI","(Intercept)","NPI","SHLS","SLS","NPI x SLS","SHLS x SLS","NPI","(Intercept)","NPI","SHLS","SLS","NPI x SLS","SHLS x SLS","NPI","(Intercept)","NPI","SHLS","SLS","NPI x SLS","SHLS x SLS") dat2a_modmed$blank <- NA dat_table_S2.23 <- cbind(dat2a_modmed[,c(11,5,9:10,7:8,12)],dat2b_modmed[,c(3:7)]) colnames(dat_table_S2.23) <- c("Predictor","beta","ci_lower1","ci_upper1","z1","p1","blank","zPE","ci_lower2","ci_upper2","z2","p2") dat_table_S2.23[,2:12] <- sapply(dat_table_S2.23[,2:12], as.numeric) format_beta <- function(x){ ifelse(abs(x) < 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_table_S2.23[,c(2:4,8:10)] <- dat_table_S2.23[,c(2:4,8:10)] %>% mutate_if(is.numeric, format_beta) format_t <- function(x){ formatC(x, format = "f", digits = 2) } dat_table_S2.23[,c(5,11)] <- dat_table_S2.23[,c(5,11)] %>% mutate_if(is.numeric, format_t) format_p <- function(x){ ifelse(abs(x) < 0.001, "< .001", f_num(unlist(x), digits=3)) } dat_table_S2.23[,c(6,12)] <- dat_table_S2.23[,c(6,12)] %>% mutate_if(is.numeric, format_p) dat_table_S2.23$ci1 <- paste0("[", dat_table_S2.23$ci_lower1, ", ", dat_table_S2.23$ci_upper1, "]") dat_table_S2.23$ci2 <- paste0("[", dat_table_S2.23$ci_lower2, ", ", dat_table_S2.23$ci_upper2, "]") dat_table_S2.23 <- dat_table_S2.23[,c("Predictor","beta","ci1","z1","p1","blank","zPE","ci2","z2","p2")] dat_table_S2.23[c(2,9,16,22:28),c(2:5)] <- NA dat_table_S2.23[29,2] <- "SLS and SHLS Based on Index of Leadership Style" dat_table_S2.23[30,2] <- "Outcome: SHLS" dat_table_S2.23[31,2] <- "Outcome: Attraction to Supervisor" dat_table_S2.23[32,2] <- "SLS and SHLS Based on Leadership Descriptions" dat_table_S2.23[33,2] <- "Outcome: SHLS" dat_table_S2.23[34,2] <- "Outcome: Attraction to Supervisor" dat_table_S2.23[35,2] <- "SLS and SHLS Based on Leadership Behaviors" dat_table_S2.23[36,2] <- "Outcome: SHLS" dat_table_S2.23[37,2] <- "Outcome: Attraction to Supervisor" dat_table_S2.23[38,2] <- "SLS and SHLS Based on Bipolar Leadership Measure" dat_table_S2.23[39,2] <- "Outcome: SHLS" dat_table_S2.23[40,2] <- "Outcome: Attraction to Supervisor" dat_table_S2.23 <- dat_table_S2.23[c(29:30,1,31,2:7,32:33,8,34,9:14,35:36,15,37,16:21,38:39,22,40,23:28),] col_keys <- c("Predictor","beta","ci1","z1","p1","blank","zPE","ci2","z2","p2") head1 <- c("","Study 2a","Study 2a","Study 2a","Study 2a","","Study 2b","Study 2b","Study 2b","Study 2b") head2 <- c("Predictor","\u03B2","95% CI","z","p","","zPE","95% CI","z","p") head <- data.frame(col_keys,head1,head2, stringsAsFactors = FALSE) rm(col_keys,head1,head2) tbl <- flextable(dat_table_S2.23) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:10, border=fp_border(width=2), part="header") tbl <- merge_at(tbl, i=1, j=2:5, part="header") tbl <- merge_at(tbl, i=1, j=7:10, part="header") tbl <- merge_at(tbl, i=1, j=2:10, part="body") tbl <- merge_at(tbl, i=2, j=2:10, part="body") tbl <- merge_at(tbl, i=4, j=2:10, part="body") tbl <- merge_at(tbl, i=11, j=2:10, part="body") tbl <- merge_at(tbl, i=12, j=2:10, part="body") tbl <- merge_at(tbl, i=14, j=2:10, part="body") tbl <- merge_at(tbl, i=21, j=2:10, part="body") tbl <- merge_at(tbl, i=22, j=2:10, part="body") tbl <- merge_at(tbl, i=24, j=2:10, part="body") tbl <- merge_at(tbl, i=31, j=2:10, part="body") tbl <- merge_at(tbl, i=32, j=2:10, part="body") tbl <- merge_at(tbl, i=34, j=2:10, part="body") tbl <- hline(tbl, i=1, j=c(2:5,7:10), border=fp_border(width=1.2), part="header") tbl <- hline(tbl, i=2, j=1:10, border=fp_border(width=1.2), part="header") tbl <- hline(tbl, i=c(10,20,30), j=1:10, border=fp_border(width=1.2), part="body") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j = c("Predictor"), align="left", part="body") tbl <- italic(tbl, i=2, j=c("z1","p1","zPE","z2","p2"), part="header") tbl <- width(tbl, j =~ Predictor, width=1.1) tbl <- width(tbl, j =~ beta + zPE, width=.5) tbl <- width(tbl, j =~ ci1 + ci2, width=.95) tbl <- width(tbl, j =~ z1 + z2 + p1 + p2, width=.6) tbl <- width(tbl, j =~ blank, width=.3) tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S2.23.docx") ###create Table S2.24: Index of Moderated Mediation, Conditional Indirect Effects, and Conditional Direct Effects dat2a_modmed_index_simpleslopes[nrow(dat2a_modmed_index_simpleslopes)+7,] <- NA dat2a_modmed_index_simpleslopes <- dat2a_modmed_index_simpleslopes[c(7,6,1,3,2,5,4,14,13,8,10,9,12,11,21,20,15,17,16,19,18,28,27,22,24,23,26,25),] dat2a_modmed_index_simpleslopes$Effect <- c(" Democratic"," Autocratic"," NPI"," Democratic"," Autocratic"," Democratic"," Autocratic"," Democratic"," Autocratic"," NPI"," Democratic"," Autocratic"," Democratic"," Autocratic"," Democratic"," Autocratic"," NPI"," Democratic"," Autocratic"," Democratic"," Autocratic"," Democratic"," Autocratic"," NPI"," Democratic"," Autocratic"," Democratic"," Autocratic") dat2a_modmed_index_simpleslopes$blank <- NA dat_table_S2.24 <- cbind(dat2a_modmed_index_simpleslopes[,c(11,5,9:10,7:8,12)],dat2b_modmed_simpleslopes[c(7,6,1,3,2,5,4,14,13,8,10,9,12,11,21,20,15,17,16,19,18,28,27,22,24,23,26,25),c(3:7)]) colnames(dat_table_S2.24) <- c("Effect","beta","ci_lower1","ci_upper1","t","p1","blank","zPE","ci_lower2","ci_upper2","z","p2") dat_table_S2.24[,2:12] <- sapply(dat_table_S2.24[,2:12], as.numeric) format_beta <- function(x){ ifelse(abs(x) < 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_table_S2.24[,c(2:4,8:10)] <- dat_table_S2.24[,c(2:4,8:10)] %>% mutate_if(is.numeric, format_beta) format_t <- function(x){ formatC(x, format = "f", digits = 2) } dat_table_S2.24[,c(5,11)] <- dat_table_S2.24[,c(5,11)] %>% mutate_if(is.numeric, format_t) format_p <- function(x){ ifelse(abs(x) < 0.001, "< .001", f_num(unlist(x), digits=3)) } dat_table_S2.24[,c(6,12)] <- dat_table_S2.24[,c(6,12)] %>% mutate_if(is.numeric, format_p) dat_table_S2.24$ci1 <- paste0("[", dat_table_S2.24$ci_lower1, ", ", dat_table_S2.24$ci_upper1, "]") dat_table_S2.24$ci2 <- paste0("[", dat_table_S2.24$ci_lower2, ", ", dat_table_S2.24$ci_upper2, "]") dat_table_S2.24 <- dat_table_S2.24[,c("Effect","beta","ci1","t","p1","blank","zPE","ci2","z","p2")] dat_table_S2.24[c(22:28),c(2:5)] <- NA dat_table_S2.24[29,2] <- "SLS and SHLS Based on Index of Leadership Style" dat_table_S2.24[30,1] <- "Conditional Direct Effects of SHLS on Attraction to Supervisor" dat_table_S2.24[31,1] <- "Index of Moderated Mediation" dat_table_S2.24[32,1] <- "Conditional Indirect Effects of NPI on Attraction to Supervisor" dat_table_S2.24[33,1] <- "Conditional Direct Effects of NPI on Attraction to Supervisor" dat_table_S2.24[34,2] <- "SLS and SHLS Based on Leadership Descriptions" dat_table_S2.24[35,1] <- "Conditional Direct Effects of SHLS on Attraction to Supervisor" dat_table_S2.24[36,1] <- "Index of Moderated Mediation" dat_table_S2.24[37,1] <- "Conditional Indirect Effects of NPI on Attraction to Supervisor" dat_table_S2.24[38,1] <- "Conditional Direct Effects of NPI on Attraction to Supervisor" dat_table_S2.24[39,2] <- "SLS and SHLS Based on Leadership Behaviors" dat_table_S2.24[40,1] <- "Conditional Direct Effects of SHLS on Attraction to Supervisor" dat_table_S2.24[41,1] <- "Index of Moderated Mediation" dat_table_S2.24[42,1] <- "Conditional Indirect Effects of NPI on Attraction to Supervisor" dat_table_S2.24[43,1] <- "Conditional Direct Effects of NPI on Attraction to Supervisor" dat_table_S2.24[44,2] <- "SLS and SHLS Based on Bipolar Leadership Measure" dat_table_S2.24[45,1] <- "Conditional Direct Effects of SHLS on Attraction to Supervisor" dat_table_S2.24[46,1] <- "Index of Moderated Mediation" dat_table_S2.24[47,1] <- "Conditional Indirect Effects of NPI on Attraction to Supervisor" dat_table_S2.24[48,1] <- "Conditional Direct Effects of NPI on Attraction to Supervisor" dat_table_S2.24 <- dat_table_S2.24[c(29:30,1:2,31,3,32,4:5,33,6:7,34:35,8:9,36,10,37,11:12,38,13:14,39:40,15:16,41,17,42,18:19,43,20:21,44:45,22:23,46,24,47,25:26,48,27:28),] col_keys <- c("Effect","beta","ci1","t","p1","blank","zPE","ci2","z","p2") head1 <- c("","Study 2a","Study 2a","Study 2a","Study 2a","","Study 2b","Study 2b","Study 2b","Study 2b") head2 <- c("Effect","\u03B2","95% CI","t","p","","zPE","95% CI","z","p") head <- data.frame(col_keys,head1,head2, stringsAsFactors = FALSE) rm(col_keys,head1,head2) tbl <- flextable(dat_table_S2.24) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:10, border=fp_border(width=2), part="header") tbl <- merge_at(tbl, i=1, j=2:5, part="header") tbl <- merge_at(tbl, i=1, j=7:10, part="header") tbl <- hline(tbl, i=1, j=c(2:5,7:10), border=fp_border(width=1.2), part="header") tbl <- hline(tbl, i=2, j=1:10, border=fp_border(width=1.2), part="header") tbl <- merge_at(tbl, i=1, j=2:10, part="body") tbl <- merge_at(tbl, i=13, j=2:10, part="body") tbl <- merge_at(tbl, i=25, j=2:10, part="body") tbl <- merge_at(tbl, i=37, j=2:10, part="body") tbl <- merge_at(tbl, i=2, j=1:10, part="body") tbl <- merge_at(tbl, i=5, j=1:10, part="body") tbl <- merge_at(tbl, i=7, j=1:10, part="body") tbl <- merge_at(tbl, i=10, j=1:10, part="body") tbl <- merge_at(tbl, i=14, j=1:10, part="body") tbl <- merge_at(tbl, i=17, j=1:10, part="body") tbl <- merge_at(tbl, i=19, j=1:10, part="body") tbl <- merge_at(tbl, i=22, j=1:10, part="body") tbl <- merge_at(tbl, i=26, j=1:10, part="body") tbl <- merge_at(tbl, i=29, j=1:10, part="body") tbl <- merge_at(tbl, i=31, j=1:10, part="body") tbl <- merge_at(tbl, i=34, j=1:10, part="body") tbl <- merge_at(tbl, i=38, j=1:10, part="body") tbl <- merge_at(tbl, i=41, j=1:10, part="body") tbl <- merge_at(tbl, i=43, j=1:10, part="body") tbl <- merge_at(tbl, i=46, j=1:10, part="body") tbl <- hline(tbl, i=c(12,24,36), j=1:10, border=fp_border(width=1.2), part="body") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j = c("Effect"), align="left", part="body") tbl <- align(tbl, i = c(2,5,7,10,14,17,19,22,26,29,31,34,38,41,43,46), align="left", part="body") tbl <- italic(tbl, i=2, j=c("t","p1","zPE","z","p2"), part="header") tbl <- width(tbl, j =~ Effect, width=1.2) tbl <- width(tbl, j =~ beta + zPE, width=.5) tbl <- width(tbl, j =~ ci1 + ci2, width=.95) tbl <- width(tbl, j =~ t + z + p1 + p2, width=.6) tbl <- width(tbl, j =~ blank, width=.3) tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S2.24.docx") rm(mediation_model2a,results1,mediation_model2a_descriptions,results2,dat2a_modmed_descriptions,mediation_model2a_lbdq,results3,dat2a_modmed_lbdq,dat2a_modmed,dat2a_modmed_index_simpleslopes, output1,output1_est_ci,est_ci1,output1_t_p,t_p1,dat2b_est_ci1,dat2b_t_p1,output2,output2_est_ci,est_ci2,output2_t_p,t_p2,dat2b_est_ci2,dat2b_t_p2, output3,output3_est_ci,est_ci3,output3_t_p,t_p3,dat2b_est_ci3,dat2b_t_p3,output4,output4_est_ci,est_ci4,output4_t_p,t_p4,dat2b_est_ci4,dat2b_t_p4, dat2b_mod1,dat2b_mod2,dat2b_mod3,dat2b_mod4,dat2b_modmed,dat2b_modmed_simpleslopes, dat_table_S2.23,dat_table_S2.24,format_beta,format_p,format_t,head,tbl,doc) ##Supplementary Footnote S6: NPI Facets ###regression models for Study 2a moderation_model2a <- lm(Zattraction ~ Znpi_authority + Znpi_exhibitionism + Znpi_entitlement + Zstyle_index_supervisor + ZNPI_AUTxSLS + ZNPI_EXHxSLS + ZNPI_ENTxSLS, data=dat2a) moderation_model2a_descriptions <- lm(Zattraction ~ Znpi_authority + Znpi_exhibitionism + Znpi_entitlement + Zdescriptions_supervisor + ZNPI_AUTxSLS_descriptions + ZNPI_EXHxSLS_descriptions + ZNPI_ENTxSLS_descriptions, data=dat2a) moderation_model2a_lbdq <- lm(Zattraction ~ Znpi_authority + Znpi_exhibitionism + Znpi_entitlement + Zlbdq_supervisor + ZNPI_AUTxSLS_lbdq + ZNPI_EXHxSLS_lbdq + ZNPI_ENTxSLS_lbdq, data=dat2a) dat2a_mod_facets <- rbind(data.frame(summary(moderation_model2a)$coef,confint(moderation_model2a)),data.frame(summary(moderation_model2a_descriptions)$coef,confint(moderation_model2a_descriptions)),data.frame(summary(moderation_model2a_lbdq)$coef,confint(moderation_model2a_lbdq))) ###moderated mediation models for Study 2a set.seed(123) #setting the seed for reproducibility mediation_model2a <- ' Zattraction ~ c1*Znpi_authority + c2*Znpi_exhibitionism + c3*Znpi_entitlement + Zstyle_index_supervisor + b*Zstyle_index_self + h1*ZNPI_AUTxSLS + h2*ZNPI_EXHxSLS + h3*ZNPI_ENTxSLS + g*ZSHLSxSLS Zstyle_index_self ~ a1*Znpi_authority + a2*Znpi_exhibitionism + a3*Znpi_entitlement ## index of moderated mediaion index_npi_authority := a1 * g index_npi_exhibitionism := a2 * g index_npi_entitlement := a3 * g ## indirect effects of NPI facets indirect_aut1 := a1*(b-2.404079*g) indirect_dem1 := a1*(b+1.826888*g) indirect_aut2 := a2*(b-2.404079*g) indirect_dem2 := a2*(b+1.826888*g) indirect_aut3 := a3*(b-2.404079*g) indirect_dem3 := a3*(b+1.826888*g)' results1 <- sem(mediation_model2a, data = dat2a, meanstructure = TRUE, se = "bootstrap", bootstrap = 10000) dat2a_modmed <- data.frame(parameterEstimates(results1, ci = TRUE, level = 0.95, boot.ci.type = "bca.simple")) #bias-corrected percentile method set.seed(123) #setting the seed for reproducibility mediation_model2a_descriptions <- ' Zattraction ~ c1*Znpi_authority + c2*Znpi_exhibitionism + c3*Znpi_entitlement + Zdescriptions_supervisor + b*Zdescriptions_self + h1*ZNPI_AUTxSLS_descriptions + h2*ZNPI_EXHxSLS_descriptions + h3*ZNPI_ENTxSLS_descriptions + g*ZSHLSxSLS_descriptions Zdescriptions_self ~ a1*Znpi_authority + a2*Znpi_exhibitionism + a3*Znpi_entitlement ## index of moderated mediaion index_npi_authority := a1 * g index_npi_exhibitionism := a2 * g index_npi_entitlement := a3 * g ## indirect effects of NPI facets indirect_aut1 := a1*(b-1.85317*g) indirect_dem1 := a1*(b+1.435109*g) indirect_aut2 := a2*(b-1.85317*g) indirect_dem2 := a2*(b+1.435109*g) indirect_aut3 := a3*(b-1.85317*g) indirect_dem3 := a3*(b+1.435109*g)' results2 <- sem(mediation_model2a_descriptions, data = dat2a, meanstructure = TRUE, se = "bootstrap", bootstrap = 10000) dat2a_modmed_descriptions <- data.frame(parameterEstimates(results2, ci = TRUE, level = 0.95, boot.ci.type = "bca.simple")) #bias-corrected percentile method set.seed(123) #setting the seed for reproducibility mediation_model2a_lbdq <- ' Zattraction ~ c1*Znpi_authority + c2*Znpi_exhibitionism + c3*Znpi_entitlement + Zlbdq_supervisor + b*Zlbdq_self + h1*ZNPI_AUTxSLS_lbdq + h2*ZNPI_EXHxSLS_lbdq + h3*ZNPI_ENTxSLS_lbdq + g*ZSHLSxSLS_lbdq Zlbdq_self ~ a1*Znpi_authority + a2*Znpi_exhibitionism + a3*Znpi_entitlement ## index of moderated mediaion index_npi_authority := a1 * g index_npi_exhibitionism := a2 * g index_npi_entitlement := a3 * g ## indirect effects of NPI facets indirect_aut1 := a1*(b-2.721009*g) indirect_dem1 := a1*(b+2.040864*g) indirect_aut2 := a2*(b-2.721009*g) indirect_dem2 := a2*(b+2.040864*g) indirect_aut3 := a3*(b-2.721009*g) indirect_dem3 := a3*(b+2.040864*g)' results3 <- sem(mediation_model2a_lbdq, data = dat2a, meanstructure = TRUE, se = "bootstrap", bootstrap = 10000) dat2a_modmed_lbdq <- data.frame(parameterEstimates(results3, ci = TRUE, level = 0.95, boot.ci.type = "bca.simple")) #bias-corrected percentile method dat2a_modmed_index_simpleslopes_facets <- rbind(dat2a_modmed[c(61:69),],dat2a_modmed_descriptions[c(61:69),],dat2a_modmed_lbdq[c(61:69),]) dat2a_modmed_facets <- rbind(dat2a_modmed[c(10:12,1:3,5,4,6:9),],dat2a_modmed_descriptions[c(10:12,1:3,5,4,6:9),],dat2a_modmed_lbdq[c(10:12,1:3,5,4,6:9),]) ###extract coefficients from Mplus-Outputs for Study 2b setwd(mplus_wd) output1a <- readModels("Supplement/npi_facets_index_moderation.out", what = "parameters") output1a_est_ci <- sapply(output1a, "[", "ci.unstandardized") est_ci1a <- sapply(output1a_est_ci, "[", c("paramHeader","param","est","low2.5","up2.5")) output1a_t_p <- sapply(output1a, "[", "unstandardized") t_p1a <- sapply(output1a_t_p, "[", c("paramHeader","param","est_se","pval")) dat2b_est_ci1a <- data.frame(matrix(unlist(est_ci1a), nrow=13, ncol = 5, byrow=F), stringsAsFactors=FALSE) dat2b_t_p1a <- data.frame(matrix(unlist(t_p1a), nrow=13, ncol = 4, byrow=F), stringsAsFactors=FALSE) output2a <- readModels("Supplement/npi_facets_descriptions_moderation.out", what = "parameters") output2a_est_ci <- sapply(output2a, "[", "ci.unstandardized") est_ci2a <- sapply(output2a_est_ci, "[", c("paramHeader","param","est","low2.5","up2.5")) output2a_t_p <- sapply(output2a, "[", "unstandardized") t_p2a <- sapply(output2a_t_p, "[", c("paramHeader","param","est_se","pval")) dat2b_est_ci2a <- data.frame(matrix(unlist(est_ci2a), nrow=13, ncol = 5, byrow=F), stringsAsFactors=FALSE) dat2b_t_p2a <- data.frame(matrix(unlist(t_p2a), nrow=13, ncol = 4, byrow=F), stringsAsFactors=FALSE) output3a <- readModels("Supplement/npi_facets_lbdq_moderation.out", what = "parameters") output3a_est_ci <- sapply(output3a, "[", "ci.unstandardized") est_ci3a <- sapply(output3a_est_ci, "[", c("paramHeader","param","est","low2.5","up2.5")) output3a_t_p <- sapply(output3a, "[", "unstandardized") t_p3a <- sapply(output3a_t_p, "[", c("paramHeader","param","est_se","pval")) dat2b_est_ci3a <- data.frame(matrix(unlist(est_ci3a), nrow=13, ncol = 5, byrow=F), stringsAsFactors=FALSE) dat2b_t_p3a <- data.frame(matrix(unlist(t_p3a), nrow=13, ncol = 4, byrow=F), stringsAsFactors=FALSE) output4a <- readModels("Supplement/npi_facets_bipolar_moderation.out", what = "parameters") output4a_est_ci <- sapply(output4a, "[", "ci.unstandardized") est_ci4a <- sapply(output4a_est_ci, "[", c("paramHeader","param","est","low2.5","up2.5")) output4a_t_p <- sapply(output4a, "[", "unstandardized") t_p4a <- sapply(output4a_t_p, "[", c("paramHeader","param","est_se","pval")) dat2b_est_ci4a <- data.frame(matrix(unlist(est_ci4a), nrow=13, ncol = 5, byrow=F), stringsAsFactors=FALSE) dat2b_t_p4a <- data.frame(matrix(unlist(t_p4a), nrow=13, ncol = 4, byrow=F), stringsAsFactors=FALSE) dat2b_mod1 <- cbind(dat2b_est_ci1a,dat2b_t_p1a[,c(3:4)]) dat2b_mod2 <- cbind(dat2b_est_ci2a,dat2b_t_p2a[,c(3:4)]) dat2b_mod3 <- cbind(dat2b_est_ci3a,dat2b_t_p3a[,c(3:4)]) dat2b_mod4 <- cbind(dat2b_est_ci4a,dat2b_t_p4a[,c(3:4)]) dat2b_mod_facets <- rbind(dat2b_mod1[c(6:9,5,2:4),],dat2b_mod2[c(6:9,5,2:4),],dat2b_mod3[c(6:9,5,2:4),],dat2b_mod4[c(6:9,5,2:4),]) colnames(dat2b_mod_facets) <- c("Outcome","Predictor","zPE","ci_lower","ci_upper","t","p") output1b <- readModels("Supplement/npi_facets_index_mediation.out", what = "parameters") output1b_est_ci <- sapply(output1b, "[", "ci.unstandardized") est_ci1b <- sapply(output1b_est_ci, "[", c("paramHeader","param","est","low2.5","up2.5")) output1b_t_p <- sapply(output1b, "[", "unstandardized") t_p1b <- sapply(output1b_t_p, "[", c("paramHeader","param","est_se","pval")) dat2b_est_ci1b <- data.frame(matrix(unlist(est_ci1b), nrow=32, ncol = 5, byrow=F), stringsAsFactors=FALSE) dat2b_t_p1b <- data.frame(matrix(unlist(t_p1b), nrow=32, ncol = 4, byrow=F), stringsAsFactors=FALSE) output2b <- readModels("Supplement/npi_facets_descriptions_mediation.out", what = "parameters") output2b_est_ci <- sapply(output2b, "[", "ci.unstandardized") est_ci2b <- sapply(output2b_est_ci, "[", c("paramHeader","param","est","low2.5","up2.5")) output2b_t_p <- sapply(output2b, "[", "unstandardized") t_p2b <- sapply(output2b_t_p, "[", c("paramHeader","param","est_se","pval")) dat2b_est_ci2b <- data.frame(matrix(unlist(est_ci2b), nrow=32, ncol = 5, byrow=F), stringsAsFactors=FALSE) dat2b_t_p2b <- data.frame(matrix(unlist(t_p2b), nrow=32, ncol = 4, byrow=F), stringsAsFactors=FALSE) output3b <- readModels("Supplement/npi_facets_lbdq_mediation.out", what = "parameters") output3b_est_ci <- sapply(output3b, "[", "ci.unstandardized") est_ci3b <- sapply(output3b_est_ci, "[", c("paramHeader","param","est","low2.5","up2.5")) output3b_t_p <- sapply(output3b, "[", "unstandardized") t_p3b <- sapply(output3b_t_p, "[", c("paramHeader","param","est_se","pval")) dat2b_est_ci3b <- data.frame(matrix(unlist(est_ci3b), nrow=32, ncol = 5, byrow=F), stringsAsFactors=FALSE) dat2b_t_p3b <- data.frame(matrix(unlist(t_p3b), nrow=32, ncol = 4, byrow=F), stringsAsFactors=FALSE) output4b <- readModels("Supplement/npi_facets_bipolar_mediation.out", what = "parameters") output4b_est_ci <- sapply(output4b, "[", "ci.unstandardized") est_ci4b <- sapply(output4b_est_ci, "[", c("paramHeader","param","est","low2.5","up2.5")) output4b_t_p <- sapply(output4b, "[", "unstandardized") t_p4b <- sapply(output4b_t_p, "[", c("paramHeader","param","est_se","pval")) dat2b_est_ci4b <- data.frame(matrix(unlist(est_ci4b), nrow=32, ncol = 5, byrow=F), stringsAsFactors=FALSE) dat2b_t_p4b <- data.frame(matrix(unlist(t_p4b), nrow=32, ncol = 4, byrow=F), stringsAsFactors=FALSE) dat2b_modmed1 <- cbind(dat2b_est_ci1b,dat2b_t_p1b[,c(3:4)]) dat2b_modmed2 <- cbind(dat2b_est_ci2b,dat2b_t_p2b[,c(3:4)]) dat2b_modmed3 <- cbind(dat2b_est_ci3b,dat2b_t_p3b[,c(3:4)]) dat2b_modmed4 <- cbind(dat2b_est_ci4b,dat2b_t_p4b[,c(3:4)]) dat2b_modmed_facets <- rbind(dat2b_modmed1[c(1:3,12:16,11,8:10,7),],dat2b_modmed2[c(1:3,12:16,11,8:10,7),],dat2b_modmed3[c(1:3,12:16,11,8:10,7),],dat2b_modmed4[c(1:3,12:16,11,8:10,7),]) colnames(dat2b_modmed_facets) <- c("Outcome","Predictor","zPE","ci_lower","ci_upper","t","p") dat2b_modmed_simpleslopes_facets <- rbind(dat2b_modmed1[c(22:32),c(2:7)],dat2b_modmed2[c(22:32),c(2:7)],dat2b_modmed3[c(22:32),c(2:7)],dat2b_modmed4[c(22:32),c(2:7)]) colnames(dat2b_modmed_simpleslopes_facets) <- c("Effect","zPE","ci_lower","ci_upper","t","p") #IND = index of moderated mediation, IND_AUT = indirect effect on attraction to autocratic supervisors, IND_DEM = indirect effect on attraction to democratic supervisors, 1 = npi_authority, 2 = npi_exhibitionism, 3 = npi_entitlement, SHLS_AUT = direct effect of subordinate's hypothetical leadership style on attraction to autocratic supervisors, SHLS_DEM = direct effect of subordinate's hypothetical leadership style on attraction to democratic supervisors. rm(moderation_model2a,moderation_model2a_descriptions,moderation_model2a_lbdq,dat2a_mod_facets, mediation_model2a,results1,dat2a_modmed,mediation_model2a_descriptions,results2,dat2a_modmed_descriptions,mediation_model2a_lbdq,results3,dat2a_modmed_lbdq,dat2a_modmed_facets,dat2a_modmed_index_simpleslopes_facets, output1a,output1a_est_ci,est_ci1a,output1a_t_p,t_p1a,dat2b_est_ci1a,dat2b_t_p1a,output2a,output2a_est_ci,est_ci2a,output2a_t_p,t_p2a,dat2b_est_ci2a,dat2b_t_p2a, output3a,output3a_est_ci,est_ci3a,output3a_t_p,t_p3a,dat2b_est_ci3a,dat2b_t_p3a,output4a,output4a_est_ci,est_ci4a,output4a_t_p,t_p4a,dat2b_est_ci4a,dat2b_t_p4a, dat2b_mod1,dat2b_mod2,dat2b_mod3,dat2b_mod4,dat2b_mod_facets, output1b,output1b_est_ci,est_ci1b,output1b_t_p,t_p1b,dat2b_est_ci1b,dat2b_t_p1b,output2b,output2b_est_ci,est_ci2b,output2b_t_p,t_p2b,dat2b_est_ci2b,dat2b_t_p2b, output3b,output3b_est_ci,est_ci3b,output3b_t_p,t_p3b,dat2b_est_ci3b,dat2b_t_p3b,output4b,output4b_est_ci,est_ci4b,output4b_t_p,t_p4b,dat2b_est_ci4b,dat2b_t_p4b, dat2b_modmed1,dat2b_modmed2,dat2b_modmed3,dat2b_modmed4,dat2b_modmed_facets,dat2b_modmed_simpleslopes_facets) ##Table S2.25: Effect of NPI-Narcissism on Attraction to Supervisor Moderated by Supervisor's Leadership Style and ## Completion Order of Supervisor's Leadership Style and Subordinate's Hypothetical Leadership Style in Study 2a ###regression model model_order <- lm(Zattraction ~ Znpi + Zstyle_index_supervisor + Zorder + ZNPIxSLS + ZNPIxORD + ZSLSxORD + ZNPIxSLSxORD, data=dat2a) dat_table_S2.25 <- data.frame(summary(model_order)$coef,confint(model_order)) ###create table dat_table_S2.25 <- dat_table_S2.25[!(row.names(dat_table_S2.25) %in% "(Intercept)"), ] dat_table_S2.25$Predictor <- c("NPI","SLS","Order","NPI x SLS","NPI x Order","SLS x Order","NPI x SLS x Order") dat_table_S2.25 <- dat_table_S2.25[,c(7,1,5:6,3:4)] colnames(dat_table_S2.25) <- c("Predictor","beta","ci_lower","ci_upper","t","p") dat_table_S2.25[,2:6] <- sapply(dat_table_S2.25[,2:6], as.numeric) format_beta <- function(x){ ifelse(abs(x) < 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_table_S2.25[,c(2:4)] <- dat_table_S2.25[,c(2:4)] %>% mutate_if(is.numeric, format_beta) format_t <- function(x){ formatC(x, format = "f", digits = 2) } dat_table_S2.25[,5] <- sapply(dat_table_S2.25[,5], format_t) format_p <- function(x){ ifelse(abs(x) < 0.001, "< .001", f_num(unlist(x), digits=3)) } dat_table_S2.25[,6] <- sapply(dat_table_S2.25[,6], format_p) dat_table_S2.25$ci <- paste0("[", dat_table_S2.25$ci_lower, ", ", dat_table_S2.25$ci_upper, "]") dat_table_S2.25 <- dat_table_S2.25[,c("Predictor","beta","ci","t","p")] col_keys <- c("Predictor","beta","ci","t","p") head1 <- c("Predictor","\u03B2","95% CI","t","p") head <- data.frame(col_keys,head1, stringsAsFactors = FALSE) rm(col_keys,head1) tbl <- flextable(dat_table_S2.25) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:5, border=fp_border(width=2), part="header") tbl <- hline(tbl, i=1, j=1:5, border=fp_border(width=1.2), part="header") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j = c("Predictor"), align="left", part="body") tbl <- italic(tbl, i=1, j=c("t","p"), part="header") tbl <- width(tbl, j =~ Predictor, width=1.5) tbl <- width(tbl, j =~ beta, width=.45) tbl <- width(tbl, j =~ ci, width=.95) tbl <- width(tbl, j =~ t, width=.55) tbl <- width(tbl, j =~ p, width=.6) tbl <- height_all(tbl, height=.2, part="all") tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S2.25.docx") rm(model_order,dat_table_S2.25,format_beta,format_p,format_t,head,tbl,doc) ##Table S2.26: Zero-Order Correlations of the Big Five and Self-Esteem with NPI-Narcissism in Studies 2a-2b dat2a_1 <- subset(dat2a, select = c(npi,agr,cns,ext,neu,opn,selfesteem)) cor_dat2a_1 <- corr.test(dat2a_1) dat_cor_2a <- as.data.frame(matrix(unlist(cor_dat2a_1), nrow=502, ncol = 1, byrow=F), stringsAsFactors=FALSE) dat_cor_2a_r <- as.data.frame(matrix(dat_cor_2a[2:7,], nrow=6)) dat_cor_2a_p <- as.data.frame(matrix(dat_cor_2a[101:106,], nrow=6)) dat2b_1 <- subset(dat2b, select = c(npi,agr,cns,ext,neu,opn,selfesteem)) cor_dat2b_1 <- corr.test(dat2b_1) dat_cor_2b <- as.data.frame(matrix(unlist(cor_dat2b_1), nrow=502, ncol = 1, byrow=F), stringsAsFactors=FALSE) dat_cor_2b_r <- as.data.frame(matrix(dat_cor_2b[2:7,], nrow=6)) dat_cor_2b_p <- as.data.frame(matrix(dat_cor_2b[101:106,], nrow=6)) dat_cor_r <- cbind(dat_cor_2a_r,dat_cor_2b_r) dat_cor_p <- cbind(dat_cor_2a_p,dat_cor_2b_p) dat_cor_r[,1:2] <- sapply(dat_cor_r[,1:2], as.numeric) format_r <- function(x){ ifelse(abs(x) < 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_cor_r[,1:2] <- dat_cor_r[,1:2] %>% mutate_if(is.numeric, format_r) dat_cor_p[,1:2] <- sapply(dat_cor_p[,1:2], as.numeric) format_p <- function(x){ ifelse(abs(x) < 0.05 & abs(x) >= 0.01, "*", ifelse(abs(x) < 0.01 & abs(x) >= 0.001, "**", ifelse(abs(x) < 0.001, "***", ""))) } dat_cor_p[,1:2] <- dat_cor_p[,1:2] %>% mutate_if(is.numeric, format_p) dat_table_S2.26 <- data.frame(matrix(nrow=6, ncol=3)) dat_table_S2.26[,1] <- c("Agreeableness","Conscientiousness","Extraversion","Neuroticism","Openness","Self-Esteem") dat_table_S2.26[,2] <- paste0(dat_cor_r[,1],dat_cor_p[,1]) dat_table_S2.26[,3] <- paste0(dat_cor_r[,2],dat_cor_p[,2]) col_keys <- c("X1","X2","X3") head1 <- c("Variable","Study 2a","Study 2b") head <- data.frame(col_keys,head1, stringsAsFactors = FALSE) rm(col_keys,head1) tbl <- flextable(dat_table_S2.26) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:3, border=fp_border(width=2), part="header") tbl <- hline(tbl, i=1, j=1:3, border=fp_border(width=1.2), part="header") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j =~ X1, align="left", part="body") tbl <- width(tbl, j =~ X1, width=1.4) tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S2.26.docx") rm(dat2a_1,cor_dat2a_1,dat_cor_2a,dat_cor_2a_p,dat_cor_2a_r,dat2b_1,cor_dat2b_1,dat_cor_2b,dat_cor_2b_p,dat_cor_2b_r,dat_cor_p,dat_cor_r, dat_table_S2.26,format_p,format_r,head,tbl,doc) ##Table S2.27: Effect of NPI-Narcissism on Attraction to Supervisor Moderated by Supervisor's Leadership Style and Controlled for the Big Five and Self-Esteem in Studies 2a-2b ###regression model for Study 2a moderation_model2a_cov <- lm(Zattraction ~ Znpi + Zagr + Zcns + Zext + Zneu + Zopn + Zse + Zstyle_index_supervisor + ZNPIxSLS + ZAGRxSLS + ZCNSxSLS + ZEXTxSLS + ZNEUxSLS + ZOPNxSLS + ZSExSLS, data=dat2a) dat2a_mod_cov <- data.frame(summary(moderation_model2a_cov)$coef,confint(moderation_model2a_cov)) ###extract coefficients from Mplus-Output for Study 2b setwd(mplus_wd) output <- readModels("Supplement/npi_bfi_se_index_moderation.out", what = "parameters") output_est_ci <- sapply(output, "[", "ci.unstandardized") est_ci <- sapply(output_est_ci, "[", c("paramHeader","param","est","low2.5","up2.5")) output_t_p <- sapply(output, "[", "unstandardized") t_p <- sapply(output_t_p, "[", c("paramHeader","param","est_se","pval")) dat2b_est_ci <- data.frame(matrix(unlist(est_ci), nrow=28, ncol = 5, byrow=F), stringsAsFactors=FALSE) dat2b_t_p <- data.frame(matrix(unlist(t_p), nrow=28, ncol = 4, byrow=F), stringsAsFactors=FALSE) dat2b_mod_cov <- cbind(dat2b_est_ci,dat2b_t_p[,c(3:4)]) dat2b_mod_cov <- dat2b_mod_cov[c(11:18,9,8,2:7),] ###create table dat2a_mod_cov$Predictor <- c("(Intercept)","NPI","AGR","CNS","EXT","NEU","OPN","SE","SLS", "NPI x SLS","AGR x SLS","CNS x SLS","EXT x SLS","NEU x SLS","OPN x SLS","SE x SLS") dat2a_mod_cov$blank <- NA dat_table_S2.27 <- cbind(dat2a_mod_cov[,c(7,1,5:6,3:4,8)],dat2b_mod_cov[,c(3:7)]) colnames(dat_table_S2.27) <- c("Predictor","beta","ci_lower1","ci_upper1","t","p1","blank","zPE","ci_lower2","ci_upper2","z","p2") dat_table_S2.27[,2:12] <- sapply(dat_table_S2.27[,2:12], as.numeric) format_beta <- function(x){ ifelse(abs(x) < 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_table_S2.27[,c(2:4,8:10)] <- dat_table_S2.27[,c(2:4,8:10)] %>% mutate_if(is.numeric, format_beta) format_t <- function(x){ formatC(x, format = "f", digits = 2) } dat_table_S2.27[,c(5,11)] <- dat_table_S2.27[,c(5,11)] %>% mutate_if(is.numeric, format_t) format_p <- function(x){ ifelse(abs(x) < 0.001, "< .001", f_num(unlist(x), digits=3)) } dat_table_S2.27[,c(6,12)] <- dat_table_S2.27[,c(6,12)] %>% mutate_if(is.numeric, format_p) dat_table_S2.27$ci1 <- paste0("[", dat_table_S2.27$ci_lower1, ", ", dat_table_S2.27$ci_upper1, "]") dat_table_S2.27$ci2 <- paste0("[", dat_table_S2.27$ci_lower2, ", ", dat_table_S2.27$ci_upper2, "]") dat_table_S2.27 <- dat_table_S2.27[,c("Predictor","beta","ci1","t","p1","blank","zPE","ci2","z","p2")] dat_table_S2.27[1,c(2:5)] <- NA col_keys <- c("Predictor","beta","ci1","t","p1","blank","zPE","ci2","z","p2") head1 <- c("","Study 2a","Study 2a","Study 2a","Study 2a","","Study 2b","Study 2b","Study 2b","Study 2b") head2 <- c("Predictor","\u03B2","95% CI","t","p","","zPE","95% CI","z","p") head <- data.frame(col_keys,head1,head2, stringsAsFactors = FALSE) rm(col_keys,head1,head2) tbl <- flextable(dat_table_S2.27) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:10, border=fp_border(width=2), part="header") tbl <- merge_at(tbl, i=1, j=2:5, part="header") tbl <- merge_at(tbl, i=1, j=7:10, part="header") tbl <- hline(tbl, i=1, j=c(2:5,7:10), border=fp_border(width=1.2), part="header") tbl <- hline(tbl, i=2, j=1:10, border=fp_border(width=1.2), part="header") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j = c("Predictor"), align="left", part="body") tbl <- italic(tbl, i=2, j=c("t","p1","zPE","z","p2"), part="header") tbl <- width(tbl, j =~ Predictor, width=1.1) tbl <- width(tbl, j =~ beta + zPE, width=.5) tbl <- width(tbl, j =~ ci1 + ci2, width=.95) tbl <- width(tbl, j =~ t + z + p1 + p2, width=.6) tbl <- width(tbl, j =~ blank, width=.3) tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S2.27.docx") rm(moderation_model2a_cov,dat2a_mod_cov,output,output_est_ci,est_ci,output_t_p,t_p,dat2b_est_ci,dat2b_t_p,dat2b_mod_cov,dat_table_S2.27,format_beta,format_p,format_t,head,tbl,doc) ##Table S2.28: Results of the Moderated Mediation Model With NPI-Narcissism Controlled for the Big Five and Self-Esteem in Studies 2a-2b ###moderated mediation model for Study 2a set.seed(123) #setting the seed for reproducibility mediation_model2a_cov <- ' Zattraction ~ c*Znpi + Zagr + Zcns + Zext + Zneu + Zopn + Zse + Zstyle_index_supervisor + b*Zstyle_index_self + h*ZNPIxSLS + ZAGRxSLS + ZCNSxSLS + ZEXTxSLS + ZNEUxSLS + ZOPNxSLS + ZSExSLS + g*ZSHLSxSLS Zstyle_index_self ~ a1*Znpi + a2*Zagr + a3*Zcns + a4*Zext + a5*Zneu + a6*Zopn + a7*Zse ## index of moderated mediaion index_npi := a1 * g index_agr := a2 * g index_cns := a3 * g index_ext := a4 * g index_neu := a5 * g index_opn := a6 * g index_se := a7 * g ## conditional effects of NPI indirect_aut := a1*(b-2.404079*g) indirect_dem := a1*(b+1.826888*g) direct_aut := c-2.404079*h direct_dem := c+1.826888*h ## conditional effects of SHLS SHLS_aut := b-2.404079*g SHLS_dem := b+1.826888*g' results_cov <- sem(mediation_model2a_cov, data = dat2a, meanstructure = TRUE, se = "bootstrap", bootstrap = 10000) dat2a_modmed_cov <- data.frame(parameterEstimates(results_cov, ci = TRUE, level = 0.95, boot.ci.type = "bca.simple")) #bias-corrected percentile method dat2a_modmed_cov <- dat2a_modmed_cov[c(18:24,163,1:7,9,8,10:17),] ###extract coefficients from Mplus-Output for Study 2b setwd(mplus_wd) output <- readModels("Supplement/npi_bfi_se_index_mediation.out", what = "parameters") output_est_ci <- sapply(output, "[", "ci.unstandardized") est_ci <- sapply(output_est_ci, "[", c("paramHeader","param","est","low2.5","up2.5")) output_t_p <- sapply(output, "[", "unstandardized") t_p <- sapply(output_t_p, "[", c("paramHeader","param","est_se","pval")) dat2b_est_ci <- data.frame(matrix(unlist(est_ci), nrow=43, ncol = 5, byrow=F), stringsAsFactors=FALSE) dat2b_t_p <- data.frame(matrix(unlist(t_p), nrow=43, ncol = 4, byrow=F), stringsAsFactors=FALSE) dat2b_modmed_cov <- cbind(dat2b_est_ci,dat2b_t_p[,c(3:4)]) dat2b_modmed_cov <- dat2b_modmed_cov[c(1:7,21:22,24:29,23,19,18,11:17),] ###create table dat2a_modmed_cov$Predictor <- c("NPI","AGR","CNS","EXT","NEU","OPN","SE", "(Intercept)","NPI","AGR","CNS","EXT","NEU","OPN","SE","SHLS","SLS", "NPI x SLS","AGR x SLS","CNS x SLS","EXT x SLS","NEU x SLS","OPN x SLS","SE x SLS","SHLS x SLS") dat2a_modmed_cov$blank <- NA dat_table_S2.28 <- cbind(dat2a_modmed_cov[,c(11,5,9:10,7:8,12)],dat2b_modmed_cov[,c(3:7)]) colnames(dat_table_S2.28) <- c("Predictor","beta","ci_lower1","ci_upper1","z1","p1","blank","zPE","ci_lower2","ci_upper2","z2","p2") dat_table_S2.28[,2:12] <- sapply(dat_table_S2.28[,2:12], as.numeric) format_beta <- function(x){ ifelse(abs(x) < 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_table_S2.28[,c(2:4,8:10)] <- dat_table_S2.28[,c(2:4,8:10)] %>% mutate_if(is.numeric, format_beta) dat_table_S2.28[4,8] <- ".00" format_t <- function(x){ formatC(x, format = "f", digits = 2) } dat_table_S2.28[,c(5,11)] <- dat_table_S2.28[,c(5,11)] %>% mutate_if(is.numeric, format_t) dat_table_S2.28[4,11] <- "0.00" format_p <- function(x){ ifelse(abs(x) < 0.001, "< .001", f_num(unlist(x), digits=3)) } dat_table_S2.28[,c(6,12)] <- dat_table_S2.28[,c(6,12)] %>% mutate_if(is.numeric, format_p) dat_table_S2.28$ci1 <- paste0("[", dat_table_S2.28$ci_lower1, ", ", dat_table_S2.28$ci_upper1, "]") dat_table_S2.28$ci2 <- paste0("[", dat_table_S2.28$ci_lower2, ", ", dat_table_S2.28$ci_upper2, "]") dat_table_S2.28 <- dat_table_S2.28[,c("Predictor","beta","ci1","z1","p1","blank","zPE","ci2","z2","p2")] dat_table_S2.28[8,c(2:5)] <- NA dat_table_S2.28[26,2] <- "Subordinate's Hypothetical Leadership Style" dat_table_S2.28[27,2] <- "Attraction to Supervisor" dat_table_S2.28 <- dat_table_S2.28[c(26,1:7,27,8:25),] col_keys <- c("Predictor","beta","ci1","z1","p1","blank","zPE","ci2","z2","p2") head1 <- c("","Study 2a","Study 2a","Study 2a","Study 2a","","Study 2b","Study 2b","Study 2b","Study 2b") head2 <- c("Predictor","\u03B2","95% CI","z","p","","zPE","95% CI","z","p") head <- data.frame(col_keys,head1,head2, stringsAsFactors = FALSE) rm(col_keys,head1,head2) tbl <- flextable(dat_table_S2.28) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:10, border=fp_border(width=2), part="header") tbl <- merge_at(tbl, i=1, j=2:5, part="header") tbl <- merge_at(tbl, i=1, j=7:10, part="header") tbl <- merge_at(tbl, i=1, j=2:10, part="body") tbl <- merge_at(tbl, i=9, j=2:10, part="body") tbl <- hline(tbl, i=1, j=c(2:5,7:10), border=fp_border(width=1.2), part="header") tbl <- hline(tbl, i=2, j=1:10, border=fp_border(width=1.2), part="header") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j = c("Predictor"), align="left", part="body") tbl <- italic(tbl, i=2, j=c("z1","p1","zPE","z2","p2"), part="header") tbl <- width(tbl, j =~ Predictor, width=1.1) tbl <- width(tbl, j =~ beta + zPE, width=.5) tbl <- width(tbl, j =~ ci1 + ci2, width=.95) tbl <- width(tbl, j =~ z1 + z2 + p1 + p2, width=.6) tbl <- width(tbl, j =~ blank, width=.3) tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S2.28.docx") rm(mediation_model2a_cov,results_cov,dat2a_modmed_cov,output,output_est_ci,est_ci,output_t_p,t_p,dat2b_est_ci,dat2b_t_p,dat2b_modmed_cov,dat_table_S2.28,format_beta,format_t,format_p,head,tbl,doc) rm(dat2a,dat2b,mplus_wd) ######################################## #S3: Additional Results of Study 3 ######################################## #read data dat3 <- as.data.frame(fread("https://madata.bib.uni-mannheim.de/427/9/NarcSub_Study3_Data.csv", header = T, sep = ",")) #recode variables dat3$description_aut_self_r <- car::recode(dat3$description_aut_self, "1=7; 2=6; 3=5; 4=4; 5=3; 6=2; 7=1") dat3$lbdq2r_self <- car::recode(dat3$lbdq2_self, "1=5; 2=4; 3=3; 4=2; 5=1") dat3$lbdq4r_self <- car::recode(dat3$lbdq4_self, "1=5; 2=4; 3=3; 4=2; 5=1") dat3$lbdq6r_self <- car::recode(dat3$lbdq6_self, "1=5; 2=4; 3=3; 4=2; 5=1") dat3$lbdq8r_self <- car::recode(dat3$lbdq8_self, "1=5; 2=4; 3=3; 4=2; 5=1") dat3$lbdq10r_self <- car::recode(dat3$lbdq10_self, "1=5; 2=4; 3=3; 4=2; 5=1") dat3$lbdq12r_self <- car::recode(dat3$lbdq12_self, "1=5; 2=4; 3=3; 4=2; 5=1") dat3$lbdq14r_self <- car::recode(dat3$lbdq14_self, "1=5; 2=4; 3=3; 4=2; 5=1") dat3$lbdq16r_self <- car::recode(dat3$lbdq16_self, "1=5; 2=4; 3=3; 4=2; 5=1") dat3$lbdq18r_self <- car::recode(dat3$lbdq18_self, "1=5; 2=4; 3=3; 4=2; 5=1") dat3$lbdq20r_self <- car::recode(dat3$lbdq20_self, "1=5; 2=4; 3=3; 4=2; 5=1") #compute variables ##predictors dat3$narq_adm <- rowMeans(dat3[c("narq1", "narq2", "narq3", "narq5", "narq7", "narq8", "narq15", "narq16", "narq18")], na.rm=TRUE) dat3$Znarq_adm <- scale(dat3$narq_adm) dat3$narq_riv <- rowMeans(dat3[c("narq4", "narq6", "narq9", "narq10", "narq11", "narq12", "narq13", "narq14", "narq17")], na.rm=TRUE) dat3$Znarq_riv <- scale(dat3$narq_riv) dat3$narq <- rowMeans(dat3[c(42:59)], na.rm=TRUE) dat3$Znarq <- scale(dat3$narq) dat3$npi <- rowMeans(dat3[c(2:41)], na.rm=TRUE) dat3$Znpi <- scale(dat3$npi) dat3$npi_authority <- rowMeans( dat3[c("npi1", "npi5", "npi10", "npi11", "npi12", "npi27", "npi32", "npi33", "npi34", "npi36", "npi40")], na.rm=TRUE) dat3$Znpi_authority <- as.numeric(scale(dat3$npi_authority)) dat3$npi_exhibitionism <- rowMeans( dat3[c("npi4", "npi7", "npi15", "npi19", "npi20", "npi26", "npi28", "npi29", "npi30", "npi38")], na.rm=TRUE) dat3$Znpi_exhibitionism <- as.numeric(scale(dat3$npi_exhibitionism)) dat3$npi_entitlement <- rowMeans(dat3[c("npi13", "npi14", "npi24", "npi25")], na.rm=TRUE) dat3$Znpi_entitlement <- as.numeric(scale(dat3$npi_entitlement)) ##moderators dat3$Zstyle_supervisor <- scale(dat3$style_supervisor) dat3$Zorder <- scale(dat3$presentation_order) ##mediator dat3$descriptions_self <- rowMeans(dat3[c("description_dem_self","description_aut_self_r")], na.rm=TRUE) dat3$Zdescriptions_self <- scale(dat3$descriptions_self) dat3$lbdq_self <- rowMeans(dat3[c("lbdq1_self","lbdq3_self","lbdq5_self","lbdq7_self","lbdq9_self","lbdq11_self","lbdq13_self", "lbdq15_self","lbdq17_self","lbdq19_self","lbdq2r_self","lbdq4r_self","lbdq6r_self","lbdq8r_self", "lbdq10r_self","lbdq12r_self","lbdq14r_self","lbdq16r_self","lbdq18r_self","lbdq20r_self")], na.rm=TRUE) dat3$Zlbdq_self <- scale(dat3$lbdq_self) dat3$style_index_self <- rowMeans(dat3[c("Zdescriptions_self","Zlbdq_self")], na.rm = TRUE) dat3$Zstyle_index_self <- scale(dat3$style_index_self) ##interactions dat3$ZADMxSLS <- scale(dat3$Znarq_adm*dat3$Zstyle_supervisor) dat3$ZRIVxSLS <- scale(dat3$Znarq_riv*dat3$Zstyle_supervisor) dat3$ZNARQxSLS <- scale(dat3$Znarq*dat3$Zstyle_supervisor) dat3$ZNPIxSLS <- scale(dat3$Znpi*dat3$Zstyle_supervisor) dat3$ZSHLSxSLS <- scale(dat3$Zstyle_index_self*dat3$Zstyle_supervisor) dat3$ZADMxORD <- scale(dat3$Znarq_adm*dat3$Zorder) dat3$ZRIVxORD <- scale(dat3$Znarq_riv*dat3$Zorder) dat3$ZNARQxORD <- scale(dat3$Znarq*dat3$Zorder) dat3$ZNPIxORD <- scale(dat3$Znpi*dat3$Zorder) dat3$ZSLSxORD <- scale(dat3$Zstyle_supervisor*dat3$Zorder) dat3$ZADMxSLSxORD <- scale(dat3$Znarq_adm*dat3$Zstyle_supervisor*dat3$Zorder) dat3$ZRIVxSLSxORD <- scale(dat3$Znarq_riv*dat3$Zstyle_supervisor*dat3$Zorder) dat3$ZNARQxSLSxORD <- scale(dat3$Znarq*dat3$Zstyle_supervisor*dat3$Zorder) dat3$ZNPIxSLSxORD <- scale(dat3$Znpi*dat3$Zstyle_supervisor*dat3$Zorder) dat3$ZNPI_AUTxSLS <- as.numeric(scale(dat3$Znpi_authority*dat3$Zstyle_supervisor)) dat3$ZNPI_EXHxSLS <- as.numeric(scale(dat3$Znpi_exhibitionism*dat3$Zstyle_supervisor)) dat3$ZNPI_ENTxSLS <- as.numeric(scale(dat3$Znpi_entitlement*dat3$Zstyle_supervisor)) ##dependent variables dat3$Zperceived_style_supervisor <- scale(dat3$perceived_style_supervisor) dat3$zvalence <- scale(rowMeans(dat3[c("valence1","valence2","valence3")], na.rm=TRUE)) dat3$zsuccess <- scale(rowMeans(dat3[c("success1","success2","success3")], na.rm=TRUE)) dat3$boss_desirability3r <- 8 - dat3$boss_desirability3 dat3$zboss_desirability <- scale(rowMeans(dat3[c("boss_desirability1","boss_desirability2","boss_desirability3r")], na.rm=TRUE)) dat3$zliking <- scale(rowMeans(dat3[c("liking1","liking2","liking3")], na.rm=TRUE)) dat3$zcompetence <- scale(rowMeans(dat3[c("competence1","competence2","competence3")], na.rm=TRUE)) dat3$zwarmth <- scale(rowMeans(dat3[c("warmth1","warmth2","warmth3")], na.rm=TRUE)) dat3$zworking_conditions <- scale(rowMeans(dat3[c("working_conditions1","working_conditions2","working_conditions3")], na.rm=TRUE)) dat3$attraction <- rowMeans(dat3[c("zvalence","zsuccess","zboss_desirability","zliking","zcompetence","zwarmth","zworking_conditions")], na.rm=TRUE) dat3$Zattraction <- scale(dat3$attraction) #Separate Analyses for Narcissism Dimensions ##Tables S3.1 and S3.2: Effects of Narcissistic Admiration (Model 1) and Rivalry (Model 2) on Attraction to Supervisor ## Moderated by Supervisor's Leadership Style and Mediated by Subordinate's Hypothetical Leadership Style in Study 3 ###moderation models moderation_model_adm <- lm(Zattraction ~ Znarq_adm + Zstyle_supervisor + ZADMxSLS, data=dat3) moderation_model_riv <- lm(Zattraction ~ Znarq_riv + Zstyle_supervisor + ZRIVxSLS, data=dat3) dat3_mod <- rbind((data.frame(summary(moderation_model_adm)$coef,confint(moderation_model_adm))),(data.frame(summary(moderation_model_riv)$coef,confint(moderation_model_riv)))) ###simple slopes dat3$Zstyle_supervisor_dem <- dat3$Zstyle_supervisor - abs(max(dat3$Zstyle_supervisor)) dat3$Zstyle_supervisor_aut <- dat3$Zstyle_supervisor + abs(min(dat3$Zstyle_supervisor)) dat3$ZADMxSLS_dem <- scale(dat3$Znarq_adm*dat3$Zstyle_supervisor_dem) dat3$ZRIVxSLS_dem <- scale(dat3$Znarq_riv*dat3$Zstyle_supervisor_dem) dat3$ZADMxSLS_aut <- scale(dat3$Znarq_adm*dat3$Zstyle_supervisor_aut) dat3$ZRIVxSLS_aut <- scale(dat3$Znarq_riv*dat3$Zstyle_supervisor_aut) model_dem_adm <- lm(Zattraction ~ Znarq_adm + Zstyle_supervisor_dem + ZADMxSLS_dem, data=dat3) model_aut_adm <- lm(Zattraction ~ Znarq_adm + Zstyle_supervisor_aut + ZADMxSLS_aut, data=dat3) model_dem_riv <- lm(Zattraction ~ Znarq_riv + Zstyle_supervisor_dem + ZRIVxSLS_dem, data=dat3) model_aut_riv <- lm(Zattraction ~ Znarq_riv + Zstyle_supervisor_aut + ZRIVxSLS_aut, data=dat3) dat3_mod_dem <- rbind((data.frame(summary(model_dem_adm)$coef,confint(model_dem_adm))),(data.frame(summary(model_dem_riv)$coef,confint(model_dem_riv)))) dat3_mod_aut <- rbind((data.frame(summary(model_aut_adm)$coef,confint(model_aut_adm))),(data.frame(summary(model_aut_riv)$coef,confint(model_aut_riv)))) paste0("relation between admiration and atraction to democratic supervisor: beta = ", round(dat3_mod_dem[2,1], digits = 2), ", 95% CI [", round(dat3_mod_dem[2,5], digits = 2), ", ", round(dat3_mod_dem[2,6], digits = 2), "], t(597) = ", round(dat3_mod_dem[2,3], digits = 2), ", p = ", round(dat3_mod_dem[2,4], digits = 3)) paste0("relation between admiration and atraction to autocratic supervisor: beta = ", round(dat3_mod_aut[2,1], digits = 2), ", 95% CI [", round(dat3_mod_aut[2,5], digits = 2), ", ", round(dat3_mod_aut[2,6], digits = 2), "], t(597) = ", round(dat3_mod_aut[2,3], digits = 2), ", p = ", round(dat3_mod_aut[2,4], digits = 3)) ###moderated mediation models set.seed(123) #setting the seed for reproducibility mediation_model_adm <- ' Zattraction ~ c*Znarq_adm + Zstyle_supervisor + b*Zstyle_index_self + h*ZADMxSLS + g*ZSHLSxSLS Zstyle_index_self ~ a*Znarq_adm ## index of moderated mediaion index_adm := a * g ## conditional effects of ADM indirect_aut := a*(b-0.9941926*g) indirect_dem := a*(b+1.004168*g) direct_aut := c-0.9941926*h direct_dem := c+1.004168*h ## conditional effects of SHLS SHLS_aut := b-0.9941926*g SHLS_dem := b+1.004168*g' results_adm <- sem(mediation_model_adm, data = dat3, meanstructure = TRUE, se = "bootstrap", bootstrap = 10000) dat3_modmed_adm <- data.frame(parameterEstimates(results_adm, ci = TRUE, level = 0.95, boot.ci.type = "bca.simple")) #bias-corrected percentile method set.seed(123) #setting the seed for reproducibility mediation_model_riv <- ' Zattraction ~ c*Znarq_riv + Zstyle_supervisor + b*Zstyle_index_self + h*ZRIVxSLS + g*ZSHLSxSLS Zstyle_index_self ~ a*Znarq_riv ## index of moderated mediaion index_riv := a * g ## conditional effects of RIV indirect_aut := a*(b-0.9941926*g) indirect_dem := a*(b+1.004168*g) direct_aut := c-0.9941926*h direct_dem := c+1.004168*h ## conditional effects of SHLS SHLS_aut := b-0.9941926*g SHLS_dem := b+1.004168*g' results_riv <- sem(mediation_model_riv, data = dat3, meanstructure = TRUE, se = "bootstrap", bootstrap = 10000) dat3_modmed_riv <- data.frame(parameterEstimates(results_riv, ci = TRUE, level = 0.95, boot.ci.type = "bca.simple")) #bias-corrected percentile method dat3_modmed_index_simpleslopes <- rbind(dat3_modmed_adm[c(25:29),],dat3_modmed_riv[c(25:29),]) dat3_modmed <- rbind(dat3_modmed_adm[c(6,1,3,2,4:5),],dat3_modmed_riv[c(6,1,3,2,4:5),]) ###create Table S3.1: Results dat3_mod <- dat3_mod[-c(1,5), ] dat3_mod[7:12,] <- NA dat3_mod <- dat3_mod[c(7,1,8,2:3,9:10,4,11,5:6,12),] dat3_mod$Predictor <- c("ADM","ADM","SHLS","SLS","ADM x SLS","SHLS x SLS","RIV","RIV","SHLS","SLS","RIV x SLS","SHLS x SLS") dat3_mod$blank <- NA dat_table_S3.1 <- cbind(dat3_mod[,c(7,1,5:6,3:4,8)],dat3_modmed[,c(5,9:10,7:8)]) colnames(dat_table_S3.1) <- c("Predictor","beta1","ci_lower1","ci_upper1","t","p1","blank","beta2","ci_lower2","ci_upper2","z","p2") dat_table_S3.1[,2:12] <- sapply(dat_table_S3.1[,2:12], as.numeric) format_beta <- function(x){ ifelse(abs(x) < 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_table_S3.1[,c(2:4,8:10)] <- dat_table_S3.1[,c(2:4,8:10)] %>% mutate_if(is.numeric, format_beta) format_t <- function(x){ formatC(x, format = "f", digits = 2) } dat_table_S3.1[,c(5,11)] <- dat_table_S3.1[,c(5,11)] %>% mutate_if(is.numeric, format_t) format_p <- function(x){ ifelse(abs(x) < 0.001, "< .001", f_num(unlist(x), digits=3)) } dat_table_S3.1[,c(6,12)] <- dat_table_S3.1[,c(6,12)] %>% mutate_if(is.numeric, format_p) dat_table_S3.1$ci1 <- paste0("[", dat_table_S3.1$ci_lower1, ", ", dat_table_S3.1$ci_upper1, "]") dat_table_S3.1$ci2 <- paste0("[", dat_table_S3.1$ci_lower2, ", ", dat_table_S3.1$ci_upper2, "]") dat_table_S3.1 <- dat_table_S3.1[,c("Predictor","beta1","ci1","t","p1","blank","beta2","ci2","z","p2")] dat_table_S3.1[c(1,3,6,7,9,12),c(2:5)] <- NA dat_table_S3.1[13,1] <- "Model 1" dat_table_S3.1[14,2] <- "Subordinate's Hypothetical Leadership Style" dat_table_S3.1[15,2] <- "Attraction to Supervisor" dat_table_S3.1[16,1] <- "Model 2" dat_table_S3.1[17,2] <- "Subordinate's Hypothetical Leadership Style" dat_table_S3.1[18,2] <- "Attraction to Supervisor" dat_table_S3.1 <- dat_table_S3.1[c(13:14,1,15,2:6,16:17,7,18,8:12),] col_keys <- c("Predictor","beta1","ci1","t","p1","blank","beta2","ci2","z","p2") head1 <- c("","Moderation model","Moderation model","Moderation model","Moderation model","","Moderated mediation model","Moderated mediation model","Moderated mediation model","Moderated mediation model") head2 <- c("Predictor","\u03B2","95% CI","t","p","","\u03B2","95% CI","z","p") head <- data.frame(col_keys,head1,head2, stringsAsFactors = FALSE) rm(col_keys,head1,head2) tbl <- flextable(dat_table_S3.1) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:10, border=fp_border(width=2), part="header") tbl <- merge_at(tbl, i=1, j=2:5, part="header") tbl <- merge_at(tbl, i=1, j=7:10, part="header") tbl <- merge_at(tbl, i=2, j=2:10, part="body") tbl <- merge_at(tbl, i=4, j=2:10, part="body") tbl <- merge_at(tbl, i=11, j=2:10, part="body") tbl <- merge_at(tbl, i=13, j=2:10, part="body") tbl <- hline(tbl, i=1, j=c(2:5,7:10), border=fp_border(width=1.2), part="header") tbl <- hline(tbl, i=2, j=1:10, border=fp_border(width=1.2), part="header") tbl <- hline(tbl, i=9, j=1:10, border=fp_border(width=1.2), part="body") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j = c("Predictor"), align="left", part="body") tbl <- italic(tbl, i=2, j=c("t","p1","z","p2"), part="header") tbl <- width(tbl, j =~ Predictor, width=1.1) tbl <- width(tbl, j =~ beta1 + beta2, width=.5) tbl <- width(tbl, j =~ ci1 + ci2, width=.95) tbl <- width(tbl, j =~ t + z + p1 + p2, width=.6) tbl <- width(tbl, j =~ blank, width=.3) tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S3.1.docx") ###create Table S3.2: Index of Moderated Mediation, Conditional Indirect Effects, and Conditional Direct Effects dat3_modmed_index_simpleslopes <- dat3_modmed_index_simpleslopes[c(1,3,2,5,4,6,8,7,10,9),] dat3_modmed_index_simpleslopes$Effect <- c(" ADM"," Democratic"," Autocratic"," Democratic"," Autocratic"," RIV"," Democratic"," Autocratic"," Democratic"," Autocratic") dat_table_S3.2 <- dat3_modmed_index_simpleslopes[,c(11,5,9:10,7:8)] colnames(dat_table_S3.2) <- c("Effect","beta1","ci_lower1","ci_upper1","t","p1") dat_table_S3.2[,2:6] <- sapply(dat_table_S3.2[,2:6], as.numeric) format_beta <- function(x){ ifelse(abs(x) < 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_table_S3.2[,c(2:4)] <- dat_table_S3.2[,c(2:4)] %>% mutate_if(is.numeric, format_beta) format_t <- function(x){ formatC(x, format = "f", digits = 2) } dat_table_S3.2[,5] <- sapply(dat_table_S3.2[,5],format_t) format_p <- function(x){ ifelse(abs(x) < 0.001, "< .001", f_num(unlist(x), digits=3)) } dat_table_S3.2[,6] <- sapply(dat_table_S3.2[,6],format_p) dat_table_S3.2$ci1 <- paste0("[", dat_table_S3.2$ci_lower1, ", ", dat_table_S3.2$ci_upper1, "]") dat_table_S3.2 <- dat_table_S3.2[,c("Effect","beta1","ci1","t","p1")] dat_table_S3.2[11,1] <- "Index of Moderated Mediation for ADM in Model 1" dat_table_S3.2[12,1] <- "Conditional Indirect Effects of ADM on Attraction to Supervisor in Model 1" dat_table_S3.2[13,1] <- "Conditional Direct Effects of ADM on Attraction to Supervisor in Model 1" dat_table_S3.2[14,1] <- "Index of Moderated Mediation for RIV in Model 2" dat_table_S3.2[15,1] <- "Conditional Indirect Effects of RIV on Attraction to Supervisor in Model 2" dat_table_S3.2[16,1] <- "Conditional Direct Effects of RIV on Attraction to Supervisor in Model 2" dat_table_S3.2 <- dat_table_S3.2[c(11,1,12,2:3,13,4:5,14,6,15,7:8,16,9:10),] col_keys <- c("Effect","beta1","ci1","t","p1") head1 <- c("Effect","\u03B2","95% CI","t","p") head <- data.frame(col_keys,head1, stringsAsFactors = FALSE) rm(col_keys,head1) tbl <- flextable(dat_table_S3.2) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:5, border=fp_border(width=2), part="header") tbl <- hline(tbl, i=1, j=1:5, border=fp_border(width=1.2), part="header") tbl <- merge_at(tbl, i=1, j=1:5, part="body") tbl <- merge_at(tbl, i=3, j=1:5, part="body") tbl <- merge_at(tbl, i=6, j=1:5, part="body") tbl <- merge_at(tbl, i=9, j=1:5, part="body") tbl <- merge_at(tbl, i=11, j=1:5, part="body") tbl <- merge_at(tbl, i=14, j=1:5, part="body") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j = c("Effect"), align="left", part="body") tbl <- align(tbl, i = c(1,3,6,9,11,14), align="left", part="body") tbl <- italic(tbl, i=1, j=c("t","p1"), part="header") tbl <- width(tbl, j =~ Effect, width=2.7) tbl <- width(tbl, j =~ beta1, width=.5) tbl <- width(tbl, j =~ ci1, width=.95) tbl <- width(tbl, j =~ t, width=.6) tbl <- width(tbl, j =~ p1, width=.6) tbl <- height_all(tbl, height=.2, part="all") tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S3.2.docx") rm(moderation_model_adm,moderation_model_riv,dat3_mod,model_dem_adm,model_aut_adm,model_dem_riv,model_aut_riv,dat3_mod_dem,dat3_mod_aut, mediation_model_adm,results_adm,dat3_modmed_adm,mediation_model_riv,results_riv,dat3_modmed_riv,dat3_modmed,dat3_modmed_index_simpleslopes, dat_table_S3.1,dat_table_S3.2,format_beta,format_t,format_p,head,tbl,doc) #Perceived Leadership Style of the Fictitious Supervisor ##Table S3.3: Unique Effects of Narcissistic Admiration and Rivalry on Perceived Leadership Style of the Fictitious Supervisor Moderated by Supervisor's Leadership Style in Study 3 ###regression model moderation_model_perceived_style <- lm(Zperceived_style_supervisor ~ Znarq_adm + Znarq_riv + Zstyle_supervisor + ZADMxSLS + ZRIVxSLS, data=dat3) dat3_perceived_style <- data.frame(summary(moderation_model_perceived_style)$coef,confint(moderation_model_perceived_style)) ###create table dat3_perceived_style <- dat3_perceived_style[-1, ] dat3_perceived_style$Predictor <- c("ADM","RIV","SLS","ADM x SLS","RIV x SLS") dat_table_S3.3 <- dat3_perceived_style[,c(7,1,5:6,3:4)] colnames(dat_table_S3.3) <- c("Predictor","beta1","ci_lower1","ci_upper1","t","p1") dat_table_S3.3[,2:6] <- sapply(dat_table_S3.3[,2:6], as.numeric) format_beta <- function(x){ ifelse(abs(x) < 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_table_S3.3[,c(2:4)] <- dat_table_S3.3[,c(2:4)] %>% mutate_if(is.numeric, format_beta) format_t <- function(x){ formatC(x, format = "f", digits = 2) } dat_table_S3.3[,5] <- sapply(dat_table_S3.3[,5], format_t) format_p <- function(x){ ifelse(abs(x) < 0.001, "< .001", f_num(unlist(x), digits=3)) } dat_table_S3.3[,6] <- sapply(dat_table_S3.3[,6], format_p) dat_table_S3.3$ci1 <- paste0("[", dat_table_S3.3$ci_lower1, ", ", dat_table_S3.3$ci_upper1, "]") dat_table_S3.3$ci2 <- paste0("[", dat_table_S3.3$ci_lower2, ", ", dat_table_S3.3$ci_upper2, "]") dat_table_S3.3 <- dat_table_S3.3[,c("Predictor","beta1","ci1","t","p1")] col_keys <- c("Predictor","beta1","ci1","t","p1") head1 <- c("Predictor","\u03B2","95% CI","t","p") head <- data.frame(col_keys,head1, stringsAsFactors = FALSE) rm(col_keys,head1) tbl <- flextable(dat_table_S3.3) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:5, border=fp_border(width=2), part="header") tbl <- hline(tbl, i=1, j=1:5, border=fp_border(width=1.2), part="header") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j = c("Predictor"), align="left", part="body") tbl <- italic(tbl, i=1, j=c("t","p1"), part="header") tbl <- width(tbl, j =~ Predictor, width=1.1) tbl <- width(tbl, j =~ beta1, width=.5) tbl <- width(tbl, j =~ ci1, width=.95) tbl <- width(tbl, j =~ t, width=.6) tbl <- width(tbl, j =~ p1, width=.6) tbl <- height_all(tbl, height=.2, part="all") tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S3.3.docx") ###simple slopes of the interaction between admiration and supervisor's leadership style dat3$Znarq_adm_high <- dat3$Znarq_adm - 1 dat3$Znarq_adm_low <- dat3$Znarq_adm + 1 dat3$ZADM_highxSLS <- scale(dat3$Znarq_adm_high*dat3$Zstyle_supervisor) dat3$ZADM_lowxSLS <- scale(dat3$Znarq_adm_low*dat3$Zstyle_supervisor) model_adm_high <- lm(Zperceived_style_supervisor ~ Znarq_adm_high + Znarq_riv + Zstyle_supervisor + ZADM_highxSLS + ZRIVxSLS, data=dat3) model_adm_low <- lm(Zperceived_style_supervisor ~ Znarq_adm_low + Znarq_riv + Zstyle_supervisor + ZADM_lowxSLS + ZRIVxSLS, data=dat3) dat3_adm_high <- data.frame(summary(model_adm_high)$coef,confint(model_adm_high)) dat3_adm_low <- data.frame(summary(model_adm_low)$coef,confint(model_adm_low)) paste0("difference between the two leader profiles for subordinates higher in narcissistic admiration: beta = ", round(dat3_adm_high[4,1], digits = 2), ", 95% CI [", round(dat3_adm_high[4,5], digits = 2), ", ", round(dat3_adm_high[4,6], digits = 2), "], t(595) = ", round(dat3_adm_high[4,3], digits = 2), ", p = ", round(dat3_adm_high[4,4], digits = 3)) paste0("difference between the two leader profiles for subordinates lower in narcissistic admiration: beta = ", round(dat3_adm_low[4,1], digits = 2), ", 95% CI [", round(dat3_adm_low[4,5], digits = 2), ", ", round(dat3_adm_low[4,6], digits = 2), "], t(595) = ", round(dat3_adm_low[4,3], digits = 2), ", p = ", round(dat3_adm_low[4,4], digits = 3)) rm(moderation_model_perceived_style,dat3_perceived_style,dat_table_S3.3,format_beta,format_t,format_p,head,tbl,doc,model_adm_high,model_adm_low,dat3_adm_high,dat3_adm_low) #Presentation Order of Democratic and Autocratic Leadership Items ##Table S3.4: Unique Effects of Narcissistic Admiration and Rivalry on Attraction to Supervisor Moderated by Supervisor's Leadership Style and Presentation Order of Democratic and Autocratic Leadership Items in Study 3 ###regression model model_order <- lm(Zattraction ~ Znarq_adm + Znarq_riv + Zstyle_supervisor + Zorder + ZADMxSLS + ZRIVxSLS + ZADMxORD + ZRIVxORD + ZSLSxORD + ZADMxSLSxORD + ZRIVxSLSxORD, data=dat3) dat_table_S3.4 <- data.frame(summary(model_order)$coef,confint(model_order)) ###create table dat_table_S3.4 <- dat_table_S3.4[!(row.names(dat_table_S3.4) %in% "(Intercept)"), ] dat_table_S3.4$Predictor <- c("ADM","RIV","SLS","Order","ADM x SLS","RIV x SLS","ADM x Order","RIV x Order","SLS x Order","ADM x SLS x Order","RIV x SLS x Order") dat_table_S3.4 <- dat_table_S3.4[,c(7,1,5:6,3:4)] colnames(dat_table_S3.4) <- c("Predictor","beta","ci_lower","ci_upper","t","p") dat_table_S3.4[,2:6] <- sapply(dat_table_S3.4[,2:6], as.numeric) format_beta <- function(x){ ifelse(abs(x) < 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_table_S3.4[,c(2:4)] <- dat_table_S3.4[,c(2:4)] %>% mutate_if(is.numeric, format_beta) format_t <- function(x){ formatC(x, format = "f", digits = 2) } dat_table_S3.4[,5] <- sapply(dat_table_S3.4[,5], format_t) format_p <- function(x){ ifelse(abs(x) < 0.001, "< .001", f_num(unlist(x), digits=3)) } dat_table_S3.4[,6] <- sapply(dat_table_S3.4[,6], format_p) dat_table_S3.4$ci <- paste0("[", dat_table_S3.4$ci_lower, ", ", dat_table_S3.4$ci_upper, "]") dat_table_S3.4 <- dat_table_S3.4[,c("Predictor","beta","ci","t","p")] col_keys <- c("Predictor","beta","ci","t","p") head1 <- c("Predictor","\u03B2","95% CI","t","p") head <- data.frame(col_keys,head1, stringsAsFactors = FALSE) rm(col_keys,head1) tbl <- flextable(dat_table_S3.4) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:5, border=fp_border(width=2), part="header") tbl <- hline(tbl, i=1, j=1:5, border=fp_border(width=1.2), part="header") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j = c("Predictor"), align="left", part="body") tbl <- italic(tbl, i=1, j=c("t","p"), part="header") tbl <- width(tbl, j =~ Predictor, width=1.6) tbl <- width(tbl, j =~ beta, width=.5) tbl <- width(tbl, j =~ ci, width=.95) tbl <- width(tbl, j =~ t, width=.6) tbl <- width(tbl, j =~ p, width=.6) tbl <- height_all(tbl, height=.2, part="all") tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S3.4.docx") ###simple slopes of the interaction between supervisor's leadership style and presentation order dat3$Zorder_aut_dem <- dat3$Zorder - 0.5 dat3$Zorder_dem_aut <- dat3$Zorder + 0.5 dat3$ZADMxORD_aut_dem <- scale(dat3$Znarq_adm*dat3$Zorder_aut_dem) dat3$ZRIVxORD_aut_dem <- scale(dat3$Znarq_riv*dat3$Zorder_aut_dem) dat3$ZSLSxORD_aut_dem <- scale(dat3$Zstyle_supervisor*dat3$Zorder_aut_dem) dat3$ZADMxSLSxORD_aut_dem <- scale(dat3$Znarq_adm*dat3$Zstyle_supervisor*dat3$Zorder_aut_dem) dat3$ZRIVxSLSxORD_aut_dem <- scale(dat3$Znarq_riv*dat3$Zstyle_supervisor*dat3$Zorder_aut_dem) dat3$ZADMxORD_dem_aut <- scale(dat3$Znarq_adm*dat3$Zorder_dem_aut) dat3$ZRIVxORD_dem_aut <- scale(dat3$Znarq_riv*dat3$Zorder_dem_aut) dat3$ZSLSxORD_dem_aut <- scale(dat3$Zstyle_supervisor*dat3$Zorder_dem_aut) dat3$ZADMxSLSxORD_dem_aut <- scale(dat3$Znarq_adm*dat3$Zstyle_supervisor*dat3$Zorder_dem_aut) dat3$ZRIVxSLSxORD_dem_aut <- scale(dat3$Znarq_riv*dat3$Zstyle_supervisor*dat3$Zorder_dem_aut) model_order_aut_dem <- lm(Zattraction ~ Znarq_adm + Znarq_riv + Zstyle_supervisor + Zorder_aut_dem + ZADMxSLS + ZRIVxSLS + ZADMxORD_aut_dem + ZRIVxORD_aut_dem + ZSLSxORD_aut_dem + ZADMxSLSxORD_aut_dem + ZRIVxSLSxORD_aut_dem, data=dat3) model_order_dem_aut <- lm(Zattraction ~ Znarq_adm + Znarq_riv + Zstyle_supervisor + Zorder_dem_aut + ZADMxSLS + ZRIVxSLS + ZADMxORD_dem_aut + ZRIVxORD_dem_aut + ZSLSxORD_dem_aut + ZADMxSLSxORD_dem_aut + ZRIVxSLSxORD_dem_aut, data=dat3) dat3_order_aut_dem <- data.frame(summary(model_order_aut_dem)$coef,confint(model_order_aut_dem)) dat3_order_dem_aut <- data.frame(summary(model_order_dem_aut)$coef,confint(model_order_dem_aut)) paste0("difference between the two leader profiles when democratic leadership items were presented first: beta = ", round(dat3_order_dem_aut[4,1], digits = 2), ", 95% CI [", round(dat3_order_dem_aut[4,5], digits = 2), ", ", round(dat3_order_dem_aut[4,6], digits = 2), "], t(589) = ", round(dat3_order_dem_aut[4,3], digits = 2), ", p = ", round(dat3_order_dem_aut[4,4], digits = 3)) paste0("difference between the two leader profiles when autocratic leadership items were presented first: beta = ", round(dat3_order_aut_dem[4,1], digits = 2), ", 95% CI [", round(dat3_order_aut_dem[4,5], digits = 2), ", ", round(dat3_order_aut_dem[4,6], digits = 2), "], t(589) = ", round(dat3_order_aut_dem[4,3], digits = 2), ", p = ", round(dat3_order_aut_dem[4,4], digits = 3)) rm(model_order,dat_table_S3.4,format_beta,format_t,format_p,head,tbl,doc,model_order_aut_dem,model_order_dem_aut,dat3_order_aut_dem,dat3_order_dem_aut) #NARQ Total Score ##Internal Consistency and Descriptive Statistics of the NARQ Total Score dat.narq <- subset(dat3, select = c(42:59)) round(psych::alpha(dat.narq, na.rm=T)$total[1], digits = 2) round(mean(dat3$narq),2) round(sd(dat3$narq),2) rm(dat.narq) ##Table S3.5: Effect of the NARQ Total Score on Perceived Leadership Style of the Fictitious Supervisor Moderated by Supervisor's Leadership Style in Study 3 ###regression model moderation_model_perceived_style <- lm(Zperceived_style_supervisor ~ Znarq + Zstyle_supervisor + ZNARQxSLS, data=dat3) dat3_perceived_style <- data.frame(summary(moderation_model_perceived_style)$coef,confint(moderation_model_perceived_style)) ###create table dat3_perceived_style <- dat3_perceived_style[-1, ] dat3_perceived_style$Predictor <- c("NARQ","SLS","NARQ x SLS") dat_table_S3.5 <- dat3_perceived_style[,c(7,1,5:6,3:4)] colnames(dat_table_S3.5) <- c("Predictor","beta1","ci_lower1","ci_upper1","t","p1") dat_table_S3.5[,2:6] <- sapply(dat_table_S3.5[,2:6], as.numeric) format_beta <- function(x){ ifelse(abs(x) < 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_table_S3.5[,c(2:4)] <- dat_table_S3.5[,c(2:4)] %>% mutate_if(is.numeric, format_beta) format_t <- function(x){ formatC(x, format = "f", digits = 2) } dat_table_S3.5[,5] <- sapply(dat_table_S3.5[,5], format_t) format_p <- function(x){ ifelse(abs(x) < 0.001, "< .001", f_num(unlist(x), digits=3)) } dat_table_S3.5[,6] <- sapply(dat_table_S3.5[,6], format_p) dat_table_S3.5$ci1 <- paste0("[", dat_table_S3.5$ci_lower1, ", ", dat_table_S3.5$ci_upper1, "]") dat_table_S3.5 <- dat_table_S3.5[,c("Predictor","beta1","ci1","t","p1")] col_keys <- c("Predictor","beta1","ci1","t","p1") head1 <- c("Predictor","\u03B2","95% CI","t","p") head <- data.frame(col_keys,head1, stringsAsFactors = FALSE) rm(col_keys,head1) tbl <- flextable(dat_table_S3.5) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:5, border=fp_border(width=2), part="header") tbl <- hline(tbl, i=1, j=1:5, border=fp_border(width=1.2), part="header") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j = c("Predictor"), align="left", part="body") tbl <- italic(tbl, i=1, j=c("t","p1"), part="header") tbl <- width(tbl, j =~ Predictor, width=1.1) tbl <- width(tbl, j =~ beta1, width=.5) tbl <- width(tbl, j =~ ci1, width=.95) tbl <- width(tbl, j =~ t, width=.6) tbl <- width(tbl, j =~ p1, width=.6) tbl <- height_all(tbl, height=.2, part="all") tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S3.5.docx") ###simple slopes of the interaction between the NARQ total score and supervisor's leadership style dat3$Znarq_high <- dat3$Znarq - 1 dat3$Znarq_low <- dat3$Znarq + 1 dat3$Znarq_highxSLS <- scale(dat3$Znarq_high*dat3$Zstyle_supervisor) dat3$Znarq_lowxSLS <- scale(dat3$Znarq_low*dat3$Zstyle_supervisor) model_narq_high <- lm(Zperceived_style_supervisor ~ Znarq_high + Zstyle_supervisor + Znarq_highxSLS, data=dat3) model_narq_low <- lm(Zperceived_style_supervisor ~ Znarq_low + Zstyle_supervisor + Znarq_lowxSLS, data=dat3) dat3_narq_high <- data.frame(summary(model_narq_high)$coef,confint(model_narq_high)) dat3_narq_low <- data.frame(summary(model_narq_low)$coef,confint(model_narq_low)) paste0("difference between the two leader profiles for more narcissistic subordinates: beta = ", round(dat3_narq_high[3,1], digits = 2), ", 95% CI [", round(dat3_narq_high[3,5], digits = 2), ", ", round(dat3_narq_high[3,6], digits = 2), "], t(597) = ", round(dat3_narq_high[3,3], digits = 2), ", p = ", round(dat3_narq_high[3,4], digits = 3)) paste0("difference between the two leader profiles for less narcissistic subordinates: beta = ", round(dat3_narq_low[3,1], digits = 2), ", 95% CI [", round(dat3_narq_low[3,5], digits = 2), ", ", round(dat3_narq_low[3,6], digits = 2), "], t(597) = ", round(dat3_narq_low[3,3], digits = 2), ", p = ", round(dat3_narq_low[3,4], digits = 3)) rm(moderation_model_perceived_style,dat3_perceived_style,dat_table_S3.5,format_beta,format_t,format_p,head,tbl,doc,model_narq_high,model_narq_low,dat3_narq_high,dat3_narq_low) ##Table S3.6: Effect of the NARQ Total Score on Attraction to Supervisor Moderated by Supervisor's Leadership Style and Mediated by Subordinate's Hypothetical Leadership Style in Study 3 ###moderation model moderation_model_narq <- lm(Zattraction ~ Znarq + Zstyle_supervisor + ZNARQxSLS, data=dat3) dat3_mod_narq <- data.frame(summary(moderation_model_narq)$coef,confint(moderation_model_narq)) ###simple slopes dat3$Zstyle_supervisor_dem <- dat3$Zstyle_supervisor - abs(max(dat3$Zstyle_supervisor)) dat3$Zstyle_supervisor_aut <- dat3$Zstyle_supervisor + abs(min(dat3$Zstyle_supervisor)) dat3$ZNARQxSLS_dem <- scale(dat3$Znarq*dat3$Zstyle_supervisor_dem) dat3$ZNARQxSLS_aut <- scale(dat3$Znarq*dat3$Zstyle_supervisor_aut) model_dem <- lm(Zattraction ~ Znarq + Zstyle_supervisor_dem + ZNARQxSLS_dem, data=dat3) model_aut <- lm(Zattraction ~ Znarq + Zstyle_supervisor_aut + ZNARQxSLS_aut, data=dat3) dat3_mod_dem <- data.frame(summary(model_dem)$coef,confint(model_dem)) dat3_mod_aut <- data.frame(summary(model_aut)$coef,confint(model_aut)) paste0("relation between the NARQ total score and atraction to the democratic supervisor: beta = ", round(dat3_mod_dem[2,1], digits = 2), ", 95% CI [", round(dat3_mod_dem[2,5], digits = 2), ", ", round(dat3_mod_dem[2,6], digits = 2), "], t(597) = ", round(dat3_mod_dem[2,3], digits = 2), ", p = ", round(dat3_mod_dem[2,4], digits = 3)) paste0("relation between the NARQ total score and atraction to the autocratic supervisor: beta = ", round(dat3_mod_aut[2,1], digits = 2), ", 95% CI [", round(dat3_mod_aut[2,5], digits = 2), ", ", round(dat3_mod_aut[2,6], digits = 2), "], t(597) = ", round(dat3_mod_aut[2,3], digits = 2), ", p = ", round(dat3_mod_aut[2,4], digits = 3)) ###moderated mediation model set.seed(123) #setting the seed for reproducibility mediation_model_narq <- ' Zattraction ~ c*Znarq + Zstyle_supervisor + b*Zstyle_index_self + h*ZNARQxSLS + g*ZSHLSxSLS Zstyle_index_self ~ a*Znarq ## index of moderated mediaion index_narq := a * g ## conditional effects of narq indirect_aut := a*(b-0.9941926*g) indirect_dem := a*(b+1.004168*g) direct_aut := c-0.9941926*h direct_dem := c+1.004168*h ## conditional effects of SHLS SHLS_aut := b-0.9941926*g SHLS_dem := b+1.004168*g' results <- sem(mediation_model_narq, data = dat3, meanstructure = TRUE, se = "bootstrap", bootstrap = 10000) dat3_modmed_narq <- data.frame(parameterEstimates(results, ci = TRUE, level = 0.95, boot.ci.type = "bca.simple")) #bias-corrected percentile method dat3_modmed_index_simpleslopes <- dat3_modmed_narq[c(25:31),] dat3_modmed_narq <- dat3_modmed_narq[c(6,1,3,2,4:5),] ###create table dat3_mod_narq[c(1,5:6),] <- NA dat3_mod_narq <- dat3_mod_narq[c(1:2,5,3:4,6),] dat3_mod_narq$Predictor <- c("NARQ","NARQ","SHLS","SLS","NARQ x SLS","SHLS x SLS") dat3_mod_narq$blank <- NA dat_table_S3.6 <- cbind(dat3_mod_narq[,c(7,1,5:6,3:4,8)],dat3_modmed_narq[,c(5,9:10,7:8)]) colnames(dat_table_S3.6) <- c("Predictor","beta1","ci_lower1","ci_upper1","t","p1","blank","beta2","ci_lower2","ci_upper2","z","p2") dat_table_S3.6[,2:12] <- sapply(dat_table_S3.6[,2:12], as.numeric) format_beta <- function(x){ ifelse(abs(x) < 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_table_S3.6[,c(2:4,8:10)] <- dat_table_S3.6[,c(2:4,8:10)] %>% mutate_if(is.numeric, format_beta) format_t <- function(x){ formatC(x, format = "f", digits = 2) } dat_table_S3.6[,c(5,11)] <- dat_table_S3.6[,c(5,11)] %>% mutate_if(is.numeric, format_t) format_p <- function(x){ ifelse(abs(x) < 0.001, "< .001", f_num(unlist(x), digits=3)) } dat_table_S3.6[,c(6,12)] <- dat_table_S3.6[,c(6,12)] %>% mutate_if(is.numeric, format_p) dat_table_S3.6$ci1 <- paste0("[", dat_table_S3.6$ci_lower1, ", ", dat_table_S3.6$ci_upper1, "]") dat_table_S3.6$ci2 <- paste0("[", dat_table_S3.6$ci_lower2, ", ", dat_table_S3.6$ci_upper2, "]") dat_table_S3.6 <- dat_table_S3.6[,c("Predictor","beta1","ci1","t","p1","blank","beta2","ci2","z","p2")] dat_table_S3.6[c(1,3,6),c(2:5)] <- NA dat_table_S3.6[7,2] <- "Subordinate's Hypothetical Leadership Style" dat_table_S3.6[8,2] <- "Attraction to Supervisor" dat_table_S3.6 <- dat_table_S3.6[c(7,1,8,2:6),] col_keys <- c("Predictor","beta1","ci1","t","p1","blank","beta2","ci2","z","p2") head1 <- c("","Moderation model","Moderation model","Moderation model","Moderation model","","Moderated mediation model","Moderated mediation model","Moderated mediation model","Moderated mediation model") head2 <- c("Predictor","\u03B2","95% CI","t","p","","\u03B2","95% CI","z","p") head <- data.frame(col_keys,head1,head2, stringsAsFactors = FALSE) rm(col_keys,head1,head2) tbl <- flextable(dat_table_S3.6) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:10, border=fp_border(width=2), part="header") tbl <- merge_at(tbl, i=1, j=2:5, part="header") tbl <- merge_at(tbl, i=1, j=7:10, part="header") tbl <- merge_at(tbl, i=1, j=2:10, part="body") tbl <- merge_at(tbl, i=3, j=2:10, part="body") tbl <- hline(tbl, i=1, j=c(2:5,7:10), border=fp_border(width=1.2), part="header") tbl <- hline(tbl, i=2, j=1:10, border=fp_border(width=1.2), part="header") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j = c("Predictor"), align="left", part="body") tbl <- italic(tbl, i=2, j=c("t","p1","z","p2"), part="header") tbl <- width(tbl, j =~ Predictor, width=1.1) tbl <- width(tbl, j =~ beta1 + beta2, width=.45) tbl <- width(tbl, j =~ ci1 + ci2, width=.95) tbl <- width(tbl, j =~ t + z, width=.55) tbl <- width(tbl, j =~ p1 + p2, width=.6) tbl <- width(tbl, j =~ blank, width=.3) tbl <- height_all(tbl, height=.2, part="all") tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S3.6.docx") ###simple slopes of the interaction between subordinate's hypothetical leadership style and supervisor's leadership style paste0("relation between SHLS and atraction to democratic supervisor: beta = ", round(dat3_modmed_index_simpleslopes[7,5], digits = 2), ", 95% CI [", round(dat3_modmed_index_simpleslopes[7,9], digits = 2), ", ", round(dat3_modmed_index_simpleslopes[7,10], digits = 2), "], z = ", round(dat3_modmed_index_simpleslopes[7,7], digits = 2), ", p = ", round(dat3_modmed_index_simpleslopes[7,8], digits = 3)) paste0("relation between SHLS and atraction to autocratic supervisor: beta = ", round(dat3_modmed_index_simpleslopes[6,5], digits = 2), ", 95% CI [", round(dat3_modmed_index_simpleslopes[6,9], digits = 2), ", ", round(dat3_modmed_index_simpleslopes[6,10], digits = 2), "], z = ", round(dat3_modmed_index_simpleslopes[6,7], digits = 2), ", p = ", round(dat3_modmed_index_simpleslopes[6,8], digits = 3)) ###indirect effects of the NARQ total score paste0("Study 3: index of moderated mediation for the NARQ total score: estimate = ", round(dat3_modmed_index_simpleslopes[1,5], digits = 2), ", 95% CI [", round(dat3_modmed_index_simpleslopes[1,9], digits = 2), ", ", round(dat3_modmed_index_simpleslopes[1,10], digits = 2), "], z = ", round(dat3_modmed_index_simpleslopes[1,7], digits = 2), ", p = ", round(dat3_modmed_index_simpleslopes[1,8], digits = 3)) paste0("Study 3: indirect effect of the NARQ total score for the democratic supervisor: estimate = ", round(dat3_modmed_index_simpleslopes[3,5], digits = 2), ", 95% CI [", round(dat3_modmed_index_simpleslopes[3,9], digits = 2), ", ", round(dat3_modmed_index_simpleslopes[3,10], digits = 2), "], z = ", round(dat3_modmed_index_simpleslopes[3,7], digits = 2), ", p = ", round(dat3_modmed_index_simpleslopes[3,8], digits = 3)) paste0("Study 3: indirect effect of the NARQ total score for the autocratic supervisor: estimate = ", round(dat3_modmed_index_simpleslopes[2,5], digits = 2), ", 95% CI [", round(dat3_modmed_index_simpleslopes[2,9], digits = 2), ", ", round(dat3_modmed_index_simpleslopes[2,10], digits = 2), "], z = ", round(dat3_modmed_index_simpleslopes[2,7], digits = 2), ", p = ", round(dat3_modmed_index_simpleslopes[2,8], digits = 3)) rm(moderation_model_narq,dat3_mod_narq,model_dem,model_aut,dat3_mod_dem,dat3_mod_aut,mediation_model_narq,results,dat3_modmed_narq,dat3_modmed_index_simpleslopes,dat_table_S3.6,format_beta,format_t,format_p,head,tbl,doc) ##Table S3.7: Effect of the NARQ Total Score on Attraction to Supervisor Moderated by Supervisor's Leadership Style and Presentation Order of Democratic and Autocratic Leadership Items in Study 3 ###regression model model_order <- lm(Zattraction ~ Znarq + Zstyle_supervisor + Zorder + ZNARQxSLS + ZNARQxORD + ZSLSxORD + ZNARQxSLSxORD, data=dat3) dat_table_S3.7 <- data.frame(summary(model_order)$coef,confint(model_order)) ###create table dat_table_S3.7 <- dat_table_S3.7[!(row.names(dat_table_S3.7) %in% "(Intercept)"), ] dat_table_S3.7$Predictor <- c("NARQ","SLS","Order","NARQ x SLS","NARQ x Order","SLS x Order","NARQ x SLS x Order") dat_table_S3.7 <- dat_table_S3.7[,c(7,1,5:6,3:4)] colnames(dat_table_S3.7) <- c("Predictor","beta","ci_lower","ci_upper","t","p") dat_table_S3.7[,2:6] <- sapply(dat_table_S3.7[,2:6], as.numeric) format_beta <- function(x){ ifelse(abs(x) < 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_table_S3.7[,c(2:4)] <- dat_table_S3.7[,c(2:4)] %>% mutate_if(is.numeric, format_beta) format_t <- function(x){ formatC(x, format = "f", digits = 2) } dat_table_S3.7[,5] <- sapply(dat_table_S3.7[,5], format_t) format_p <- function(x){ ifelse(abs(x) < 0.001, "< .001", f_num(unlist(x), digits=3)) } dat_table_S3.7[,6] <- sapply(dat_table_S3.7[,6], format_p) dat_table_S3.7$ci <- paste0("[", dat_table_S3.7$ci_lower, ", ", dat_table_S3.7$ci_upper, "]") dat_table_S3.7 <- dat_table_S3.7[,c("Predictor","beta","ci","t","p")] col_keys <- c("Predictor","beta","ci","t","p") head1 <- c("Predictor","\u03B2","95% CI","t","p") head <- data.frame(col_keys,head1, stringsAsFactors = FALSE) rm(col_keys,head1) tbl <- flextable(dat_table_S3.7) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:5, border=fp_border(width=2), part="header") tbl <- hline(tbl, i=1, j=1:5, border=fp_border(width=1.2), part="header") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j = c("Predictor"), align="left", part="body") tbl <- italic(tbl, i=1, j=c("t","p"), part="header") tbl <- width(tbl, j =~ Predictor, width=1.7) tbl <- width(tbl, j =~ beta, width=.45) tbl <- width(tbl, j =~ ci, width=.95) tbl <- width(tbl, j =~ t, width=.55) tbl <- width(tbl, j =~ p, width=.6) tbl <- height_all(tbl, height=.2, part="all") tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S3.7.docx") rm(model_order,dat_table_S3.7,format_beta,format_t,format_p,head,tbl,doc) #NPI-Narcissism ##Internal Consistency and Descriptive Statistics of NPI-Narcissism dat.npi <- subset(dat3, select = c(2:41)) round(psych::alpha(dat.npi, na.rm=T)$total[1], digits = 2) round(mean(dat3$npi),2) round(sd(dat3$npi),2) rm(dat.npi) ##Table S3.8: Effect of NPI-Narcissism on Perceived Leadership Style of the Fictitious Supervisor Moderated by Supervisor's Leadership Style in Study 3 ###regression model moderation_model_perceived_style <- lm(Zperceived_style_supervisor ~ Znpi + Zstyle_supervisor + ZNPIxSLS, data=dat3) dat3_perceived_style <- data.frame(summary(moderation_model_perceived_style)$coef,confint(moderation_model_perceived_style)) ###create table dat3_perceived_style <- dat3_perceived_style[-1, ] dat3_perceived_style$Predictor <- c("NPI","SLS","NPI x SLS") dat_table_S3.8 <- dat3_perceived_style[,c(7,1,5:6,3:4)] colnames(dat_table_S3.8) <- c("Predictor","beta1","ci_lower1","ci_upper1","t","p1") dat_table_S3.8[,2:6] <- sapply(dat_table_S3.8[,2:6], as.numeric) format_beta <- function(x){ ifelse(abs(x) < 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_table_S3.8[,c(2:4)] <- dat_table_S3.8[,c(2:4)] %>% mutate_if(is.numeric, format_beta) format_t <- function(x){ formatC(x, format = "f", digits = 2) } dat_table_S3.8[,5] <- sapply(dat_table_S3.8[,5], format_t) format_p <- function(x){ ifelse(abs(x) < 0.001, "< .001", f_num(unlist(x), digits=3)) } dat_table_S3.8[,6] <- sapply(dat_table_S3.8[,6], format_p) dat_table_S3.8$ci1 <- paste0("[", dat_table_S3.8$ci_lower1, ", ", dat_table_S3.8$ci_upper1, "]") dat_table_S3.8 <- dat_table_S3.8[,c("Predictor","beta1","ci1","t","p1")] col_keys <- c("Predictor","beta1","ci1","t","p1") head1 <- c("Predictor","\u03B2","95% CI","t","p") head <- data.frame(col_keys,head1, stringsAsFactors = FALSE) rm(col_keys,head1) tbl <- flextable(dat_table_S3.8) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:5, border=fp_border(width=2), part="header") tbl <- hline(tbl, i=1, j=1:5, border=fp_border(width=1.2), part="header") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j = c("Predictor"), align="left", part="body") tbl <- italic(tbl, i=1, j=c("t","p1"), part="header") tbl <- width(tbl, j =~ Predictor, width=1) tbl <- width(tbl, j =~ beta1, width=.5) tbl <- width(tbl, j =~ ci1, width=.95) tbl <- width(tbl, j =~ t, width=.6) tbl <- width(tbl, j =~ p1, width=.6) tbl <- height_all(tbl, height=.2, part="all") tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S3.8.docx") ###simple slopes of the interaction between NPI-narcissism and supervisor's leadership style dat3$Znpi_high <- dat3$Znpi - 1 dat3$Znpi_low <- dat3$Znpi + 1 dat3$ZNPI_highxSLS <- scale(dat3$Znpi_high*dat3$Zstyle_supervisor) dat3$ZNPI_lowxSLS <- scale(dat3$Znpi_low*dat3$Zstyle_supervisor) model_npi_high <- lm(Zperceived_style_supervisor ~ Znpi_high + Zstyle_supervisor + ZNPI_highxSLS, data=dat3) model_npi_low <- lm(Zperceived_style_supervisor ~ Znpi_low + Zstyle_supervisor + ZNPI_lowxSLS, data=dat3) dat3_npi_high <- data.frame(summary(model_npi_high)$coef,confint(model_npi_high)) dat3_npi_low <- data.frame(summary(model_npi_low)$coef,confint(model_npi_low)) paste0("difference between the two leader profiles for subordinates higher in NPI-narcissism: beta = ", round(dat3_npi_high[3,1], digits = 2), ", 95% CI [", round(dat3_npi_high[3,5], digits = 2), ", ", round(dat3_npi_high[3,6], digits = 2), "], t(597) = ", round(dat3_npi_high[3,3], digits = 2), ", p = ", round(dat3_npi_high[3,4], digits = 3)) paste0("difference between the two leader profiles for subordinates lower in NPI-narcissism: beta = ", round(dat3_npi_low[3,1], digits = 2), ", 95% CI [", round(dat3_npi_low[3,5], digits = 2), ", ", round(dat3_npi_low[3,6], digits = 2), "], t(597) = ", round(dat3_npi_low[3,3], digits = 2), ", p = ", round(dat3_npi_low[3,4], digits = 3)) rm(moderation_model_perceived_style,dat3_perceived_style,dat_table_S3.8,format_beta,format_t,format_p,head,tbl,doc,model_npi_high,model_npi_low,dat3_npi_high,dat3_npi_low) ##Table S3.9: Effect of NPI-Narcissism on Attraction to Supervisor Moderated by Supervisor's Leadership Style and Mediated by Subordinate's Hypothetical Leadership Style in Study 3 ###moderation model moderation_model_npi <- lm(Zattraction ~ Znpi + Zstyle_supervisor + ZNPIxSLS, data=dat3) dat3_mod_npi <- data.frame(summary(moderation_model_npi)$coef,confint(moderation_model_npi)) ###simple slopes dat3$Zstyle_supervisor_dem <- dat3$Zstyle_supervisor - abs(max(dat3$Zstyle_supervisor)) dat3$Zstyle_supervisor_aut <- dat3$Zstyle_supervisor + abs(min(dat3$Zstyle_supervisor)) dat3$ZNPIxSLS_dem <- scale(dat3$Znpi*dat3$Zstyle_supervisor_dem) dat3$ZNPIxSLS_aut <- scale(dat3$Znpi*dat3$Zstyle_supervisor_aut) model_dem <- lm(Zattraction ~ Znpi + Zstyle_supervisor_dem + ZNPIxSLS_dem, data=dat3) model_aut <- lm(Zattraction ~ Znpi + Zstyle_supervisor_aut + ZNPIxSLS_aut, data=dat3) dat3_mod_dem <- data.frame(summary(model_dem)$coef,confint(model_dem)) dat3_mod_aut <- data.frame(summary(model_aut)$coef,confint(model_aut)) paste0("relation between NPI-narcissism and atraction to democratic supervisor: beta = ", round(dat3_mod_dem[2,1], digits = 2), ", 95% CI [", round(dat3_mod_dem[2,5], digits = 2), ", ", round(dat3_mod_dem[2,6], digits = 2), "], t(597) = ", round(dat3_mod_dem[2,3], digits = 2), ", p = ", round(dat3_mod_dem[2,4], digits = 3)) paste0("relation between NPI-narcissism and atraction to autocratic supervisor: beta = ", round(dat3_mod_aut[2,1], digits = 2), ", 95% CI [", round(dat3_mod_aut[2,5], digits = 2), ", ", round(dat3_mod_aut[2,6], digits = 2), "], t(597) = ", round(dat3_mod_aut[2,3], digits = 2), ", p = ", round(dat3_mod_aut[2,4], digits = 3)) ###moderated mediation model set.seed(123) #setting the seed for reproducibility mediation_model_npi <- ' Zattraction ~ c*Znpi + Zstyle_supervisor + b*Zstyle_index_self + h*ZNPIxSLS + g*ZSHLSxSLS Zstyle_index_self ~ a*Znpi ## index of moderated mediaion index_npi := a * g ## conditional effects of NPI indirect_aut := a*(b-0.9941926*g) indirect_dem := a*(b+1.004168*g) direct_aut := c-0.9941926*h direct_dem := c+1.004168*h ## conditional effects of SHLS SHLS_aut := b-0.9941926*g SHLS_dem := b+1.004168*g' results <- sem(mediation_model_npi, data = dat3, meanstructure = TRUE, se = "bootstrap", bootstrap = 10000) dat3_modmed_npi <- data.frame(parameterEstimates(results, ci = TRUE, level = 0.95, boot.ci.type = "bca.simple")) #bias-corrected percentile method dat3_modmed_index_simpleslopes <- dat3_modmed_npi[c(25:31),] dat3_modmed_npi <- dat3_modmed_npi[c(6,1,3,2,4:5),] ###create table dat3_mod_npi[c(1,5:6),] <- NA dat3_mod_npi <- dat3_mod_npi[c(1:2,5,3:4,6),] dat3_mod_npi$Predictor <- c("NPI","NPI","SHLS","SLS","NPI x SLS","SHLS x SLS") dat3_mod_npi$blank <- NA dat_table_S3.9 <- cbind(dat3_mod_npi[,c(7,1,5:6,3:4,8)],dat3_modmed_npi[,c(5,9:10,7:8)]) colnames(dat_table_S3.9) <- c("Predictor","beta1","ci_lower1","ci_upper1","t","p1","blank","beta2","ci_lower2","ci_upper2","z","p2") dat_table_S3.9[,2:12] <- sapply(dat_table_S3.9[,2:12], as.numeric) format_beta <- function(x){ ifelse(abs(x) < 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_table_S3.9[,c(2:4,8:10)] <- dat_table_S3.9[,c(2:4,8:10)] %>% mutate_if(is.numeric, format_beta) format_t <- function(x){ formatC(x, format = "f", digits = 2) } dat_table_S3.9[,c(5,11)] <- dat_table_S3.9[,c(5,11)] %>% mutate_if(is.numeric, format_t) format_p <- function(x){ ifelse(abs(x) < 0.001, "< .001", f_num(unlist(x), digits=3)) } dat_table_S3.9[,c(6,12)] <- dat_table_S3.9[,c(6,12)] %>% mutate_if(is.numeric, format_p) dat_table_S3.9$ci1 <- paste0("[", dat_table_S3.9$ci_lower1, ", ", dat_table_S3.9$ci_upper1, "]") dat_table_S3.9$ci2 <- paste0("[", dat_table_S3.9$ci_lower2, ", ", dat_table_S3.9$ci_upper2, "]") dat_table_S3.9 <- dat_table_S3.9[,c("Predictor","beta1","ci1","t","p1","blank","beta2","ci2","z","p2")] dat_table_S3.9[c(1,3,6),c(2:5)] <- NA dat_table_S3.9[7,2] <- "Subordinate's Hypothetical Leadership Style" dat_table_S3.9[8,2] <- "Attraction to Supervisor" dat_table_S3.9 <- dat_table_S3.9[c(7,1,8,2:6),] col_keys <- c("Predictor","beta1","ci1","t","p1","blank","beta2","ci2","z","p2") head1 <- c("","Moderation model","Moderation model","Moderation model","Moderation model","","Moderated mediation model","Moderated mediation model","Moderated mediation model","Moderated mediation model") head2 <- c("Predictor","\u03B2","95% CI","t","p","","\u03B2","95% CI","z","p") head <- data.frame(col_keys,head1,head2, stringsAsFactors = FALSE) rm(col_keys,head1,head2) tbl <- flextable(dat_table_S3.9) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:10, border=fp_border(width=2), part="header") tbl <- merge_at(tbl, i=1, j=2:5, part="header") tbl <- merge_at(tbl, i=1, j=7:10, part="header") tbl <- merge_at(tbl, i=1, j=2:10, part="body") tbl <- merge_at(tbl, i=3, j=2:10, part="body") tbl <- hline(tbl, i=1, j=c(2:5,7:10), border=fp_border(width=1.2), part="header") tbl <- hline(tbl, i=2, j=1:10, border=fp_border(width=1.2), part="header") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j = c("Predictor"), align="left", part="body") tbl <- italic(tbl, i=2, j=c("t","p1","z","p2"), part="header") tbl <- width(tbl, j =~ Predictor, width=1.1) tbl <- width(tbl, j =~ beta1 + beta2, width=.5) tbl <- width(tbl, j =~ ci1 + ci2, width=.95) tbl <- width(tbl, j =~ t + z, width=.6) tbl <- width(tbl, j =~ p1 + p2, width=.6) tbl <- width(tbl, j =~ blank, width=.3) tbl <- height_all(tbl, height=.2, part="all") tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S3.9.docx") ###simple slopes of the interaction between subordinate's hypothetical leadership style and supervisor's leadership style paste0("relation between SHLS and atraction to democratic supervisor: beta = ", round(dat3_modmed_index_simpleslopes[7,5], digits = 2), ", 95% CI [", round(dat3_modmed_index_simpleslopes[7,9], digits = 2), ", ", round(dat3_modmed_index_simpleslopes[7,10], digits = 2), "], z = ", round(dat3_modmed_index_simpleslopes[7,7], digits = 2), ", p = ", round(dat3_modmed_index_simpleslopes[7,8], digits = 3)) paste0("relation between SHLS and atraction to autocratic supervisor: beta = ", round(dat3_modmed_index_simpleslopes[6,5], digits = 2), ", 95% CI [", round(dat3_modmed_index_simpleslopes[6,9], digits = 2), ", ", round(dat3_modmed_index_simpleslopes[6,10], digits = 2), "], z = ", round(dat3_modmed_index_simpleslopes[6,7], digits = 2), ", p = ", round(dat3_modmed_index_simpleslopes[6,8], digits = 3)) ###indirect effects of NPI-Narcissism paste0("Study 3: index of moderated mediation for NPI-narcissism: estimate = ", round(dat3_modmed_index_simpleslopes[1,5], digits = 2), ", 95% CI [", round(dat3_modmed_index_simpleslopes[1,9], digits = 2), ", ", round(dat3_modmed_index_simpleslopes[1,10], digits = 2), "], z = ", round(dat3_modmed_index_simpleslopes[1,7], digits = 2), ", p = ", round(dat3_modmed_index_simpleslopes[1,8], digits = 3)) paste0("Study 3: indirect effect of NPI-narcissism for the democratic supervisor: estimate = ", round(dat3_modmed_index_simpleslopes[3,5], digits = 2), ", 95% CI [", round(dat3_modmed_index_simpleslopes[3,9], digits = 2), ", ", round(dat3_modmed_index_simpleslopes[3,10], digits = 2), "], z = ", round(dat3_modmed_index_simpleslopes[3,7], digits = 2), ", p = ", round(dat3_modmed_index_simpleslopes[3,8], digits = 3)) paste0("Study 3: indirect effect of NPI-narcissism for the autocratic supervisor: estimate = ", round(dat3_modmed_index_simpleslopes[2,5], digits = 2), ", 95% CI [", round(dat3_modmed_index_simpleslopes[2,9], digits = 2), ", ", round(dat3_modmed_index_simpleslopes[2,10], digits = 2), "], z = ", round(dat3_modmed_index_simpleslopes[2,7], digits = 2), ", p = ", round(dat3_modmed_index_simpleslopes[2,8], digits = 3)) rm(moderation_model_npi,dat3_mod_npi,model_dem,model_aut,dat3_mod_dem,dat3_mod_aut,mediation_model_npi,results,dat3_modmed_npi,dat3_modmed_index_simpleslopes,dat_table_S3.9,format_beta,format_t,format_p,head,tbl,doc) ##Supplementary Footnote S7: NPI Facets ###moderation model moderation_model_npi_facets <- lm(Zattraction ~ Znpi_authority + Znpi_exhibitionism + Znpi_entitlement + Zstyle_supervisor + ZNPI_AUTxSLS + ZNPI_EXHxSLS + ZNPI_ENTxSLS, data=dat3) dat3_mod_npi_facets <- data.frame(summary(moderation_model_npi_facets)$coef,confint(moderation_model_npi_facets)) ###moderated mediation model set.seed(123) #setting the seed for reproducibility mediation_model_npi_facets <- ' Zattraction ~ c1*Znpi_authority + c2*Znpi_exhibitionism + c3*Znpi_entitlement + Zstyle_supervisor + b*Zstyle_index_self + h1*ZNPI_AUTxSLS + h2*ZNPI_EXHxSLS + h3*ZNPI_ENTxSLS + g*ZSHLSxSLS Zstyle_index_self ~ a1*Znpi_authority + a2*Znpi_exhibitionism + a3*Znpi_entitlement ## index of moderated mediaion index_npi_authority := a1 * g index_npi_exhibitionism := a2 * g index_npi_entitlement := a3 * g ## conditional effects of NPI facets indirect_aut1 := a1*(b-0.9941926*g) indirect_dem1 := a1*(b+1.004168*g) indirect_aut2 := a2*(b-0.9941926*g) indirect_dem2 := a2*(b+1.004168*g) indirect_aut3 := a3*(b-0.9941926*g) indirect_dem3 := a3*(b+1.004168*g) ## conditional effects of SHLS SHLS_aut := b-0.9941926*g SHLS_dem := b+1.004168*g' results <- sem(mediation_model_npi_facets, data = dat3, meanstructure = TRUE, se = "bootstrap", bootstrap = 10000) dat3_modmed_npi_facets <- data.frame(parameterEstimates(results, ci = TRUE, level = 0.95, boot.ci.type = "bca.simple")) #bias-corrected percentile method dat3_modmed_facets <- dat3_modmed_npi_facets[c(10:12,1:3,5,4,6:9),] dat3_modmed_index_simpleslopes_facets <- dat3_modmed_npi_facets[c(61:71),] rm(moderation_model_npi_facets,dat3_mod_npi_facets,mediation_model_npi_facets,results,dat3_modmed_npi_facets,dat3_modmed_index_simpleslopes_facets,dat3_modmed_facets) ##Table S3.10: Effect of NPI-Narcissism on Attraction to Supervisor Moderated by Supervisor's Leadership Style and Presentation Order of Democratic and Autocratic Leadership Items in Study 3 ###regression model model_order <- lm(Zattraction ~ Znpi + Zstyle_supervisor + Zorder + ZNPIxSLS + ZNPIxORD + ZSLSxORD + ZNPIxSLSxORD, data=dat3) dat_table_S3.10 <- data.frame(summary(model_order)$coef,confint(model_order)) ###create table dat_table_S3.10 <- dat_table_S3.10[!(row.names(dat_table_S3.10) %in% "(Intercept)"), ] dat_table_S3.10$Predictor <- c("NPI","SLS","Order","NPI x SLS","NPI x Order","SLS x Order","NPI x SLS x Order") dat_table_S3.10 <- dat_table_S3.10[,c(7,1,5:6,3:4)] colnames(dat_table_S3.10) <- c("Predictor","beta","ci_lower","ci_upper","t","p") dat_table_S3.10[,2:6] <- sapply(dat_table_S3.10[,2:6], as.numeric) format_beta <- function(x){ ifelse(abs(x) < 0.005, f_num(unlist(x), digits=3), f_num(unlist(x), digits=2)) } dat_table_S3.10[,c(2:4)] <- dat_table_S3.10[,c(2:4)] %>% mutate_if(is.numeric, format_beta) format_t <- function(x){ formatC(x, format = "f", digits = 2) } dat_table_S3.10[,5] <- sapply(dat_table_S3.10[,5], format_t) format_p <- function(x){ ifelse(abs(x) < 0.001, "< .001", f_num(unlist(x), digits=3)) } dat_table_S3.10[,6] <- sapply(dat_table_S3.10[,6], format_p) dat_table_S3.10$ci <- paste0("[", dat_table_S3.10$ci_lower, ", ", dat_table_S3.10$ci_upper, "]") dat_table_S3.10 <- dat_table_S3.10[,c("Predictor","beta","ci","t","p")] col_keys <- c("Predictor","beta","ci","t","p") head1 <- c("Predictor","\u03B2","95% CI","t","p") head <- data.frame(col_keys,head1, stringsAsFactors = FALSE) rm(col_keys,head1) tbl <- flextable(dat_table_S3.10) tbl <- set_header_df(tbl, mapping=head, key="col_keys") tbl <- hline_top(tbl, j=1:5, border=fp_border(width=2), part="header") tbl <- hline(tbl, i=1, j=1:5, border=fp_border(width=1.2), part="header") tbl <- flextable::font(tbl, fontname="Times", part="all") tbl <- fontsize(tbl, size=12, part="all") tbl <- align(tbl, align="center", part="all") tbl <- align(tbl, j = c("Predictor"), align="left", part="body") tbl <- italic(tbl, i=1, j=c("t","p"), part="header") tbl <- width(tbl, j =~ Predictor, width=1.5) tbl <- width(tbl, j =~ beta, width=.5) tbl <- width(tbl, j =~ ci, width=.95) tbl <- width(tbl, j =~ t, width=.6) tbl <- width(tbl, j =~ p, width=.6) tbl <- height_all(tbl, height=.2, part="all") tbl setwd(files_wd) doc <- read_docx() doc <- body_add_flextable(doc, value = tbl) print(doc, target = "Table_S3.10.docx") rm(model_order,dat_table_S3.10,format_beta,format_t,format_p,head,tbl,doc) #clear environment rm(list = ls())