# RESPONDENTS’ PREFERRED SURVEY TOPICS: MEASUREMENT AND PREVALENCE

### Replication Files: Study 3

#### Tobias Gummer, Saskia Bartholomäus, and Bernd Weiss

#### 19.01.2026

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