Introduction

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:

  1. Place all R.Rmd files in a subfolder named scripts and the data set in a subfolder named data.
  2. Required R packages are listed and loaded in 01am_dbd.Rmd. Please review this file to ensure that all necessary packages are installed before proceeding. Note that running 01am_dbd.Rmd will automatically create all required subfolders for the workflow.
  3. For the file 02dp_dbd.Rmd, include the path to required data set in the first code chunk.
  4. After making any necessary adjustments, you only need to run 05re_dbd.Rmd. This file will source all other scripts and reproduce the analyses and results as described in the project.
# Random Number Generation
set.seed(42)

Data Preparation

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)

Measurement Properties

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")
Summary Statistics
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")
Difference of Topic Popularity
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")
Difference of Topic Popularity
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")
Difference of Topic Popularity
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)

Principal Component Analysis

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

Documentation

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.
## 
## ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────