Gummer, Tobias, Bartholomäus, Saskia, and Weiss, Bernd (2026): “Respondents’ Preferred Survey Topics: Measurement and Prevalence.” Survey Research Methods.
Respondents’ interest in a survey’s topic is used frequently by survey researchers to explain and predict survey errors. Whether respondents are interested in a survey’s content relates to their participation and cognitive answering processes, which consequently impacts nonresponse and measurement errors. Since the content of a survey is under the control of the researchers who design and conduct it, the content could be varied to improve participation and answering behavior. Unfortunately, research is lacking as to (i) how to measure these preferences, (ii) whether groups of respondents differ in their topic preferences, and (iii) the topic preferences in the social science survey samples. We have addressed this research gap by presenting the findings of three experimental studies that we conducted. In our study, we validated a measurement instrument to assess respondents’ topic interests. Moreover, we found that topic preferences varied between samples and respondent subgroups. However, across samples we consistently found that respondents were more interested in answering questions on personal rather than political topics. Based on our empirical findings, we provide practical recommendations for survey research and outline future research opportunities.
The ReplicationFileStudy3.html contains all analyses of study 3 reported in the cited article. The published R.Rmd files allow users to replicate the results. The data set required for replication is provided in the subfolder data. To reproduce the analyses, please follow these steps:
# Random Number Generation
set.seed(42)
The The data set required for replication is provided in the subfolder data.
# Loading Dataset
cat("dbd_dta <- read_dta('[INCLUDE PATH TO THE PRETEST DATA SET HERE]/PrADePSdbdData.dta')")
## dbd_dta <- read_dta('[INCLUDE PATH TO THE PRETEST DATA SET HERE]/PrADePSdbdData.dta')
cat("dbd_dta <- remove_all_labels(dbd_dta)")
## dbd_dta <- remove_all_labels(dbd_dta)
# Renaming Variables
dbd_dta <- dplyr::rename(dbd_dta,
tp_well = kzca001a_satis,
tp_pol = kzca002a_polit,
tp_nature = kzca003a_natur,
tp_personal = kzca004a_perso,
tp_media = kzca005a_socia,
tp_work = kzca006a_inwrk,
tp_migration = kzca007a_inmig,
tp_economy = kzca008a_ineco,
tp_leisure = kzca009a_inlei,
tp_crisis = kzca010a_incri)
# Variable Labels
labels <- list(
tp_pol = "Topic Interest Politics",
tp_well = "Topic Interest Well-Being",
tp_nature = "Topic Interest Nature",
tp_media = "Topic Interest Media",
tp_work = "Topic Interest Work",
tp_migration = "Topic Interest Migration",
tp_economy = "Topic Interest Economy",
tp_crisis = "Topic Interest Crisis",
tp_personal = "Topic Interest Personality",
tp_leisure = "Topic Interest Leisure")
# Value Labels
dbd_dta <- set_labels(
dbd_dta, tp_pol, tp_well, tp_nature, tp_personal, tp_media, tp_work, tp_migration,
tp_economy, tp_crisis, tp_leisure,
labels = c("very interested" = 7, "not interestes at all" = 1))
# Creating Subsets
subset <- select(dbd_dta, tp_nature, tp_crisis, tp_personal, tp_economy, tp_leisure, tp_well, tp_migration, tp_work, tp_pol, tp_media)
subset[subset == -99] <- NA
subset <- subset[complete.cases(subset), ]
# Save Datasets
save(subset, labels, file = "data/subset.RData")
rm(dbd_dta, subset, labels)
Topic Popularity
sumtable(subset, vars=c("tp_personal", "tp_pol", "tp_nature", "tp_crisis", "tp_well", "tp_economy", "tp_migration", "tp_leisure", "tp_media", "tp_work"),
labels = c("Personality", "Politics", "Nature", "Crisis", "Well-Being", "Economy", "Migration", "Leisure", "Media", "Work"),
out = "kable", add.median = TRUE, digits = 3) %>%
kableExtra::kable_styling(bootstrap_options = "basic")
| Variable | N | Mean | Std. Dev. | Min | Pctl. 25 | Pctl. 50 | Pctl. 75 | Max |
|---|---|---|---|---|---|---|---|---|
| Personality | 843 | 5.84 | 1.26 | 1 | 5 | 6 | 7 | 7 |
| Politics | 843 | 5.84 | 1.43 | 1 | 5 | 6 | 7 | 7 |
| Nature | 843 | 5.81 | 1.4 | 1 | 5 | 6 | 7 | 7 |
| Crisis | 843 | 5.62 | 1.45 | 1 | 5 | 6 | 7 | 7 |
| Well-Being | 843 | 5.61 | 1.38 | 1 | 5 | 6 | 7 | 7 |
| Economy | 843 | 5.6 | 1.32 | 1 | 5 | 6 | 7 | 7 |
| Migration | 843 | 5.34 | 1.56 | 1 | 4 | 6 | 7 | 7 |
| Leisure | 843 | 5.27 | 1.5 | 1 | 4 | 5 | 7 | 7 |
| Media | 843 | 5.18 | 1.48 | 1 | 4 | 5 | 6 | 7 |
| Work | 843 | 5.11 | 1.6 | 1 | 4 | 5 | 6 | 7 |
Test of Comparisons
topics <- c("tp_nature", "tp_crisis", "tp_personal", "tp_economy", "tp_leisure", "tp_well", "tp_migration", "tp_work", "tp_pol", "tp_media")
tt_results <- list()
for (i in 1:(length(topics) - 1)) {
for (j in (i + 1):length(topics)) {
var1 <- topics[i]
var2 <- topics[j]
tab <- map_df(list(t.test(subset[[var1]], subset[[var2]], paired = TRUE, alternative = "two.sided")), tidy)
tt_results[[paste(var1, "_vs_", var2, sep = "")]] <- tab
}
}
ttresults_df <- do.call(rbind, tt_results)
ttresults_df$Comparison <- gsub("_vs_", " vs. ", rownames(ttresults_df))
ttresults_df <- ttresults_df[c("Comparison", "estimate", "statistic", "p.value",
"conf.low", "conf.high", "method")]
ttresults_df[c("Comparison", "estimate", "statistic", "p.value", "conf.low", "conf.high", "method")] %>%
kbl(align = "llllll", col.names = c("Comparison", "Difference in Means", "t", "p.value", "conf.low", "conf.high", "Method"),
digits = 3, caption = "Difference of Topic Popularity") %>%
kable_styling() %>% kableExtra::scroll_box(width = "100%", height = "300px")
| Comparison | Difference in Means | t | p.value | conf.low | conf.high | Method |
|---|---|---|---|---|---|---|
| tp_nature vs. tp_crisis | 0.184 | 3.129 | 0.002 | 0.069 | 0.299 | Paired t-test |
| tp_nature vs. tp_personal | -0.030 | -0.600 | 0.549 | -0.127 | 0.067 | Paired t-test |
| tp_nature vs. tp_economy | 0.202 | 3.465 | 0.001 | 0.087 | 0.316 | Paired t-test |
| tp_nature vs. tp_leisure | 0.534 | 8.730 | 0.000 | 0.414 | 0.654 | Paired t-test |
| tp_nature vs. tp_well | 0.197 | 3.740 | 0.000 | 0.094 | 0.300 | Paired t-test |
| tp_nature vs. tp_migration | 0.470 | 7.708 | 0.000 | 0.350 | 0.589 | Paired t-test |
| tp_nature vs. tp_work | 0.694 | 10.712 | 0.000 | 0.567 | 0.821 | Paired t-test |
| tp_nature vs. tp_pol | -0.033 | -0.608 | 0.543 | -0.140 | 0.074 | Paired t-test |
| tp_nature vs. tp_media | 0.630 | 10.479 | 0.000 | 0.512 | 0.748 | Paired t-test |
| tp_crisis vs. tp_personal | -0.214 | -3.813 | 0.000 | -0.323 | -0.104 | Paired t-test |
| tp_crisis vs. tp_economy | 0.018 | 0.355 | 0.722 | -0.081 | 0.116 | Paired t-test |
| tp_crisis vs. tp_leisure | 0.350 | 5.408 | 0.000 | 0.223 | 0.477 | Paired t-test |
| tp_crisis vs. tp_well | 0.013 | 0.211 | 0.833 | -0.108 | 0.134 | Paired t-test |
| tp_crisis vs. tp_migration | 0.286 | 5.413 | 0.000 | 0.182 | 0.390 | Paired t-test |
| tp_crisis vs. tp_work | 0.510 | 7.693 | 0.000 | 0.380 | 0.640 | Paired t-test |
| tp_crisis vs. tp_pol | -0.217 | -4.632 | 0.000 | -0.309 | -0.125 | Paired t-test |
| tp_crisis vs. tp_media | 0.446 | 7.134 | 0.000 | 0.323 | 0.569 | Paired t-test |
| tp_personal vs. tp_economy | 0.231 | 4.427 | 0.000 | 0.129 | 0.334 | Paired t-test |
| tp_personal vs. tp_leisure | 0.563 | 10.225 | 0.000 | 0.455 | 0.672 | Paired t-test |
| tp_personal vs. tp_well | 0.227 | 5.017 | 0.000 | 0.138 | 0.315 | Paired t-test |
| tp_personal vs. tp_migration | 0.499 | 8.472 | 0.000 | 0.384 | 0.615 | Paired t-test |
| tp_personal vs. tp_work | 0.724 | 12.305 | 0.000 | 0.608 | 0.839 | Paired t-test |
| tp_personal vs. tp_pol | -0.004 | -0.066 | 0.948 | -0.110 | 0.103 | Paired t-test |
| tp_personal vs. tp_media | 0.660 | 12.490 | 0.000 | 0.556 | 0.763 | Paired t-test |
| tp_economy vs. tp_leisure | 0.332 | 5.286 | 0.000 | 0.209 | 0.455 | Paired t-test |
| tp_economy vs. tp_well | -0.005 | -0.080 | 0.936 | -0.121 | 0.111 | Paired t-test |
| tp_economy vs. tp_migration | 0.268 | 5.641 | 0.000 | 0.175 | 0.361 | Paired t-test |
| tp_economy vs. tp_work | 0.492 | 8.392 | 0.000 | 0.377 | 0.607 | Paired t-test |
| tp_economy vs. tp_pol | -0.235 | -4.926 | 0.000 | -0.328 | -0.141 | Paired t-test |
| tp_economy vs. tp_media | 0.428 | 7.300 | 0.000 | 0.313 | 0.543 | Paired t-test |
| tp_leisure vs. tp_well | -0.337 | -6.404 | 0.000 | -0.440 | -0.234 | Paired t-test |
| tp_leisure vs. tp_migration | -0.064 | -0.925 | 0.355 | -0.200 | 0.072 | Paired t-test |
| tp_leisure vs. tp_work | 0.160 | 2.559 | 0.011 | 0.037 | 0.283 | Paired t-test |
| tp_leisure vs. tp_pol | -0.567 | -8.141 | 0.000 | -0.704 | -0.430 | Paired t-test |
| tp_leisure vs. tp_media | 0.096 | 1.680 | 0.093 | -0.016 | 0.208 | Paired t-test |
| tp_well vs. tp_migration | 0.273 | 4.190 | 0.000 | 0.145 | 0.401 | Paired t-test |
| tp_well vs. tp_work | 0.497 | 8.233 | 0.000 | 0.379 | 0.616 | Paired t-test |
| tp_well vs. tp_pol | -0.230 | -3.791 | 0.000 | -0.349 | -0.111 | Paired t-test |
| tp_well vs. tp_media | 0.433 | 7.829 | 0.000 | 0.324 | 0.542 | Paired t-test |
| tp_migration vs. tp_work | 0.224 | 3.406 | 0.001 | 0.095 | 0.353 | Paired t-test |
| tp_migration vs. tp_pol | -0.503 | -9.904 | 0.000 | -0.603 | -0.403 | Paired t-test |
| tp_migration vs. tp_media | 0.160 | 2.453 | 0.014 | 0.032 | 0.288 | Paired t-test |
| tp_work vs. tp_pol | -0.727 | -10.941 | 0.000 | -0.858 | -0.597 | Paired t-test |
| tp_work vs. tp_media | -0.064 | -1.032 | 0.303 | -0.186 | 0.058 | Paired t-test |
| tp_pol vs. tp_media | 0.663 | 10.306 | 0.000 | 0.537 | 0.789 | Paired t-test |
chi_results <- list()
sim_results <- list()
for (i in 1:(length(topics) - 1)) {
for (j in (i + 1):length(topics)) {
var1 <- topics[i]
var2 <- topics[j]
tab <- map_df(list(chisq.test(subset[[var1]], subset[[var2]])), tidy)
tab2 <- map_df(list(chisq.test(subset[[var1]], subset[[var2]], simulate.p.value = TRUE)), tidy)
chi_results[[paste(var1, "_vs_", var2, sep = "")]] <- tab
sim_results[[paste(var1, "_vs_", var2, sep = "")]] <- tab2
}
}
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
## Warning in chisq.test(subset[[var1]], subset[[var2]]): Chi-Quadrat-Approximation kann inkorrekt sein
chiresults_df <- do.call(rbind, chi_results)
chiresults_df$Comparison <- gsub("_vs_", " vs. ", rownames(chiresults_df))
chiresults_df <- chiresults_df[c("statistic", "p.value", "parameter", "method")]
chiresults_df[c("statistic", "p.value", "parameter", "method")] %>%
kbl(align = "llllll", col.names = c("Chisq", "p.value", "df", "Method"),
digits = 3, caption = "Difference of Topic Popularity") %>%
kable_styling() %>%
kableExtra::scroll_box(width = "100%", height = "300px")
| Chisq | p.value | df | Method |
|---|---|---|---|
| 180.823 | 0 | 36 | Pearson’s Chi-squared test |
| 278.272 | 0 | 36 | Pearson’s Chi-squared test |
| 159.424 | 0 | 36 | Pearson’s Chi-squared test |
| 174.499 | 0 | 36 | Pearson’s Chi-squared test |
| 254.887 | 0 | 36 | Pearson’s Chi-squared test |
| 172.634 | 0 | 36 | Pearson’s Chi-squared test |
| 128.587 | 0 | 36 | Pearson’s Chi-squared test |
| 273.910 | 0 | 36 | Pearson’s Chi-squared test |
| 182.115 | 0 | 36 | Pearson’s Chi-squared test |
| 206.468 | 0 | 36 | Pearson’s Chi-squared test |
| 359.224 | 0 | 36 | Pearson’s Chi-squared test |
| 117.784 | 0 | 36 | Pearson’s Chi-squared test |
| 112.705 | 0 | 36 | Pearson’s Chi-squared test |
| 385.118 | 0 | 36 | Pearson’s Chi-squared test |
| 130.583 | 0 | 36 | Pearson’s Chi-squared test |
| 590.825 | 0 | 36 | Pearson’s Chi-squared test |
| 140.112 | 0 | 36 | Pearson’s Chi-squared test |
| 228.382 | 0 | 36 | Pearson’s Chi-squared test |
| 267.292 | 0 | 36 | Pearson’s Chi-squared test |
| 439.839 | 0 | 36 | Pearson’s Chi-squared test |
| 145.861 | 0 | 36 | Pearson’s Chi-squared test |
| 211.076 | 0 | 36 | Pearson’s Chi-squared test |
| 280.138 | 0 | 36 | Pearson’s Chi-squared test |
| 277.190 | 0 | 36 | Pearson’s Chi-squared test |
| 126.733 | 0 | 36 | Pearson’s Chi-squared test |
| 119.114 | 0 | 36 | Pearson’s Chi-squared test |
| 567.859 | 0 | 36 | Pearson’s Chi-squared test |
| 225.901 | 0 | 36 | Pearson’s Chi-squared test |
| 446.674 | 0 | 36 | Pearson’s Chi-squared test |
| 153.010 | 0 | 36 | Pearson’s Chi-squared test |
| 350.640 | 0 | 36 | Pearson’s Chi-squared test |
| 81.212 | 0 | 36 | Pearson’s Chi-squared test |
| 202.361 | 0 | 36 | Pearson’s Chi-squared test |
| 96.287 | 0 | 36 | Pearson’s Chi-squared test |
| 349.742 | 0 | 36 | Pearson’s Chi-squared test |
| 104.994 | 0 | 36 | Pearson’s Chi-squared test |
| 198.274 | 0 | 36 | Pearson’s Chi-squared test |
| 107.372 | 0 | 36 | Pearson’s Chi-squared test |
| 258.226 | 0 | 36 | Pearson’s Chi-squared test |
| 203.335 | 0 | 36 | Pearson’s Chi-squared test |
| 391.950 | 0 | 36 | Pearson’s Chi-squared test |
| 129.229 | 0 | 36 | Pearson’s Chi-squared test |
| 101.797 | 0 | 36 | Pearson’s Chi-squared test |
| 227.385 | 0 | 36 | Pearson’s Chi-squared test |
| 82.575 | 0 | 36 | Pearson’s Chi-squared test |
simresults_df <- do.call(rbind, sim_results)
simresults_df$Comparison <- gsub("_vs_", " vs. ", rownames(simresults_df))
simresults_df <- simresults_df[c("statistic", "p.value", "parameter", "method")]
simresults_df[c("statistic", "p.value", "parameter", "method")] %>%
kbl(align = "llllll", col.names = c("Chisq", "p.value", "df", "Method"),
digits = 3, caption = "Difference of Topic Popularity") %>%
kable_styling() %>%
kableExtra::scroll_box(width = "100%", height = "300px")
| Chisq | p.value | df | Method |
|---|---|---|---|
| 180.823 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 278.272 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 159.424 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 174.499 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 254.887 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 172.634 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 128.587 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 273.910 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 182.115 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 206.468 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 359.224 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 117.784 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 112.705 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 385.118 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 130.583 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 590.825 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 140.112 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 228.382 | 0.001 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 267.292 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 439.839 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 145.861 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 211.076 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 280.138 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 277.190 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 126.733 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 119.114 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 567.859 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 225.901 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 446.674 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 153.010 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 350.640 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 81.212 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 202.361 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 96.287 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 349.742 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 104.994 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 198.274 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 107.372 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 258.226 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 203.335 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 391.950 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 129.229 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 101.797 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 227.385 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
| 82.575 | 0.000 | NA | Pearson’s Chi-squared test with simulated p-value (based on 2000 replicates) |
Identifying Number of Components
scree_plot(subset, method="pc")
Table Principal Component Analysis
| Topic Interest | Factor Loadings 1 | Factor Loadings 2 | Uniqueness | Complexity |
|---|---|---|---|---|
| Nature | 0.35 | 0.51 | 0.62 | 1.76 |
| Crisis | 0.75 | 0.17 | 0.42 | 1.1 |
| Values | 0.28 | 0.68 | 0.46 | 1.34 |
| Economy | 0.75 | 0.2 | 0.4 | 1.14 |
| Leisure | -0.03 | 0.74 | 0.46 | 1 |
| Well-Being | 0.08 | 0.78 | 0.39 | 1.02 |
| Migration | 0.79 | 0.15 | 0.36 | 1.07 |
| Work | 0.24 | 0.53 | 0.66 | 1.39 |
| Politics | 0.82 | 0.11 | 0.32 | 1.04 |
| Media | 0.15 | 0.66 | 0.55 | 1.1 |
| Eigenvalues | 3.79 | 1.57 | ||
| N | 843 |
Plot Principal Component Analysis
g_pca <- ggplot(results_pca, aes(x = `Factor Loadings 1`, y = `Factor Loadings 2`)) +
labs(x = "Factor Loadings 1", y = "Factor Loadings 2") +
geom_point(aes(colour = `Factor Loadings 1` < 0.5 & `Factor Loadings 2` > 0.5), show.legend = FALSE) +
geom_text(aes(label = c("nature and environment", "current crisis", "personality and values", "economy and society", "leisure and rest", "satisfaction and well-being", "flight and migration", "work and occupation", "political attiudes and behavior", "media and social networks")),
hjust = 0, nudge_x = 0.02, size = 3, family = "Times New Roman", colour = "black") +
theme_light() + custom_theme + scale_color_grey() +
scale_y_continuous(limits = c(0, 1.)) +
scale_x_continuous(limits = c(-0.035, 1.)) +
geom_hline(yintercept = 0.5) +
geom_vline(xintercept = 0.5) +
guides(colour = guide_legend(title.position = "top", title.hjust = 0.5))
g_pca
session_info()
## ─ Session info ─────────────────────────────────────────────────────────────────────────────────────────────────────────
## setting value
## version R version 4.4.0 (2024-04-24 ucrt)
## os Windows 11 x64 (build 26100)
## system x86_64, mingw32
## ui RStudio
## language (EN)
## collate German_Germany.utf8
## ctype German_Germany.utf8
## tz Europe/Berlin
## date 2026-01-23
## rstudio 2025.09.2+418 Cucumberleaf Sunflower (desktop)
## pandoc 3.6.3 @ C:/Program Files/RStudio/resources/app/bin/quarto/bin/tools/ (via rmarkdown)
## quarto ERROR: Unknown command "TMPDIR=C:/Users/barthosa/AppData/Local/Temp/Rtmp82jljq/file206c7a275a86". Did you mean command "install"? @ C:\\PROGRA~1\\RStudio\\RESOUR~1\\app\\bin\\quarto\\bin\\quarto.exe
##
## ─ Packages ─────────────────────────────────────────────────────────────────────────────────────────────────────────────
## package * version date (UTC) lib source
## abind 1.4-8 2024-09-12 [1] CRAN (R 4.4.1)
## backports 1.5.0 2024-05-23 [1] CRAN (R 4.4.0)
## base64enc 0.1-3 2015-07-28 [1] CRAN (R 4.4.0)
## boot 1.3-31 2024-08-28 [1] CRAN (R 4.4.3)
## broom * 1.0.8 2025-03-28 [1] CRAN (R 4.4.3)
## bslib 0.9.0 2025-01-30 [1] CRAN (R 4.4.3)
## cachem 1.1.0 2024-05-16 [1] CRAN (R 4.4.0)
## car 3.1-3 2024-09-27 [1] CRAN (R 4.4.3)
## carData 3.0-5 2022-01-06 [1] CRAN (R 4.4.0)
## checkmate 2.3.1 2023-12-04 [1] CRAN (R 4.4.0)
## cli 3.6.5 2025-04-23 [1] CRAN (R 4.4.3)
## cluster 2.1.6 2023-12-01 [1] CRAN (R 4.4.0)
## coda 0.19-4.1 2024-01-31 [1] CRAN (R 4.4.1)
## codetools 0.2-20 2024-03-31 [1] CRAN (R 4.4.0)
## colorspace 2.1-0 2023-01-23 [1] CRAN (R 4.4.0)
## data.table 1.15.4 2024-03-30 [1] CRAN (R 4.4.0)
## datawizard 1.1.0 2025-05-09 [1] CRAN (R 4.4.3)
## devtools * 2.4.6 2025-10-03 [1] CRAN (R 4.4.3)
## dichromat 2.0-0.1 2022-05-02 [1] CRAN (R 4.4.0)
## digest 0.6.35 2024-03-11 [1] CRAN (R 4.4.0)
## dplyr * 1.1.4 2023-11-17 [1] CRAN (R 4.4.0)
## ellipsis 0.3.2 2021-04-29 [1] CRAN (R 4.4.0)
## emmeans 1.11.1 2025-05-04 [1] CRAN (R 4.4.3)
## estimability 1.5.1 2024-05-12 [1] CRAN (R 4.4.0)
## estimatr * 1.0.4 2024-03-31 [1] CRAN (R 4.4.0)
## evaluate 1.0.4 2025-06-18 [1] CRAN (R 4.4.3)
## factoextra 1.0.7 2020-04-01 [1] CRAN (R 4.4.3)
## farver 2.1.2 2024-05-13 [1] CRAN (R 4.4.0)
## fastmap 1.2.0 2024-05-15 [1] CRAN (R 4.4.0)
## forcats 1.0.0 2023-01-29 [1] CRAN (R 4.4.0)
## foreign 0.8-86 2023-11-28 [1] CRAN (R 4.4.0)
## Formula 1.2-5 2023-02-24 [1] CRAN (R 4.4.0)
## fs 1.6.6 2025-04-12 [1] CRAN (R 4.4.3)
## gdata 3.0.1 2024-10-22 [1] CRAN (R 4.4.3)
## generics 0.1.4 2025-05-09 [1] CRAN (R 4.4.3)
## ggeffects * 2.3.0 2025-06-13 [1] CRAN (R 4.4.3)
## ggplot2 * 3.5.2 2025-04-09 [1] CRAN (R 4.4.3)
## ggpubr * 0.6.1 2025-06-27 [1] CRAN (R 4.4.3)
## ggrepel 0.9.6 2024-09-07 [1] CRAN (R 4.4.3)
## ggsignif 0.6.4 2022-10-13 [1] CRAN (R 4.4.0)
## glue 1.7.0 2024-01-09 [1] CRAN (R 4.4.0)
## gmodels * 2.19.1 2024-03-06 [1] CRAN (R 4.4.1)
## gridExtra 2.3 2017-09-09 [1] CRAN (R 4.4.0)
## gtable 0.3.6 2024-10-25 [1] CRAN (R 4.4.3)
## gtools * 3.9.5 2023-11-20 [1] CRAN (R 4.4.0)
## haven * 2.5.4 2023-11-30 [1] CRAN (R 4.4.0)
## Hmisc * 5.1-3 2024-05-28 [1] CRAN (R 4.4.0)
## hms 1.1.3 2023-03-21 [1] CRAN (R 4.4.0)
## htmlTable 2.4.3 2024-07-21 [1] CRAN (R 4.4.3)
## htmltools 0.5.8.1 2024-04-04 [1] CRAN (R 4.4.0)
## htmlwidgets 1.6.4 2023-12-06 [1] CRAN (R 4.4.0)
## httr 1.4.7 2023-08-15 [1] CRAN (R 4.4.0)
## insight 1.3.1 2025-06-30 [1] CRAN (R 4.4.3)
## jquerylib 0.1.4 2021-04-26 [1] CRAN (R 4.4.0)
## jsonlite 2.0.0 2025-03-27 [1] CRAN (R 4.4.3)
## kableExtra * 1.4.0 2024-01-24 [1] CRAN (R 4.4.0)
## knitr * 1.50 2025-03-16 [1] CRAN (R 4.4.3)
## labeling 0.4.3 2023-08-29 [1] CRAN (R 4.4.0)
## lattice 0.22-6 2024-03-20 [1] CRAN (R 4.4.0)
## lifecycle 1.0.4 2023-11-07 [1] CRAN (R 4.4.0)
## lme4 * 1.1-35.3 2024-04-16 [1] CRAN (R 4.4.0)
## lmtest * 0.9-40 2022-03-21 [1] CRAN (R 4.4.0)
## magrittr 2.0.3 2022-03-30 [1] CRAN (R 4.4.0)
## marginaleffects * 0.20.1 2024-05-08 [1] CRAN (R 4.4.0)
## MASS 7.3-60.2 2024-04-24 [1] local
## Matrix * 1.7-0 2024-03-22 [1] CRAN (R 4.4.0)
## memoise 2.0.1 2021-11-26 [1] CRAN (R 4.4.0)
## minqa 1.2.7 2024-05-20 [1] CRAN (R 4.4.0)
## mnormt 2.1.1 2022-09-26 [1] CRAN (R 4.4.0)
## multcomp 1.4-28 2025-01-29 [1] CRAN (R 4.4.3)
## mvtnorm 1.2-5 2024-05-21 [1] CRAN (R 4.4.1)
## nlme 3.1-164 2023-11-27 [1] CRAN (R 4.4.0)
## nloptr 2.0.3 2022-05-26 [1] CRAN (R 4.4.0)
## nnet 7.3-19 2023-05-03 [1] CRAN (R 4.4.0)
## performance 0.14.0 2025-05-22 [1] CRAN (R 4.4.3)
## pillar 1.11.0 2025-07-04 [1] CRAN (R 4.4.3)
## pkgbuild 1.4.8 2025-05-26 [1] CRAN (R 4.4.3)
## pkgconfig 2.0.3 2019-09-22 [1] CRAN (R 4.4.0)
## pkgload 1.4.1 2025-09-23 [1] CRAN (R 4.4.3)
## plyr * 1.8.9 2023-10-02 [1] CRAN (R 4.4.0)
## psych * 2.5.6 2025-06-23 [1] CRAN (R 4.4.3)
## purrr * 1.0.2 2023-08-10 [1] CRAN (R 4.4.0)
## qacDR * 0.1.0 2025-03-26 [1] Github (rkabacoff/qacDR@fd1d6a0)
## R6 2.6.1 2025-02-15 [1] CRAN (R 4.4.3)
## RColorBrewer 1.1-3 2022-04-03 [1] CRAN (R 4.4.0)
## Rcpp 1.0.12 2024-01-09 [1] CRAN (R 4.4.0)
## readr 2.1.5 2024-01-10 [1] CRAN (R 4.4.0)
## remotes 2.5.0 2024-03-17 [1] CRAN (R 4.4.0)
## rlang 1.1.4 2024-06-04 [1] CRAN (R 4.4.0)
## rmarkdown 2.29 2024-11-04 [1] CRAN (R 4.4.3)
## rpart 4.1.23 2023-12-05 [1] CRAN (R 4.4.0)
## rprojroot 2.1.1 2025-08-26 [1] CRAN (R 4.4.3)
## rstatix 0.7.2 2023-02-01 [1] CRAN (R 4.4.0)
## rstudioapi 0.17.1 2024-10-22 [1] CRAN (R 4.4.3)
## sandwich * 3.1-1 2024-09-15 [1] CRAN (R 4.4.3)
## sass 0.4.10 2025-04-11 [1] CRAN (R 4.4.3)
## scales 1.4.0 2025-04-24 [1] CRAN (R 4.4.3)
## sessioninfo 1.2.3 2025-02-05 [1] CRAN (R 4.4.3)
## sjlabelled * 1.2.0 2022-04-10 [1] CRAN (R 4.4.0)
## sjmisc 2.8.10 2024-05-13 [1] CRAN (R 4.4.0)
## sjPlot * 2.8.17 2024-11-29 [1] CRAN (R 4.4.3)
## sjstats 0.19.1 2025-06-13 [1] CRAN (R 4.4.3)
## stringi 1.8.4 2024-05-06 [1] CRAN (R 4.4.0)
## stringr 1.5.1 2023-11-14 [1] CRAN (R 4.4.0)
## survival 3.5-8 2024-02-14 [1] CRAN (R 4.4.0)
## svglite 2.1.3 2023-12-08 [1] CRAN (R 4.4.0)
## systemfonts 1.1.0 2024-05-15 [1] CRAN (R 4.4.0)
## texreg 1.39.4 2024-07-24 [1] CRAN (R 4.4.3)
## TH.data 1.1-3 2025-01-17 [1] CRAN (R 4.4.3)
## tibble 3.2.1 2023-03-20 [1] CRAN (R 4.4.0)
## tidyr * 1.3.1 2024-01-24 [1] CRAN (R 4.4.0)
## tidyselect 1.2.1 2024-03-11 [1] CRAN (R 4.4.0)
## tzdb 0.4.0 2023-05-12 [1] CRAN (R 4.4.0)
## usethis * 3.2.1 2025-09-06 [1] CRAN (R 4.4.3)
## vctrs 0.6.5 2023-12-01 [1] CRAN (R 4.4.0)
## viridisLite 0.4.2 2023-05-02 [1] CRAN (R 4.4.1)
## vtable * 1.4.8 2024-12-21 [1] CRAN (R 4.4.3)
## withr 3.0.2 2024-10-28 [1] CRAN (R 4.4.3)
## xfun 0.52 2025-04-02 [1] CRAN (R 4.4.3)
## xml2 1.3.6 2023-12-04 [1] CRAN (R 4.4.0)
## xtable 1.8-4 2019-04-21 [1] CRAN (R 4.4.0)
## yaml 2.3.8 2023-12-11 [1] CRAN (R 4.4.0)
## zoo * 1.8-12 2023-04-13 [1] CRAN (R 4.4.0)
##
## [1] C:/Program Files/R/R-4.4.0/library
## * ── Packages attached to the search path.
##
## ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────