Total questions: ~115-120 items shown per respondent (varies by randomization/filtering), organized into 6 modules (A-F) across ~90 distinct variables
A (Core: Individual Self-Determination): 3 items (A01 single scale, A02 6-group battery, A03 multi-select “live freely” list ~20 options randomized)
B (Political/Economic/Socio-Cultural Elements): 9 items (B01 5 scales, B02 3 scales, B03 3 scales, B04 1 scale, B05 4 scales, B06 1 scale, B07-B09 conjoint tasks)
C (Liberal Script Applications/Contestations): 20+ items (C01 9 scales borders, C02 multi-select levels, C03 4 scales interventions, C04 5 scales public goods, C05 7 scales scarce jobs, C06 3 scales leadership, C07 2 scales generations, C08 6 scales temporality)
D (Political Values/Attitudes): 20+ items (D01 multi-select threats ~15 randomized, D02 2 scales satisfaction, D03 5 scales evaluations, D04 3 scales deprivation, D05 3 scales identity, D06 multi-select postmaterialism, D07 6 scales RWA, D08 3 scales globalization, D09 3 vignette experiments security trade-offs)
E (Voting Behavior): 3 items (E01 participation, E02/E03 vote choice/intention country-specific parties)
F (Sociodemographics): 26+ items (F01-F27: gender, birth year, education ISCED, employment, migration, religion ~30 country-specific, income, etc.)
library(tidyverse)
library(haven)
library(labelled)
library(survey)
library(forcats)
library(openxlsx)
library(Hmisc)
library(ggplot2)
library(kableExtra)
library(dplyr)
library(tidyr)
library(stringr)
library(knitr)
library(cregg)
library(scales)
PALS_extended_dataset <- read_dta("PALS extended dataset.dta")
pals <- PALS_extended_dataset
country_lookup <- tribble(
~country, ~country_name,
11, "Australia", 12, "Brazil", 13, "Chile", 14, "France",
15, "Germany", 16, "Ghana", 17, "India", 18, "Indonesia",
19, "Italy", 20, "Japan", 21, "Latvia", 22, "Mexico",
23, "Nigeria", 24, "Peru", 25, "Poland",
26, "Republic of Korea", 27, "Russian Federation",
28, "Senegal", 29, "Singapore", 30, "South Africa",
31, "Spain", 32, "Sweden", 33, "Tunisia",
34, "Türkiye", 35, "United Kingdom", 36, "United States"
)
country_codes <- country_lookup
Gender distribution shows near parity everywhere (typically 45-55% Male/Female), with minimal “Other” responses.
gender_country_table <- pals %>%
left_join(country_lookup, by = "country") %>%
mutate(gender = case_when(
F01 == 1 ~ "Male",
F01 == 2 ~ "Female",
F01 == 3 ~ "Other",
TRUE ~ "Missing"
)) %>%
group_by(country_name, gender) %>%
summarise(count = n(), .groups = "drop") %>%
group_by(country_name) %>%
mutate(pct = round(100 * count / sum(count), 1))
ggplot(gender_country_table,
aes(x = reorder(country_name, count, sum),
y = pct, fill = gender)) +
geom_col() +
coord_flip() +
theme_minimal() +
labs(title = "Gender Distribution by Country (%)",
x = "Country", y = "Percentage")
Age cohorts (Minor <18, Young 18-34, Middle-aged 35-54, Elderly 55+) mirror expected national demographics across countries.
age_country_table <- pals %>%
left_join(country_lookup, by = "country") %>%
mutate(
age = 2022 - F02, # updated survey year
age_cohort = case_when(
age >= 18 & age <= 34 ~ "Young (18–34)",
age >= 35 & age <= 54 ~ "Middle-aged (35–54)",
age >= 55 ~ "Older (55+)",
TRUE ~ NA_character_
),
age_cohort = factor(
age_cohort,
levels = c(
"Young (18–34)",
"Middle-aged (35–54)",
"Older (55+)"
)
)
) %>%
filter(!is.na(age_cohort)) %>%
group_by(country_name, age_cohort) %>%
summarise(count = n(), .groups = "drop") %>%
group_by(country_name) %>%
mutate(pct = round(100 * count / sum(count), 1))
view(age_country_table)
age_country_table %>%
ggplot(
aes(
x = reorder(country_name, pct, sum),
y = pct,
fill = age_cohort
)
) +
geom_col(position = position_stack(reverse = TRUE)) +
coord_flip() +
scale_fill_brewer(
type = "qual",
palette = "Set2",
limits = c(
"Young (18–34)",
"Middle-aged (35–54)",
"Older (55+)"
)
) +
theme_minimal() +
labs(
title = "Age Cohorts by Country (%)",
x = "Country",
y = "Percentage",
fill = "Age Cohort"
)
Collapse denomination into meaningful groups to avoid over fragmentation - codes from PALS codebook (F18 variable).
Religion reveals an interesting pattern: despite detailed Christian denomination options, many Western and Latin American respondents selected “No religion/Other”. India predictably shows Hindu dominance, African nations show Christian/Muslim splits.
religion_codes <- tribble(
~F18, ~religion_collapsed,
# No religion
0, "No religion",
# Hindu
10, "Hindu",
# Muslim
15, "Muslim",
# Christian – all denominations
1, "Christian",
3, "Christian",
5, "Christian",
6, "Christian",
7, "Christian",
8, "Christian",
11, "Christian",
13, "Christian",
14, "Christian",
16, "Christian",
17, "Christian",
18, "Christian",
19, "Christian",
20, "Christian",
21, "Christian",
22, "Christian",
23, "Christian",
24, "Christian",
25, "Christian",
26, "Christian",
27, "Christian",
28, "Christian",
# Everything else → Other
2, "Other",
4, "Other", # Buddhist
9, "Other",
12, "Other", # Jewish
29, "Other",
30, "Other", # Sikh
31, "Other",
32, "Other",
33, "Other",
997, "Other"
)
# Country-wise religion table
religion_country_table <- pals %>%
left_join(country_lookup, by = "country") %>%
left_join(religion_codes, by = "F18") %>%
mutate(
religion = if_else(
is.na(religion_collapsed),
"Other",
religion_collapsed
),
religion = factor(
religion,
levels = c(
"Hindu",
"Muslim",
"Christian",
"No religion",
"Other"
)
)
) %>%
group_by(country_name, religion) %>%
summarise(total = n(), .groups = "drop") %>%
group_by(country_name) %>%
mutate(
pct = round(100 * total / sum(total), 1)
) %>%
ungroup()
view(religion_country_table)
religion_country_table %>%
ggplot(
aes(
x = reorder(country_name, pct, sum),
y = pct,
fill = religion
)
) +
geom_col(position = position_stack(reverse = TRUE)) +
coord_flip() +
scale_fill_brewer(
type = "qual",
palette = "Set3"
) +
theme_minimal() +
labs(
title = "Religion by Country (%)",
x = "Country",
y = "Percentage",
fill = "Religion"
)
Education levels vary predictably by development level—higher tertiary strong in EU/West, lower secondary dominant in developing nations.
pals <- pals %>%
mutate(
education_collapsed = case_when(
F03 %in% c(1, 2) ~ "Primary",
F03 %in% c(3, 4) ~ "Secondary",
F03 %in% c(5, 6) ~ "Tertiary",
F03 %in% c(7, 97, 98, 99) ~ "Others",
TRUE ~ "Others"
),
education_collapsed = factor(
education_collapsed,
levels = c(
"Primary",
"Secondary",
"Tertiary",
"Others"
)
)
)
education_country_table <- pals %>%
left_join(country_lookup, by = "country") %>%
group_by(country_name, education_collapsed) %>%
summarise(count = n(), .groups = "drop") %>%
group_by(country_name) %>%
mutate(
pct = round(100 * count / sum(count), 1)
) %>%
ungroup()
education_country_table %>%
ggplot(
aes(
x = reorder(country_name, pct, sum),
y = pct,
fill = education_collapsed
)
) +
geom_col(position = position_stack(reverse = TRUE)) +
coord_flip() +
scale_fill_brewer(type = "qual", palette = "Set2") +
theme_minimal() +
labs(
title = "Education Levels by Country (%)",
x = "Country",
y = "Percentage",
fill = "Education level"
)
India - CAPI method (responses – 2822). 20 states, 2011 census sampling frame - 1 major district/state. 149 Primary sampling unit urban and rural. 20 sample/PSU.
Random probability sample, stratified by degree of urbanity.
Random sampling point within each stratum, followed by random walk - “next birthday rule” for 18+ interviewee. ……………………………… Examining 6-point Likert scale questions (1=fully disagree/liberal to 6=fully agree/conservative). I calculated extreme concentration (% choosing 1 + % choosing 6) for all such items, then filtered to ≥35% threshold to focus on truly polarized questions. Used post-stratification weights (w1a) for within-India comparisons to ensure representativeness.
Some of the key findings: • 42% on “Society should accept everyone equally” - strong equality preference.
• 47% fully accept government health data collection.
• Market economy control: Remarkably balanced at 22% (private) vs 20% (state) extremes.
• Collective self-determination questions heavily favor citizen opinions over religious leaders, elected politicians, or experts (35-42% extremes). This basically tells that Indians still favour the citizenry over others.
• 35% prefer “societal openness to change” vs tradition.
india_data <- pals %>%
filter(country == 17) %>%
mutate(weight = ifelse(w1a > 0 & !is.na(w1a), w1a, NA))
six_point_vars <- c(
# Module A
"A01",
paste0("A02_", letters[1:6]),
# Module B
paste0("B01_", letters[1:5]),
paste0("B02_", letters[1:3]),
paste0("B03_", letters[1:3]),
"B04",
paste0("B05_", letters[1:4]),
"B06",
# Module C
paste0("C01_", letters[1:8]),
paste0("C03_", c("a1", "a2", "b1", "b2")),
paste0("C04_", letters[1:5]),
paste0("C05_", letters[1:7]),
paste0("C06_", letters[1:3]),
paste0("C07_", letters[1:2]),
paste0("C08_", letters[1:6]),
# Module D
paste0("D02_", letters[1:2]),
paste0("D03_", letters[1:5]),
paste0("D04_", letters[1:3]),
paste0("D05_", letters[1:3]),
paste0("D07_", letters[1:6]),
paste0("D08_", letters[1:3]),
paste0("D09_", letters[1:3])
)
# weighted extremes
weighted_extreme_6pt <- function(x, w) {
valid <- !is.na(x) & !is.na(w) & x %in% 1:6
if (sum(valid) == 0) {
return(c(pct_1 = NA, pct_6 = NA, extreme = NA))
}
total_w <- sum(w[valid])
pct_1 <- sum(w[valid & x == 1]) / total_w * 100
pct_6 <- sum(w[valid & x == 6]) / total_w * 100
c(pct_1 = pct_1, pct_6 = pct_6, extreme = pct_1 + pct_6)
}
# weighted extremes for all variables
india_extremes_weighted <- map_df(
six_point_vars,
~{
res <- weighted_extreme_6pt(india_data[[.x]], india_data$weight)
tibble(
variable = .x,
pct_1 = res["pct_1"],
pct_6 = res["pct_6"],
extreme = res["extreme"]
)
}
) %>%
arrange(desc(extreme))
# Filter for extremes > 35%
india_extremes_35 <- india_extremes_weighted %>%
filter(extreme > 35)
# extract labels from PALS dataset
get_labels <- function(var) {
lbls <- attr(PALS_extended_dataset[[var]], "labels")
tibble(
question = attr(PALS_extended_dataset[[var]], "label"),
meaning_1 = names(lbls[lbls == 1])[1], # Get first match
meaning_6 = names(lbls[lbls == 6])[1] # Get first match
)
}
# final table with labels
india_extremes_final <- india_extremes_35 %>%
rowwise() %>%
mutate(labels = list(get_labels(variable))) %>%
unnest(labels) %>%
ungroup() %>%
mutate(
dominant_direction = case_when(
pct_1 > pct_6 ~ "Scale 1",
pct_6 > pct_1 ~ "Scale 6",
TRUE ~ "Balanced"
),
dominant_meaning = if_else(pct_1 > pct_6, meaning_1, meaning_6)
) %>%
select(
variable,
question,
pct_1,
meaning_1,
pct_6,
meaning_6,
dominant_direction,
dominant_meaning,
total_extreme = extreme
) %>%
arrange(desc(total_extreme))
knitr::kable(india_extremes_final,
col.names = c("Variable", "Question", "opt_1 %", "Meaning 1",
"opt_6 %", "Meaning 6", "Dominant", "Dominant Meaning", "% Extreme"),
digits = 1,
caption = "India: Polarization Extremes (≥35% at scale endpoints)")
| Variable | Question | opt_1 % | Meaning 1 | opt_6 % | Meaning 6 | Dominant | Dominant Meaning | % Extreme |
|---|---|---|---|---|---|---|---|---|
| B06 | Tolerance: Equal acceptance | 42.7 | 1 Society should accept all people equally. | 9.0 | 6 Society should decide on whom to accept. | Scale 1 | 1 Society should accept all people equally. | 51.8 |
| B02_a | Rule of law: Judicial control of government | 36.9 | 1 The government should always obey the laws and the court decisions, even if it hinders its work. | 14.4 | 6 The government should not be bound at all by laws or court decisions in all instances to be able to work unhindered. | Scale 1 | 1 The government should always obey the laws and the court decisions, even if it hinders its work. | 51.3 |
| A01 | Self-determination | 31.9 | 1 Everyone should be allowed to live as they want to, to foster individual freedom. | 19.2 | 6 Everyone should live in line with the values of the society to foster social cohesion. | Scale 1 | 1 Everyone should be allowed to live as they want to, to foster individual freedom. | 51.2 |
| B02_b | Rule of law: Equal enforcement of laws | 39.2 | 1 Laws should be enforced equally for everyone in society. | 11.8 | 6 Under certain circumstances, laws can be enforced differently for different people. | Scale 1 | 1 Laws should be enforced equally for everyone in society. | 50.9 |
| D09_b | Health data collection: Acceptance (outcome) | 3.3 | 1 Not acceptable at all | 47.3 | 6 Fully acceptable | Scale 6 | 6 Fully acceptable | 50.6 |
| B02_c | Rule of law: Basic rights across countries | 34.3 | 1 Every human should have the same basic rights in all countries. | 14.5 | 6 A country’s society should decide which rights people have in its country. | Scale 1 | 1 Every human should have the same basic rights in all countries. | 48.9 |
| D09_a | Anti-terror measure: Acceptance (outcome) | 6.7 | 1 Not acceptable at all | 41.9 | 6 Fully acceptable | Scale 6 | 6 Fully acceptable | 48.6 |
| D09_c | Tax fraud/corruption prevention: Acceptance (outcome) | 5.7 | 1 Not acceptable at all | 42.2 | 6 Fully acceptable | Scale 6 | 6 Fully acceptable | 47.9 |
| B01_e | Collective self-determination: The military | 32.9 | 1 Citizens’ opinion should be most decisive for policy-making. | 15.0 | 6 The military’s opinion should be most decisive for policy-making. | Scale 1 | 1 Citizens’ opinion should be most decisive for policy-making. | 47.9 |
| B03_c | Market economy: Source of wealth and status | 37.4 | 1 A person’s wealth and status should always be based on talents and efforts. | 8.8 | 6 A person’s wealth and status should always be based on ancestry and contacts. | Scale 1 | 1 A person’s wealth and status should always be based on talents and efforts. | 46.2 |
| B01_b | Collective self-determination: Elected politicians | 36.8 | 1 Citizens’ opinion should be most decisive for policy-making. | 9.3 | 6 Elected politicians’ opinion should be most decisive for policy-making. | Scale 1 | 1 Citizens’ opinion should be most decisive for policy-making. | 46.1 |
| B01_d | Collective self-determination: Religious leaders | 36.8 | 1 Citizens’ opinion should be most decisive for policy-making. | 8.2 | 6 Religious leaders’ opinion should be most decisive for policy-making. | Scale 1 | 1 Citizens’ opinion should be most decisive for policy-making. | 45.0 |
| B01_a | Collective self-determination: Political leaders | 36.4 | 1 Citizens’ opinion should be most decisive for policy-making. | 8.3 | 6 Strong political leaders’ opinion should be most decisive for policy-making. | Scale 1 | 1 Citizens’ opinion should be most decisive for policy-making. | 44.7 |
| B01_c | Collective self-determination: Established experts | 32.2 | 1 Citizens’ opinion should be most decisive for policy-making. | 12.2 | 6 Established experts’ opinion should be most decisive for policy-making. | Scale 1 | 1 Citizens’ opinion should be most decisive for policy-making. | 44.3 |
| B04 | Progress: Change vs. tradition | 35.8 | 1 Society should be open for change trying to ensure a bright future. | 8.4 | 6 Society should preserve well-established traditions trying to protect what works well nowadays. | Scale 1 | 1 Society should be open for change trying to ensure a bright future. | 44.2 |
| B05_d | Rationality: Individual vs. public determination of facts | 29.1 | 1 Everyone should figure out for themselves what is correct by looking for facts. | 14.8 | 6 What is correct should result from public discussions of facts. | Scale 1 | 1 Everyone should figure out for themselves what is correct by looking for facts. | 43.8 |
| B03_a | Market economy: Private vs. state control | 22.9 | 1 Private ownership of businesses and industry should be increased. | 20.3 | 6 State ownership of businesses and industry should be increased. | Scale 1 | 1 Private ownership of businesses and industry should be increased. | 43.2 |
| B03_b | Market economy: Competition good/bad for society | 20.9 | 1 Competition between businesses is good for a society. | 21.7 | 6 Competition between businesses is harmful for a society. | Scale 6 | 6 Competition between businesses is harmful for a society. | 42.6 |
| D05_a | Subjective identity: Local | 3.3 | 1 Not close at all | 38.8 | 6 Very close | Scale 6 | 6 Very close | 42.1 |
| D07_d | RWA: Premarital sexual intercourse | 27.7 | 1 Fully disagree | 11.9 | 6 Fully agree | Scale 1 | 1 Fully disagree | 39.6 |
| B05_a | Rationality: Science vs. experiences, traditions, and common sense | 20.9 | 1 Societal decisions should be primarily based on scientific research. | 17.5 | 6 Societal decisions should be primarily based on personal experiences, traditions, and common sense. | Scale 1 | 1 Societal decisions should be primarily based on scientific research. | 38.5 |
| B05_b | Rationality: Political influence of established scientists | 21.5 | 1 Established scientists should have more influence when politicians make important decisions. | 15.9 | 6 Established scientists should have less influence when politicians make important decisions. | Scale 1 | 1 Established scientists should have more influence when politicians make important decisions. | 37.4 |
| B05_c | Rationality: Limits of scientific explanations | 27.4 | 1 In a society, it is important to accept that all things can be explained by scientific research. | 9.8 | 6 In a society, it is important to accept that not all things can be explained by scientific research. | Scale 1 | 1 In a society, it is important to accept that all things can be explained by scientific research. | 37.2 |
# B03_a: N choosing 1 vs 6 by education (India)
b03a_edu_extremes <- pals %>%
filter(country == 17, !is.na(education_collapsed), !is.na(B03_a)) %>%
count(education_collapsed, response = B03_a) %>%
filter(response %in% c(1, 6)) %>%
pivot_wider(names_from = response, values_from = n, values_fill = 0) %>%
rename(`N=1 (Private)` = `1`, `N=6 (State)` = `6`) %>%
mutate(Total = `N=1 (Private)` + `N=6 (State)`) %>%
select(education_collapsed, `N=1 (Private)`, `N=6 (State)`, Total)
knitr::kable(b03a_edu_extremes,
col.names = c("Education", "N=1 (Private Ownership)", "N=6 (State Ownership)", "Total Extremes"),
digits = 0,
caption = "India B03_a: Extremes by Education (Raw Counts)")
| Education | N=1 (Private Ownership) | N=6 (State Ownership) | Total Extremes |
|---|---|---|---|
| Primary | 297 | 175 | 472 |
| Secondary | 132 | 149 | 281 |
| Tertiary | 116 | 180 | 296 |
| Others | 8 | 8 | 16 |
Nothing much insightful.
india_data <- pals %>% filter(country == 17)
# State labels (full lookup)
state_labels <- tibble(
F21 = c(1701:1720),
state = c("Andhra Pradesh", "Assam", "Bihar", "Chhattisgarh",
"Delhi", "Gujarat", "Haryana", "Himachal Pradesh",
"Jharkhand", "Karnataka", "Kerala", "Madhya Pradesh",
"Maharashtra", "Odisha", "Punjab", "Rajasthan",
"Tamil Nadu", "Uttar Pradesh", "Uttarakhand", "West Bengal")
)
# Create table
state_table <- india_data %>%
count(F21, F20, name = "N_resp") %>%
complete(F21, F20 = c(1,2,3), fill = list(N_resp = 0)) %>%
group_by(F21) %>%
summarise(
N_total = sum(N_resp),
pct_rural = scales::percent(sum(N_resp[F20 == 1]) / N_total, accuracy = 0.1),
pct_smalltown = scales::percent(sum(N_resp[F20 == 2]) / N_total, accuracy = 0.1),
pct_city = scales::percent(sum(N_resp[F20 == 3]) / N_total, accuracy = 0.1),
.groups = "drop"
) %>%
left_join(state_labels, by = "F21") %>% # ← Fixed paren
select(F21, state, N_total, pct_rural, pct_smalltown, pct_city) %>%
arrange(desc(N_total)) %>%
filter(!is.na(state))
knitr::kable(state_table, caption = "India: States, total response, and urban/rural (%)")
| F21 | state | N_total | pct_rural | pct_smalltown | pct_city |
|---|---|---|---|---|---|
| 1718 | Uttar Pradesh | 330 | 87.9% | 4.2% | 7.9% |
| 1713 | Maharashtra | 191 | 52.9% | 14.7% | 32.5% |
| 1703 | Bihar | 170 | 88.2% | 1.2% | 10.6% |
| 1720 | West Bengal | 152 | 59.2% | 15.1% | 25.7% |
| 1701 | Andhra Pradesh | 140 | 57.1% | 0.0% | 42.9% |
| 1705 | Delhi | 133 | 0.0% | 34.6% | 65.4% |
| 1712 | Madhya Pradesh | 130 | 69.2% | 6.2% | 24.6% |
| 1704 | Chhattisgarh | 128 | 77.3% | 7.0% | 15.6% |
| 1714 | Odisha | 124 | 80.6% | 6.5% | 12.9% |
| 1709 | Jharkhand | 121 | 75.2% | 5.8% | 19.0% |
| 1711 | Kerala | 121 | 49.6% | 24.8% | 25.6% |
| 1717 | Tamil Nadu | 121 | 50.4% | 25.6% | 24.0% |
| 1719 | Uttarakhand | 121 | 66.1% | 26.4% | 7.4% |
| 1702 | Assam | 120 | 83.3% | 16.7% | 0.0% |
| 1706 | Gujarat | 120 | 66.7% | 0.0% | 33.3% |
| 1707 | Haryana | 120 | 66.7% | 5.0% | 28.3% |
| 1708 | Himachal Pradesh | 120 | 91.7% | 3.3% | 5.0% |
| 1710 | Karnataka | 120 | 50.0% | 1.7% | 48.3% |
| 1715 | Punjab | 120 | 66.7% | 0.8% | 32.5% |
| 1716 | Rajasthan | 120 | 75.0% | 5.0% | 20.0% |
# Extract labels once
get_labels <- function(v, data = pals, trunc = 60) {
x <- data[[v]]
question <- attr(x, "label")
if (is.null(question)) question <- NA_character_
lbls <- attr(x, "labels")
meaning_1 <- NA_character_
meaning_6 <- NA_character_
if (!is.null(lbls)) {
if (any(lbls == 1)) meaning_1 <- names(lbls)[which(lbls == 1)][1]
if (any(lbls == 6)) meaning_6 <- names(lbls)[which(lbls == 6)][1]
}
tibble(
variable = v,
question = stringr::str_trunc(as.character(question), trunc),
meaning_1 = meaning_1,
meaning_6 = meaning_6
)
}
labels_lookup <- bind_rows(lapply(six_point_vars, get_labels, data = pals))
# ============================================================
# SEGMENT 1: Create India macro-regions + unweighted summary
# ============================================================
pals_india <- pals %>%
filter(country == 17) %>%
mutate(
F21_num = as.numeric(as.character(F21)),
india_macro = case_when(
F21_num %in% c(1705, 1707, 1708, 1715, 1718, 1716, 1719) ~ "North",
F21_num %in% c(1712, 1713, 1706, 1704) ~ "Central",
F21_num %in% c(1709, 1714, 1702, 1703, 1720) ~ "East",
F21_num %in% c(1717, 1710, 1711, 1701) ~ "South",
TRUE ~ NA_character_
),
india_macro = factor(india_macro, levels = c("North", "Central", "East", "South")),
F20_num = as.numeric(as.character(F20)),
residence = case_when(
F20_num == 1 ~ "Rural/Village",
F20_num == 2 ~ "Small/Mid town",
F20_num == 3 ~ "Large city",
TRUE ~ NA_character_
)
)
# Unweighted N by macro-region
knitr::kable(
pals_india %>% count(india_macro, name = "N_unweighted"),
caption = "India macro-regions: unweighted N"
)
| india_macro | N_unweighted |
|---|---|
| North | 1064 |
| Central | 569 |
| East | 687 |
| South | 502 |
# Unweighted composition by residence (F20)
india_region_summary_unw <- pals_india %>%
filter(!is.na(india_macro), !is.na(residence)) %>%
count(india_macro, residence, name = "N") %>%
group_by(india_macro) %>%
mutate(pct_within_macro = round(100 * N / sum(N), 1)) %>%
ungroup() %>%
arrange(india_macro, residence)
knitr::kable(
india_region_summary_unw,
caption = "India macro-regions: unweighted composition by residential environment (F20)"
)
| india_macro | residence | N | pct_within_macro |
|---|---|---|---|
| North | Large city | 225 | 21.1 |
| North | Rural/Village | 730 | 68.6 |
| North | Small/Mid town | 109 | 10.2 |
| Central | Large city | 154 | 27.1 |
| Central | Rural/Village | 370 | 65.0 |
| Central | Small/Mid town | 45 | 7.9 |
| East | Large city | 96 | 14.0 |
| East | Rural/Village | 531 | 77.3 |
| East | Small/Mid town | 60 | 8.7 |
| South | Large city | 178 | 35.5 |
| South | Rural/Village | 261 | 52.0 |
| South | Small/Mid town | 63 | 12.5 |
# ============================================================
# SEGMENT 2: Within-India weighted means + final table
# ============================================================
pals_india_long <- pals_india %>%
select(india_macro, w2, w4, all_of(six_point_vars)) %>%
mutate(across(all_of(six_point_vars), \(x) as.numeric(as.character(x)))) %>%
pivot_longer(
cols = all_of(six_point_vars),
names_to = "variable",
values_to = "response"
) %>%
filter(!is.na(india_macro), !is.na(response), response %in% 1:6, w2 > 0)
# Macro-region weighted means
india_macro_means <- pals_india_long %>%
group_by(india_macro, variable) %>%
summarise(
macro_mean = weighted.mean(response, w2 * w4, na.rm = TRUE),
.groups = "drop"
) %>%
pivot_wider(names_from = india_macro, values_from = macro_mean)
# India overall weighted mean
india_overall_means <- pals_india_long %>%
group_by(variable) %>%
summarise(
India = weighted.mean(response, w2 * w4, na.rm = TRUE),
.groups = "drop"
)
# Final table with labels + meanings
india_macro_table <- india_overall_means %>%
left_join(india_macro_means, by = "variable") %>%
left_join(labels_lookup, by = "variable") %>%
select(variable, question, meaning_1, meaning_6, India, North, Central, East, South)
india_macro_table %>%
kableExtra::kbl(
format = "html",
digits = 2,
caption = "India vs India Macro-Region Averages (1–6 scale), weighted"
) %>%
kableExtra::kable_styling(full_width = FALSE) %>%
kableExtra::scroll_box(width = "100%", height = "600px")
| variable | question | meaning_1 | meaning_6 | India | North | Central | East | South |
|---|---|---|---|---|---|---|---|---|
| A01 | Self-determination | 1 Everyone should be allowed to live as they want to, to foster individual freedom. | 6 Everyone should live in line with the values of the society to foster social cohesion. | 3.24 | 2.78 | 3.61 | 3.07 | 3.63 |
| A02_a | Restrictions of freedom: Religious groups/leaders | 1 Not at all allowed to restrict freedom | 6 Fully allowed to restrict freedom | 3.67 | 3.78 | 4.47 | 3.02 | 3.40 |
| A02_b | Restrictions of freedom: State/government | 1 Not at all allowed to restrict freedom | 6 Fully allowed to restrict freedom | 3.94 | 3.73 | 4.46 | 3.90 | 3.71 |
| A02_c | Restrictions of freedom: Family | 1 Not at all allowed to restrict freedom | 6 Fully allowed to restrict freedom | 4.12 | 3.83 | 4.66 | 3.97 | 4.12 |
| A02_d | Restrictions of freedom: Police | 1 Not at all allowed to restrict freedom | 6 Fully allowed to restrict freedom | 3.92 | 3.86 | 4.54 | 3.71 | 3.61 |
| A02_e | Restrictions of freedom: Businesses/companies | 1 Not at all allowed to restrict freedom | 6 Fully allowed to restrict freedom | 3.63 | 3.88 | 4.27 | 2.94 | 3.41 |
| A02_f | Restrictions of freedom: Societal majority | 1 Not at all allowed to restrict freedom | 6 Fully allowed to restrict freedom | 3.98 | 3.86 | 4.50 | 3.93 | 3.65 |
| B01_a | Collective self-determination: Political leaders | 1 Citizens’ opinion should be most decisive for policy-making. | 6 Strong political leaders’ opinion should be most decisive for policy-making. | 2.78 | 2.83 | 3.58 | 2.30 | 2.42 |
| B01_b | Collective self-determination: Elected politicians | 1 Citizens’ opinion should be most decisive for policy-making. | 6 Elected politicians’ opinion should be most decisive for policy-making. | 2.82 | 2.86 | 3.73 | 2.28 | 2.43 |
| B01_c | Collective self-determination: Established experts | 1 Citizens’ opinion should be most decisive for policy-making. | 6 Established experts’ opinion should be most decisive for policy-making. | 3.01 | 2.89 | 3.69 | 2.83 | 2.67 |
| B01_d | Collective self-determination: Religious leaders | 1 Citizens’ opinion should be most decisive for policy-making. | 6 Religious leaders’ opinion should be most decisive for policy-making. | 2.75 | 2.65 | 3.61 | 2.28 | 2.48 |
| B01_e | Collective self-determination: The military | 1 Citizens’ opinion should be most decisive for policy-making. | 6 The military’s opinion should be most decisive for policy-making. | 3.01 | 2.94 | 3.95 | 2.56 | 2.62 |
| B02_a | Rule of law: Judicial control of government | 1 The government should always obey the laws and the court decisions, even if it hinders its work. | 6 The government should not be bound at all by laws or court decisions in all instances to be able to work unhindered. | 2.81 | 2.79 | 3.78 | 2.45 | 2.25 |
| B02_b | Rule of law: Equal enforcement of laws | 1 Laws should be enforced equally for everyone in society. | 6 Under certain circumstances, laws can be enforced differently for different people. | 2.84 | 2.62 | 3.72 | 2.40 | 2.70 |
| B02_c | Rule of law: Basic rights across countries | 1 Every human should have the same basic rights in all countries. | 6 A country’s society should decide which rights people have in its country. | 3.05 | 2.99 | 3.63 | 2.46 | 3.21 |
| B03_a | Market economy: Private vs. state control | 1 Private ownership of businesses and industry should be increased. | 6 State ownership of businesses and industry should be increased. | 3.41 | 2.98 | 3.96 | 3.46 | 3.32 |
| B03_b | Market economy: Competition good/bad for society | 1 Competition between businesses is good for a society. | 6 Competition between businesses is harmful for a society. | 3.46 | 2.89 | 3.83 | 3.18 | 4.15 |
| B03_c | Market economy: Source of wealth and status | 1 A person’s wealth and status should always be based on talents and efforts. | 6 A person’s wealth and status should always be based on ancestry and contacts. | 2.68 | 2.73 | 3.51 | 2.15 | 2.36 |
| B04 | Progress: Change vs. tradition | 1 Society should be open for change trying to ensure a bright future. | 6 Society should preserve well-established traditions trying to protect what works well nowadays. | 2.71 | 2.37 | 3.10 | 2.95 | 2.43 |
| B05_a | Rationality: Science vs. experiences, traditions, and com… | 1 Societal decisions should be primarily based on scientific research. | 6 Societal decisions should be primarily based on personal experiences, traditions, and common sense. | 3.40 | 2.97 | 3.97 | 3.05 | 3.78 |
| B05_b | Rationality: Political influence of established scientists | 1 Established scientists should have more influence when politicians make important decisions. | 6 Established scientists should have less influence when politicians make important decisions. | 3.38 | 2.99 | 4.05 | 2.80 | 3.91 |
| B05_c | Rationality: Limits of scientific explanations | 1 In a society, it is important to accept that all things can be explained by scientific research. | 6 In a society, it is important to accept that not all things can be explained by scientific research. | 3.03 | 2.56 | 3.77 | 3.11 | 2.73 |
| B05_d | Rationality: Individual vs. public determination of facts | 1 Everyone should figure out for themselves what is correct by looking for facts. | 6 What is correct should result from public discussions of facts. | 3.13 | 3.10 | 3.72 | 3.09 | 2.60 |
| B06 | Tolerance: Equal acceptance | 1 Society should accept all people equally. | 6 Society should decide on whom to accept. | 2.55 | 2.56 | 3.13 | 2.15 | 2.40 |
| C01_a | Borders: Ban access to foreign information | 1 Fully disagree | 6 Fully agree | 4.29 | 4.11 | 4.43 | 4.22 | 4.47 |
| C01_b | Borders: Hinder citizens from leaving | 1 Fully disagree | 6 Fully agree | 4.25 | 4.01 | 4.41 | 4.27 | 4.38 |
| C01_c | Borders: Reject refugees | 1 Fully disagree | 6 Fully agree | 4.17 | 4.01 | 4.33 | 4.18 | 4.23 |
| C01_d | Borders: Reject immigrants | 1 Fully disagree | 6 Fully agree | 4.19 | 4.04 | 4.33 | 4.16 | 4.28 |
| C01_e | Borders: Restrict investment of foreign companies | 1 Fully disagree | 6 Fully agree | 4.40 | 4.18 | 4.51 | 4.46 | 4.49 |
| C01_f | Borders: Shooting at persons crossing illegally | 1 Fully disagree | 6 Fully agree | 4.22 | 4.04 | 4.40 | 4.07 | 4.43 |
| C01_g | Borders: Taking fingerprints | 1 Fully disagree | 6 Fully agree | 4.53 | 4.15 | 4.78 | 4.66 | 4.64 |
| C01_h | Borders: Preventing secessions | 1 Fully disagree | 6 Fully agree | 4.29 | 4.09 | 4.43 | 4.36 | 4.32 |
| C03_a1 | Human rights violations: Economic intervention | 1 Fully disagree | 6 Fully agree | 4.13 | 3.97 | 4.25 | 4.11 | 4.25 |
| C03_a2 | Human rights violations: Military intervention | 1 Fully disagree | 6 Fully agree | 4.17 | 4.03 | 4.20 | 4.21 | 4.31 |
| C03_b1 | Dictatorship: Economic intervention | 1 Fully disagree | 6 Fully agree | 4.17 | 3.97 | 4.25 | 4.27 | 4.23 |
| C03_b2 | Dictatorship: Military intervention | 1 Fully disagree | 6 Fully agree | 4.17 | 4.04 | 4.12 | 4.20 | 4.37 |
| C04_a | Public good provision: Free education | 1 Fully disagree | 6 Fully agree | 4.53 | 4.12 | 4.77 | 4.89 | 4.42 |
| C04_b | Public good provision: Free healthcare | 1 Fully disagree | 6 Fully agree | 4.56 | 4.04 | 4.82 | 4.99 | 4.49 |
| C04_c | Public good provision: Welfare benefits | 1 Fully disagree | 6 Fully agree | 4.57 | 4.12 | 4.87 | 4.89 | 4.49 |
| C04_d | Public good provision: Support for disadvantaged groups | 1 Fully disagree | 6 Fully agree | 4.44 | 4.04 | 4.78 | 4.81 | 4.17 |
| C04_e | Public good provision: Support for women | 1 Fully disagree | 6 Fully agree | 4.41 | 4.09 | 4.71 | 4.67 | 4.20 |
| C05_a | Scarce jobs: Preference for men | 1 Fully disagree | 6 Fully agree | 4.03 | 3.96 | 4.27 | 3.85 | 4.05 |
| C05_b | Scarce jobs: Preference for nationals | 1 Fully disagree | 6 Fully agree | 4.09 | 4.02 | 4.30 | 3.96 | 4.09 |
| C05_c | Scarce jobs: Preference for heterosexuals | 1 Fully disagree | 6 Fully agree | 3.90 | 3.99 | 4.22 | 3.48 | 3.90 |
| C05_d | Scarce jobs: Preference for people in need | 1 Fully disagree | 6 Fully agree | 4.33 | 4.10 | 4.43 | 4.53 | 4.27 |
| C05_e | Scarce jobs: Preference for family members | 1 Fully disagree | 6 Fully agree | 3.87 | 3.93 | 4.14 | 3.42 | 4.04 |
| C05_f | Scarce jobs: Preference for own religion | 1 Fully disagree | 6 Fully agree | 3.85 | 3.90 | 4.22 | 3.36 | 3.95 |
| C05_g | Scarce jobs: Preference for own ethnic group | 1 Fully disagree | 6 Fully agree | 3.84 | 3.92 | 4.12 | 3.38 | 3.97 |
| C06_a | Leadership positions: Gender representation | 1 Fully disagree | 6 Fully agree | 4.29 | 4.01 | 4.70 | 4.30 | 4.21 |
| C06_b | Leadership positions: Ethnic representation | 1 Fully disagree | 6 Fully agree | 4.18 | 4.01 | 4.67 | 3.95 | 4.15 |
| C06_c | Leadership positions: Economic status representation | 1 Fully disagree | 6 Fully agree | 4.43 | 3.99 | 4.68 | 4.73 | 4.40 |
| C07_a | Generational conflict: Prosperity vs. environment | 1 Fully disagree | 6 Fully agree | 4.23 | 4.02 | 4.55 | 4.24 | 4.16 |
| C07_b | Generational conflict: Public debt | 1 Fully disagree | 6 Fully agree | 4.11 | 3.95 | 4.44 | 3.86 | 4.23 |
| C08_a | Temporality: Punctuality | 1 Fully disagree | 6 Fully agree | 4.47 | 4.13 | 4.86 | 4.57 | 4.37 |
| C08_b | Temporality: Efficiency | 1 Fully disagree | 6 Fully agree | 4.17 | 4.07 | 4.80 | 3.80 | 4.08 |
| C08_c | Temporality: Free time | 1 Fully disagree | 6 Fully agree | 3.76 | 3.96 | 4.32 | 2.94 | 3.85 |
| C08_d | Temporality: Enjoying the present | 1 Fully disagree | 6 Fully agree | 4.19 | 4.01 | 4.86 | 3.77 | 4.23 |
| C08_e | Temporality: Control of future | 1 Fully disagree | 6 Fully agree | 4.50 | 4.18 | 4.87 | 4.64 | 4.37 |
| C08_f | Temporality: Better life compared to parents | 1 Fully disagree | 6 Fully agree | 4.56 | 4.04 | 4.83 | 4.93 | 4.55 |
| D02_a | Satisfaction: Political system | 1 Fully dissatisfied | 6 Fully satisfied | 4.24 | 4.00 | 4.69 | 4.07 | 4.27 |
| D02_b | Satisfaction: Economic system | 1 Fully dissatisfied | 6 Fully satisfied | 4.23 | 4.03 | 4.50 | 4.13 | 4.32 |
| D03_a | Interpersonal trust | 1 Fully disagree | 6 Fully agree | 3.97 | 4.00 | 4.33 | 3.66 | 3.88 |
| D03_b | Citizens’ rights during pandemic | 1 Fully disagree | 6 Fully agree | 4.53 | 4.08 | 4.82 | 4.71 | 4.63 |
| D03_c | Losers of globalization | 1 Fully disagree | 6 Fully agree | 4.12 | 3.96 | 4.46 | 4.03 | 4.08 |
| D03_d | Anti-elitism: Big interests | 1 Fully disagree | 6 Fully agree | 4.35 | 4.30 | 4.70 | 4.43 | 3.96 |
| D03_e | Anti-elitism: Responsible officials | 1 Fully disagree | 6 Fully agree | 4.21 | 3.90 | 4.74 | 4.19 | 4.10 |
| D04_a | Deprivation: Political influence | 1 Fully disagree | 6 Fully agree | 4.23 | 4.07 | 4.44 | 4.26 | 4.19 |
| D04_b | Deprivation: Economic situation | 1 Fully disagree | 6 Fully agree | 4.17 | 4.04 | 4.37 | 4.26 | 4.04 |
| D04_c | Deprivation: Traditions and customs | 1 Fully disagree | 6 Fully agree | 4.12 | 3.95 | 4.53 | 4.02 | 4.05 |
| D05_a | Subjective identity: Local | 1 Not close at all | 6 Very close | 4.57 | 4.01 | 4.89 | 4.74 | 4.77 |
| D05_b | Subjective identity: National | 1 Not close at all | 6 Very close | 4.43 | 4.36 | 4.69 | 4.48 | 4.22 |
| D05_c | Subjective identity: Regional | 1 Not close at all | 6 Very close | 3.90 | 3.93 | 4.67 | 3.00 | 4.04 |
| D07_a | RWA: Defy authority | 1 Fully disagree | 6 Fully agree | 4.05 | 4.04 | 4.16 | 4.15 | 3.86 |
| D07_b | RWA: Discipline and unity | 1 Fully disagree | 6 Fully agree | 4.23 | 3.97 | 4.36 | 4.43 | 4.23 |
| D07_c | RWA: Old-fashioned ways and values | 1 Fully disagree | 6 Fully agree | 4.14 | 3.95 | 4.31 | 4.20 | 4.17 |
| D07_d | RWA: Premarital sexual intercourse | 1 Fully disagree | 6 Fully agree | 3.11 | 3.64 | 3.60 | 2.33 | 2.82 |
| D07_e | RWA: Tougher government and stricter laws | 1 Fully disagree | 6 Fully agree | 3.84 | 4.12 | 3.85 | 3.38 | 4.01 |
| D07_f | RWA: Crack down on troublemakers | 1 Fully disagree | 6 Fully agree | 4.40 | 4.09 | 4.43 | 4.60 | 4.54 |
| D08_a | Globalization: Limiting International trade | 1 Fully disagree | 6 Fully agree | 4.38 | 4.04 | 4.76 | 4.53 | 4.25 |
| D08_b | Globalization: International organizations take away power | 1 Fully disagree | 6 Fully agree | 4.20 | 3.90 | 4.79 | 3.98 | 4.20 |
| D08_c | Globalization: Immigrants endanger society | 1 Fully disagree | 6 Fully agree | 4.20 | 4.02 | 4.62 | 3.97 | 4.23 |
| D09_a | Anti-terror measure: Acceptance (outcome) | 1 Not acceptable at all | 6 Fully acceptable | 4.63 | 4.36 | 4.49 | 4.84 | 4.90 |
| D09_b | Health data collection: Acceptance (outcome) | 1 Not acceptable at all | 6 Fully acceptable | 4.85 | 4.54 | 4.53 | 5.22 | 5.15 |
| D09_c | Tax fraud/corruption prevention: Acceptance (outcome) | 1 Not acceptable at all | 6 Fully acceptable | 4.67 | 4.45 | 4.54 | 4.81 | 4.91 |
# Weighted with w2 (India-only)
india_macro_means_w <- pals_india_long %>%
group_by(india_macro, variable) %>%
summarise(macro_mean_w2 = weighted.mean(response, w2, na.rm = TRUE),
.groups = "drop") %>%
pivot_wider(names_from = india_macro, values_from = macro_mean_w2)
india_overall_means_w <- pals_india_long %>%
group_by(variable) %>%
summarise(India_w2 = weighted.mean(response, w2, na.rm = TRUE),
.groups = "drop")
# Unweighted
india_macro_means_unw <- pals_india_long %>%
group_by(india_macro, variable) %>%
summarise(macro_mean_unw = mean(response, na.rm = TRUE),
.groups = "drop") %>%
pivot_wider(names_from = india_macro, values_from = macro_mean_unw)
india_overall_means_unw <- pals_india_long %>%
group_by(variable) %>%
summarise(India_unw = mean(response, na.rm = TRUE),
.groups = "drop")
# Combine for comparison
india_macro_compare <- india_overall_means_w %>%
left_join(india_overall_means_unw, by = "variable") %>%
left_join(india_macro_means_w, by = "variable") %>%
left_join(india_macro_means_unw, by = "variable", suffix = c("_w2", "_unw")) %>%
left_join(labels_lookup, by = "variable")
india_macro_compare_fmt <- india_macro_compare %>%
transmute(
variable,
question,
meaning_1,
meaning_6,
`India (w2)` = India_w2,
`India (unw)` = India_unw,
`North (w2)` = North_w2,
`North (unw)` = North_unw,
`Central (w2)` = Central_w2,
`Central (unw)` = Central_unw,
`East (w2)` = East_w2,
`East (unw)` = East_unw,
`South (w2)` = South_w2,
`South (unw)` = South_unw
)
india_macro_compare_fmt %>%
kbl(
format = "html",
digits = 2,
caption = "India macro-regions vs India average (1–6 scale): weighted (w2) and unweighted"
) %>%
kable_styling(full_width = FALSE,
bootstrap_options = c("striped", "condensed", "hover")) %>%
scroll_box(width = "100%", height = "600px")
| variable | question | meaning_1 | meaning_6 | India (w2) | India (unw) | North (w2) | North (unw) | Central (w2) | Central (unw) | East (w2) | East (unw) | South (w2) | South (unw) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| A01 | Self-determination | 1 Everyone should be allowed to live as they want to, to foster individual freedom. | 6 Everyone should live in line with the values of the society to foster social cohesion. | 3.24 | 3.07 | 2.78 | 2.71 | 3.61 | 3.36 | 3.07 | 2.99 | 3.63 | 3.60 |
| A02_a | Restrictions of freedom: Religious groups/leaders | 1 Not at all allowed to restrict freedom | 6 Fully allowed to restrict freedom | 3.67 | 3.63 | 3.78 | 3.60 | 4.47 | 4.43 | 3.02 | 3.06 | 3.40 | 3.58 |
| A02_b | Restrictions of freedom: State/government | 1 Not at all allowed to restrict freedom | 6 Fully allowed to restrict freedom | 3.94 | 3.94 | 3.73 | 3.63 | 4.46 | 4.53 | 3.90 | 4.04 | 3.71 | 3.77 |
| A02_c | Restrictions of freedom: Family | 1 Not at all allowed to restrict freedom | 6 Fully allowed to restrict freedom | 4.12 | 3.96 | 3.83 | 3.57 | 4.66 | 4.61 | 3.97 | 3.97 | 4.12 | 4.06 |
| A02_d | Restrictions of freedom: Police | 1 Not at all allowed to restrict freedom | 6 Fully allowed to restrict freedom | 3.92 | 3.91 | 3.86 | 3.67 | 4.54 | 4.53 | 3.71 | 3.90 | 3.61 | 3.71 |
| A02_e | Restrictions of freedom: Businesses/companies | 1 Not at all allowed to restrict freedom | 6 Fully allowed to restrict freedom | 3.63 | 3.63 | 3.88 | 3.68 | 4.27 | 4.28 | 2.94 | 3.08 | 3.41 | 3.53 |
| A02_f | Restrictions of freedom: Societal majority | 1 Not at all allowed to restrict freedom | 6 Fully allowed to restrict freedom | 3.98 | 3.94 | 3.86 | 3.66 | 4.50 | 4.66 | 3.93 | 3.87 | 3.65 | 3.77 |
| B01_a | Collective self-determination: Political leaders | 1 Citizens’ opinion should be most decisive for policy-making. | 6 Strong political leaders’ opinion should be most decisive for policy-making. | 2.78 | 2.80 | 2.83 | 2.76 | 3.58 | 3.38 | 2.30 | 2.39 | 2.42 | 2.81 |
| B01_b | Collective self-determination: Elected politicians | 1 Citizens’ opinion should be most decisive for policy-making. | 6 Elected politicians’ opinion should be most decisive for policy-making. | 2.82 | 2.79 | 2.86 | 2.74 | 3.73 | 3.49 | 2.28 | 2.35 | 2.43 | 2.70 |
| B01_c | Collective self-determination: Established experts | 1 Citizens’ opinion should be most decisive for policy-making. | 6 Established experts’ opinion should be most decisive for policy-making. | 3.01 | 2.97 | 2.89 | 2.79 | 3.69 | 3.39 | 2.83 | 2.89 | 2.67 | 2.95 |
| B01_d | Collective self-determination: Religious leaders | 1 Citizens’ opinion should be most decisive for policy-making. | 6 Religious leaders’ opinion should be most decisive for policy-making. | 2.75 | 2.73 | 2.65 | 2.62 | 3.61 | 3.39 | 2.28 | 2.27 | 2.48 | 2.81 |
| B01_e | Collective self-determination: The military | 1 Citizens’ opinion should be most decisive for policy-making. | 6 The military’s opinion should be most decisive for policy-making. | 3.01 | 3.03 | 2.94 | 2.96 | 3.95 | 3.70 | 2.56 | 2.63 | 2.62 | 2.98 |
| B02_a | Rule of law: Judicial control of government | 1 The government should always obey the laws and the court decisions, even if it hinders its work. | 6 The government should not be bound at all by laws or court decisions in all instances to be able to work unhindered. | 2.81 | 2.74 | 2.79 | 2.59 | 3.78 | 3.54 | 2.45 | 2.46 | 2.25 | 2.52 |
| B02_b | Rule of law: Equal enforcement of laws | 1 Laws should be enforced equally for everyone in society. | 6 Under certain circumstances, laws can be enforced differently for different people. | 2.84 | 2.77 | 2.62 | 2.58 | 3.72 | 3.53 | 2.40 | 2.28 | 2.70 | 3.01 |
| B02_c | Rule of law: Basic rights across countries | 1 Every human should have the same basic rights in all countries. | 6 A country’s society should decide which rights people have in its country. | 3.05 | 3.02 | 2.99 | 2.93 | 3.63 | 3.41 | 2.46 | 2.55 | 3.21 | 3.42 |
| B03_a | Market economy: Private vs. state control | 1 Private ownership of businesses and industry should be increased. | 6 State ownership of businesses and industry should be increased. | 3.41 | 3.37 | 2.98 | 3.06 | 3.96 | 3.83 | 3.46 | 3.49 | 3.32 | 3.35 |
| B03_b | Market economy: Competition good/bad for society | 1 Competition between businesses is good for a society. | 6 Competition between businesses is harmful for a society. | 3.46 | 3.36 | 2.89 | 2.93 | 3.83 | 3.76 | 3.18 | 3.14 | 4.15 | 4.12 |
| B03_c | Market economy: Source of wealth and status | 1 A person’s wealth and status should always be based on talents and efforts. | 6 A person’s wealth and status should always be based on ancestry and contacts. | 2.68 | 2.72 | 2.73 | 2.78 | 3.51 | 3.31 | 2.15 | 2.21 | 2.36 | 2.63 |
| B04 | Progress: Change vs. tradition | 1 Society should be open for change trying to ensure a bright future. | 6 Society should preserve well-established traditions trying to protect what works well nowadays. | 2.71 | 2.62 | 2.37 | 2.31 | 3.10 | 2.99 | 2.95 | 2.82 | 2.43 | 2.58 |
| B05_a | Rationality: Science vs. experiences, traditions, and com… | 1 Societal decisions should be primarily based on scientific research. | 6 Societal decisions should be primarily based on personal experiences, traditions, and common sense. | 3.40 | 3.21 | 2.97 | 2.83 | 3.97 | 3.86 | 3.05 | 2.94 | 3.78 | 3.67 |
| B05_b | Rationality: Political influence of established scientists | 1 Established scientists should have more influence when politicians make important decisions. | 6 Established scientists should have less influence when politicians make important decisions. | 3.38 | 3.24 | 2.99 | 3.02 | 4.05 | 3.89 | 2.80 | 2.63 | 3.91 | 3.83 |
| B05_c | Rationality: Limits of scientific explanations | 1 In a society, it is important to accept that all things can be explained by scientific research. | 6 In a society, it is important to accept that not all things can be explained by scientific research. | 3.03 | 2.94 | 2.56 | 2.53 | 3.77 | 3.57 | 3.11 | 3.04 | 2.73 | 2.94 |
| B05_d | Rationality: Individual vs. public determination of facts | 1 Everyone should figure out for themselves what is correct by looking for facts. | 6 What is correct should result from public discussions of facts. | 3.13 | 3.10 | 3.10 | 2.99 | 3.72 | 3.53 | 3.09 | 3.05 | 2.60 | 2.93 |
| B06 | Tolerance: Equal acceptance | 1 Society should accept all people equally. | 6 Society should decide on whom to accept. | 2.55 | 2.56 | 2.56 | 2.52 | 3.13 | 2.97 | 2.15 | 2.21 | 2.40 | 2.65 |
| C01_a | Borders: Ban access to foreign information | 1 Fully disagree | 6 Fully agree | 4.29 | 4.22 | 4.11 | 4.04 | 4.43 | 4.43 | 4.22 | 4.15 | 4.47 | 4.46 |
| C01_b | Borders: Hinder citizens from leaving | 1 Fully disagree | 6 Fully agree | 4.25 | 4.22 | 4.01 | 4.00 | 4.41 | 4.36 | 4.27 | 4.28 | 4.38 | 4.41 |
| C01_c | Borders: Reject refugees | 1 Fully disagree | 6 Fully agree | 4.17 | 4.12 | 4.01 | 3.94 | 4.33 | 4.20 | 4.18 | 4.26 | 4.23 | 4.21 |
| C01_d | Borders: Reject immigrants | 1 Fully disagree | 6 Fully agree | 4.19 | 4.19 | 4.04 | 4.02 | 4.33 | 4.24 | 4.16 | 4.24 | 4.28 | 4.42 |
| C01_e | Borders: Restrict investment of foreign companies | 1 Fully disagree | 6 Fully agree | 4.40 | 4.37 | 4.18 | 4.11 | 4.51 | 4.55 | 4.46 | 4.51 | 4.49 | 4.49 |
| C01_f | Borders: Shooting at persons crossing illegally | 1 Fully disagree | 6 Fully agree | 4.22 | 4.21 | 4.04 | 4.07 | 4.40 | 4.33 | 4.07 | 4.10 | 4.43 | 4.51 |
| C01_g | Borders: Taking fingerprints | 1 Fully disagree | 6 Fully agree | 4.53 | 4.50 | 4.15 | 4.09 | 4.78 | 4.80 | 4.66 | 4.76 | 4.64 | 4.64 |
| C01_h | Borders: Preventing secessions | 1 Fully disagree | 6 Fully agree | 4.29 | 4.26 | 4.09 | 4.06 | 4.43 | 4.34 | 4.36 | 4.38 | 4.32 | 4.44 |
| C03_a1 | Human rights violations: Economic intervention | 1 Fully disagree | 6 Fully agree | 4.13 | 4.10 | 3.97 | 3.99 | 4.25 | 4.05 | 4.11 | 4.13 | 4.25 | 4.35 |
| C03_a2 | Human rights violations: Military intervention | 1 Fully disagree | 6 Fully agree | 4.17 | 4.15 | 4.03 | 4.06 | 4.20 | 4.03 | 4.21 | 4.21 | 4.31 | 4.42 |
| C03_b1 | Dictatorship: Economic intervention | 1 Fully disagree | 6 Fully agree | 4.17 | 4.14 | 3.97 | 4.00 | 4.25 | 4.13 | 4.27 | 4.22 | 4.23 | 4.37 |
| C03_b2 | Dictatorship: Military intervention | 1 Fully disagree | 6 Fully agree | 4.17 | 4.15 | 4.04 | 4.08 | 4.12 | 3.95 | 4.20 | 4.24 | 4.37 | 4.41 |
| C04_a | Public good provision: Free education | 1 Fully disagree | 6 Fully agree | 4.53 | 4.53 | 4.12 | 4.11 | 4.77 | 4.81 | 4.89 | 4.94 | 4.42 | 4.50 |
| C04_b | Public good provision: Free healthcare | 1 Fully disagree | 6 Fully agree | 4.56 | 4.56 | 4.04 | 4.10 | 4.82 | 4.85 | 4.99 | 5.01 | 4.49 | 4.59 |
| C04_c | Public good provision: Welfare benefits | 1 Fully disagree | 6 Fully agree | 4.57 | 4.58 | 4.12 | 4.12 | 4.87 | 5.01 | 4.89 | 4.91 | 4.49 | 4.58 |
| C04_d | Public good provision: Support for disadvantaged groups | 1 Fully disagree | 6 Fully agree | 4.44 | 4.48 | 4.04 | 4.04 | 4.78 | 4.92 | 4.81 | 4.85 | 4.17 | 4.34 |
| C04_e | Public good provision: Support for women | 1 Fully disagree | 6 Fully agree | 4.41 | 4.43 | 4.09 | 4.11 | 4.71 | 4.83 | 4.67 | 4.65 | 4.20 | 4.32 |
| C05_a | Scarce jobs: Preference for men | 1 Fully disagree | 6 Fully agree | 4.03 | 3.96 | 3.96 | 3.94 | 4.27 | 4.10 | 3.85 | 3.71 | 4.05 | 4.18 |
| C05_b | Scarce jobs: Preference for nationals | 1 Fully disagree | 6 Fully agree | 4.09 | 4.13 | 4.02 | 4.07 | 4.30 | 4.19 | 3.96 | 4.03 | 4.09 | 4.30 |
| C05_c | Scarce jobs: Preference for heterosexuals | 1 Fully disagree | 6 Fully agree | 3.90 | 3.90 | 3.99 | 3.94 | 4.22 | 4.08 | 3.48 | 3.50 | 3.90 | 4.15 |
| C05_d | Scarce jobs: Preference for people in need | 1 Fully disagree | 6 Fully agree | 4.33 | 4.30 | 4.10 | 3.99 | 4.43 | 4.54 | 4.53 | 4.46 | 4.27 | 4.48 |
| C05_e | Scarce jobs: Preference for family members | 1 Fully disagree | 6 Fully agree | 3.87 | 3.83 | 3.93 | 3.94 | 4.14 | 3.97 | 3.42 | 3.29 | 4.04 | 4.19 |
| C05_f | Scarce jobs: Preference for own religion | 1 Fully disagree | 6 Fully agree | 3.85 | 3.83 | 3.90 | 3.92 | 4.22 | 4.09 | 3.36 | 3.28 | 3.95 | 4.11 |
| C05_g | Scarce jobs: Preference for own ethnic group | 1 Fully disagree | 6 Fully agree | 3.84 | 3.79 | 3.92 | 3.86 | 4.12 | 3.95 | 3.38 | 3.30 | 3.97 | 4.14 |
| C06_a | Leadership positions: Gender representation | 1 Fully disagree | 6 Fully agree | 4.29 | 4.30 | 4.01 | 4.05 | 4.70 | 4.76 | 4.30 | 4.29 | 4.21 | 4.32 |
| C06_b | Leadership positions: Ethnic representation | 1 Fully disagree | 6 Fully agree | 4.18 | 4.19 | 4.01 | 4.04 | 4.67 | 4.69 | 3.95 | 3.94 | 4.15 | 4.27 |
| C06_c | Leadership positions: Economic status representation | 1 Fully disagree | 6 Fully agree | 4.43 | 4.41 | 3.99 | 4.04 | 4.68 | 4.74 | 4.73 | 4.65 | 4.40 | 4.50 |
| C07_a | Generational conflict: Prosperity vs. environment | 1 Fully disagree | 6 Fully agree | 4.23 | 4.26 | 4.02 | 4.11 | 4.55 | 4.60 | 4.24 | 4.17 | 4.16 | 4.32 |
| C07_b | Generational conflict: Public debt | 1 Fully disagree | 6 Fully agree | 4.11 | 4.09 | 3.95 | 3.98 | 4.44 | 4.39 | 3.86 | 3.90 | 4.23 | 4.26 |
| C08_a | Temporality: Punctuality | 1 Fully disagree | 6 Fully agree | 4.47 | 4.49 | 4.13 | 4.14 | 4.86 | 5.04 | 4.57 | 4.64 | 4.37 | 4.41 |
| C08_b | Temporality: Efficiency | 1 Fully disagree | 6 Fully agree | 4.17 | 4.21 | 4.07 | 4.07 | 4.80 | 4.84 | 3.80 | 3.94 | 4.08 | 4.19 |
| C08_c | Temporality: Free time | 1 Fully disagree | 6 Fully agree | 3.76 | 3.80 | 3.96 | 3.94 | 4.32 | 4.18 | 2.94 | 3.07 | 3.85 | 4.10 |
| C08_d | Temporality: Enjoying the present | 1 Fully disagree | 6 Fully agree | 4.19 | 4.24 | 4.01 | 4.06 | 4.86 | 4.95 | 3.77 | 3.82 | 4.23 | 4.38 |
| C08_e | Temporality: Control of future | 1 Fully disagree | 6 Fully agree | 4.50 | 4.46 | 4.18 | 4.15 | 4.87 | 4.88 | 4.64 | 4.60 | 4.37 | 4.44 |
| C08_f | Temporality: Better life compared to parents | 1 Fully disagree | 6 Fully agree | 4.56 | 4.50 | 4.04 | 4.06 | 4.83 | 4.92 | 4.93 | 4.78 | 4.55 | 4.57 |
| D02_a | Satisfaction: Political system | 1 Fully dissatisfied | 6 Fully satisfied | 4.24 | 4.22 | 4.00 | 4.05 | 4.69 | 4.50 | 4.07 | 4.12 | 4.27 | 4.39 |
| D02_b | Satisfaction: Economic system | 1 Fully dissatisfied | 6 Fully satisfied | 4.23 | 4.20 | 4.03 | 4.05 | 4.50 | 4.40 | 4.13 | 4.11 | 4.32 | 4.42 |
| D03_a | Interpersonal trust | 1 Fully disagree | 6 Fully agree | 3.97 | 3.94 | 4.00 | 3.99 | 4.33 | 4.24 | 3.66 | 3.55 | 3.88 | 4.03 |
| D03_b | Citizens’ rights during pandemic | 1 Fully disagree | 6 Fully agree | 4.53 | 4.50 | 4.08 | 4.09 | 4.82 | 4.93 | 4.71 | 4.66 | 4.63 | 4.67 |
| D03_c | Losers of globalization | 1 Fully disagree | 6 Fully agree | 4.12 | 4.07 | 3.96 | 3.96 | 4.46 | 4.37 | 4.03 | 3.93 | 4.08 | 4.17 |
| D03_d | Anti-elitism: Big interests | 1 Fully disagree | 6 Fully agree | 4.35 | 4.40 | 4.30 | 4.28 | 4.70 | 4.71 | 4.43 | 4.45 | 3.96 | 4.21 |
| D03_e | Anti-elitism: Responsible officials | 1 Fully disagree | 6 Fully agree | 4.21 | 4.18 | 3.90 | 3.99 | 4.74 | 4.62 | 4.19 | 4.04 | 4.10 | 4.25 |
| D04_a | Deprivation: Political influence | 1 Fully disagree | 6 Fully agree | 4.23 | 4.17 | 4.07 | 4.03 | 4.44 | 4.35 | 4.26 | 4.16 | 4.19 | 4.27 |
| D04_b | Deprivation: Economic situation | 1 Fully disagree | 6 Fully agree | 4.17 | 4.19 | 4.04 | 4.08 | 4.37 | 4.29 | 4.26 | 4.25 | 4.04 | 4.22 |
| D04_c | Deprivation: Traditions and customs | 1 Fully disagree | 6 Fully agree | 4.12 | 4.10 | 3.95 | 4.00 | 4.53 | 4.45 | 4.02 | 3.92 | 4.05 | 4.18 |
| D05_a | Subjective identity: Local | 1 Not close at all | 6 Very close | 4.57 | 4.50 | 4.01 | 3.95 | 4.89 | 4.97 | 4.74 | 4.70 | 4.77 | 4.84 |
| D05_b | Subjective identity: National | 1 Not close at all | 6 Very close | 4.43 | 4.49 | 4.36 | 4.33 | 4.69 | 4.74 | 4.48 | 4.62 | 4.22 | 4.38 |
| D05_c | Subjective identity: Regional | 1 Not close at all | 6 Very close | 3.90 | 3.97 | 3.93 | 3.98 | 4.67 | 4.69 | 3.00 | 3.23 | 4.04 | 4.13 |
| D07_a | RWA: Defy authority | 1 Fully disagree | 6 Fully agree | 4.05 | 4.06 | 4.04 | 4.05 | 4.16 | 4.15 | 4.15 | 4.04 | 3.86 | 4.01 |
| D07_b | RWA: Discipline and unity | 1 Fully disagree | 6 Fully agree | 4.23 | 4.18 | 3.97 | 3.89 | 4.36 | 4.35 | 4.43 | 4.42 | 4.23 | 4.28 |
| D07_c | RWA: Old-fashioned ways and values | 1 Fully disagree | 6 Fully agree | 4.14 | 4.09 | 3.95 | 3.86 | 4.31 | 4.31 | 4.20 | 4.17 | 4.17 | 4.25 |
| D07_d | RWA: Premarital sexual intercourse | 1 Fully disagree | 6 Fully agree | 3.11 | 3.23 | 3.64 | 3.65 | 3.60 | 3.42 | 2.33 | 2.44 | 2.82 | 3.26 |
| D07_e | RWA: Tougher government and stricter laws | 1 Fully disagree | 6 Fully agree | 3.84 | 3.78 | 4.12 | 3.94 | 3.85 | 3.80 | 3.38 | 3.32 | 4.01 | 4.06 |
| D07_f | RWA: Crack down on troublemakers | 1 Fully disagree | 6 Fully agree | 4.40 | 4.37 | 4.09 | 4.00 | 4.43 | 4.39 | 4.60 | 4.70 | 4.54 | 4.67 |
| D08_a | Globalization: Limiting International trade | 1 Fully disagree | 6 Fully agree | 4.38 | 4.36 | 4.04 | 4.07 | 4.76 | 4.83 | 4.53 | 4.46 | 4.25 | 4.32 |
| D08_b | Globalization: International organizations take away power | 1 Fully disagree | 6 Fully agree | 4.20 | 4.20 | 3.90 | 4.01 | 4.79 | 4.82 | 3.98 | 3.88 | 4.20 | 4.31 |
| D08_c | Globalization: Immigrants endanger society | 1 Fully disagree | 6 Fully agree | 4.20 | 4.16 | 4.02 | 3.99 | 4.62 | 4.62 | 3.97 | 3.93 | 4.23 | 4.33 |
| D09_a | Anti-terror measure: Acceptance (outcome) | 1 Not acceptable at all | 6 Fully acceptable | 4.63 | 4.51 | 4.36 | 4.24 | 4.49 | 4.35 | 4.84 | 4.87 | 4.90 | 4.77 |
| D09_b | Health data collection: Acceptance (outcome) | 1 Not acceptable at all | 6 Fully acceptable | 4.85 | 4.64 | 4.54 | 4.35 | 4.53 | 4.33 | 5.22 | 5.07 | 5.15 | 5.01 |
| D09_c | Tax fraud/corruption prevention: Acceptance (outcome) | 1 Not acceptable at all | 6 Fully acceptable | 4.67 | 4.49 | 4.45 | 4.31 | 4.54 | 4.25 | 4.81 | 4.81 | 4.91 | 4.72 |
pals_india <- pals_india %>%
mutate(gender = case_when(
F01 == 1 ~ "Male",
F01 == 2 ~ "Female",
F01 == 3 ~ "Other",
TRUE ~ "Missing"
))
# UNWEIGHTED: region x gender
gender_india_region_unw <- pals_india %>%
filter(!is.na(india_macro), gender != "Missing") %>%
count(india_macro, gender, name = "n_unw") %>%
group_by(india_macro) %>%
mutate(pct_unw = round(100 * n_unw / sum(n_unw), 1)) %>%
ungroup()
# WEIGHTED (w2)
gender_india_region_wt <- pals_india %>%
filter(!is.na(india_macro), gender != "Missing", !is.na(w2), w2 > 0) %>%
count(india_macro, gender, wt = w2, name = "n_wt") %>%
group_by(india_macro) %>%
mutate(pct_wt = round(100 * n_wt / sum(n_wt), 1)) %>%
ungroup()
# Combined table
gender_india_region <- full_join(
gender_india_region_unw,
gender_india_region_wt,
by = c("india_macro", "gender")
) %>%
arrange(india_macro, gender)
gender_india_region %>%
mutate(
pct_unw = paste0(pct_unw, "%"),
pct_wt = paste0(pct_wt, "%")
) %>%
select(india_macro, gender, n_unw, pct_unw, n_wt, pct_wt) %>%
knitr::kable(
format = "html",
caption = "India: Gender distribution by macro-region (unweighted vs weighted)"
) %>%
kableExtra::kable_styling(
bootstrap_options = c("striped", "hover", "condensed"),
full_width = FALSE
)
| india_macro | gender | n_unw | pct_unw | n_wt | pct_wt |
|---|---|---|---|---|---|
| North | Female | 549 | 51.6% | 419.5326 | 51.3% |
| North | Male | 515 | 48.4% | 398.7048 | 48.7% |
| Central | Female | 238 | 41.8% | 278.5330 | 42.9% |
| Central | Male | 331 | 58.2% | 370.6204 | 57.1% |
| East | Female | 322 | 46.9% | 336.9800 | 47.8% |
| East | Male | 365 | 53.1% | 368.6057 | 52.2% |
| South | Female | 235 | 46.8% | 305.0804 | 47% |
| South | Male | 267 | 53.2% | 343.9431 | 53% |
var <- "E02_b" # India party list (country-specific)
# Extract value labels (code -> party name)
lkp <- enframe(attr(pals[[var]], "labels"), name = "party", value = "code")
tab_e02 <- pals %>%
filter(country == 17) %>%
mutate(code = as.numeric(as.character(.data[[var]]))) %>%
count(code, name = "N") %>%
left_join(lkp, by = "code") %>%
mutate(pct = round(100 * N / sum(N), 1)) %>%
arrange(desc(N))
tab_e02 %>%
select(code, party, N, pct) %>%
knitr::kable(format = "html", caption = "India (country==17): E02 vote choice distribution") %>%
kableExtra::kable_styling(
bootstrap_options = c("striped", "condensed", "hover"),
full_width = FALSE
)
| code | party | N | pct |
|---|---|---|---|
| 1719 | IND: Indian People s Party | 970 | 34.4 |
| 99998 | I prefer not to say. | 448 | 15.9 |
| 99996 | Not applicable | 419 | 14.8 |
| 1717 | IND: Indian National Congress | 281 | 10.0 |
| 99 | Other | 98 | 3.5 |
| 1709 | IND: Biju Janata Dal | 73 | 2.6 |
| 99999 | Don’t know | 71 | 2.5 |
| 1712 | IND: Common Man s Party | 68 | 2.4 |
| 1740 | IND: Socialist Party | 55 | 1.9 |
| 1703 | IND: All India Trinamool Congress | 43 | 1.5 |
| 1714 | IND: Communist Party of India (Marxist) | 42 | 1.5 |
| 1738 | IND: Shirmani Akali Dal | 41 | 1.5 |
| 1743 | IND: We Tamils Party | 30 | 1.1 |
| 1716 | IND: Dravidian Progress Federation | 25 | 0.9 |
| 98 | I voted blank/null | 23 | 0.8 |
| 1708 | IND: Bahujan Samaj Party | 20 | 0.7 |
| 1701 | IND: All India Anna Dravidian Progress Federation | 17 | 0.6 |
| 1741 | IND: Telugu Desam Party | 17 | 0.6 |
| 1711 | IND: Centre for People s Justice | 15 | 0.5 |
| 1723 | IND: Jannayak Janta Party | 8 | 0.3 |
| 1732 | IND: People s Army Party | 7 | 0.2 |
| 1736 | IND: Rashtriya Loktantrik Party | 7 | 0.2 |
| 1744 | IND: Working people s party | 6 | 0.2 |
| 1713 | IND: Communist Party of India | 5 | 0.2 |
| 1722 | IND: Janata Dal (United) | 5 | 0.2 |
| 1731 | IND: Nationalist Congress Party | 5 | 0.2 |
| 1739 | IND: Shiv Sena | 5 | 0.2 |
| 1721 | IND: Janata Dal (Secular) | 4 | 0.1 |
| 1725 | IND: Jharkhand Liberation Front | 4 | 0.1 |
| 1728 | IND: Lok Insaaf Party | 4 | 0.1 |
| 1735 | IND: Rashtriya Janata Dal | 3 | 0.1 |
| 1705 | IND: All Jharkhand Students Union | 1 | 0.0 |
| 1724 | IND: Jharkhand Development Front (Democratic) | 1 | 0.0 |
| 1730 | IND: National Progressive Dravidian Federation | 1 | 0.0 |
It is extremely difficult to categorize Indian political parties as conservative, liberal, leftist (except for the ones explicit in their inclination). Most of them heterogeneous in their policies across regions (consider BJP in UP and Goa) but also have aligned with their counterparts in other side of the political spectrum. Anyway, I have tried to put them in three brackets.
BJP+ – Indian People s Party (BJP), Shiv Sena.
Congress and fragments – Indian National Congress, All India Trinamool Congress, Nationalist Congress Party.
Regional Parties – Socialist Party, Communist Party of India (Marxist), Dravidian Progress Federation, Biju Janata Dal, Centre for Peoples Justice, Common Mans Party (AAP), Bahujan Samaj Party, Communist Party of India, Janata Dal (Secular), Lok Insaaf Party, People s Army Party, Rashtriya Loktantrik Party, Janata Dal (United), Jharkhand Liberation Front, Rashtriya Janata Dal, All Jharkhand Students Union, Jharkhand Development Front (Democratic), National Progressive Dravidian Federation, Shirmani Akali Dal, We Tamils Party, All India Anna Dravidian Progress Federation, Telugu Desam Party, Jannayak Janta Party, Working people s party.
No reported party –I prefer not to say, Not applicable, Other, Don’t know, I voted blank/null
pals_ind <- pals %>%
filter(country == 17) %>% # India
mutate(
E02_code = as.numeric(as.character(E02_b)),
party_cat = case_when(
# BJP+
E02_code %in% c(1719, 1739) ~ "BJP+",
# Congress and fragments
E02_code %in% c(1717, 1731, 1703) ~ "Congress and Fragments",
# Regional Parties
E02_code %in% c(1740, 1738, 1744, 1743, 1709, 1712, 1711, 1701, 1741, 1723, 1714, 1716, 1708, 1713, 1722, 1725, 1735, 1705, 1724, 1730,1721, 1728, 1732, 1736) ~ "Regional Parties",
# No reported party (PALS special codes)
E02_code %in% c(98, 99, 99996, 99998, 99999) ~ "No reported party",
# Anything else not in your mapping (safety net)
TRUE ~ "No reported party"
)
)
pals_ind %>%
count(party_cat, name = "N") %>%
mutate(pct = round(100 * N / sum(N), 1)) %>%
arrange(desc(N))
## # A tibble: 4 × 3
## party_cat N pct
## <chr> <int> <dbl>
## 1 No reported party 1059 37.5
## 2 BJP+ 975 34.5
## 3 Regional Parties 459 16.3
## 4 Congress and Fragments 329 11.7
pals_party_long <- pals_ind %>%
select(party_cat, w2, all_of(six_point_vars)) %>%
mutate(across(all_of(six_point_vars), \(x) as.numeric(as.character(x)))) %>%
pivot_longer(
cols = all_of(six_point_vars),
names_to = "variable",
values_to = "response"
) %>%
filter(!is.na(party_cat),
!is.na(response),
response %in% 1:6,
w2 > 0)
# 2) Party-category weighted means
party_means <- pals_party_long %>%
group_by(party_cat, variable) %>%
summarise(
party_mean = weighted.mean(response, w2, na.rm = TRUE),
.groups = "drop"
) %>%
pivot_wider(names_from = party_cat, values_from = party_mean)
# 3) India overall weighted mean
india_overall_means <- pals_party_long %>%
group_by(variable) %>%
summarise(
India = weighted.mean(response, w2, na.rm = TRUE),
.groups = "drop"
)
# 4) Final table with labels (same style as earlier)
india_party_table <- india_overall_means %>%
left_join(party_means, by = "variable") %>%
left_join(labels_lookup, by = "variable") %>%
select(
variable, question, meaning_1, meaning_6,
India,
`BJP+`, `Congress and Fragments`, `Regional Parties`, `No reported party`
)
india_party_table %>%
kableExtra::kbl(
format = "html",
digits = 2,
caption = "India vs Party-Category Averages (1–6 scale), weighted"
) %>%
kableExtra::kable_styling(full_width = FALSE) %>%
kableExtra::scroll_box(width = "100%", height = "600px")
| variable | question | meaning_1 | meaning_6 | India | BJP+ | Congress and Fragments | Regional Parties | No reported party |
|---|---|---|---|---|---|---|---|---|
| A01 | Self-determination | 1 Everyone should be allowed to live as they want to, to foster individual freedom. | 6 Everyone should live in line with the values of the society to foster social cohesion. | 3.24 | 3.12 | 2.78 | 2.72 | 3.61 |
| A02_a | Restrictions of freedom: Religious groups/leaders | 1 Not at all allowed to restrict freedom | 6 Fully allowed to restrict freedom | 3.67 | 3.98 | 3.43 | 3.24 | 3.64 |
| A02_b | Restrictions of freedom: State/government | 1 Not at all allowed to restrict freedom | 6 Fully allowed to restrict freedom | 3.94 | 4.26 | 4.22 | 3.24 | 3.87 |
| A02_c | Restrictions of freedom: Family | 1 Not at all allowed to restrict freedom | 6 Fully allowed to restrict freedom | 4.12 | 4.30 | 4.45 | 3.54 | 4.11 |
| A02_d | Restrictions of freedom: Police | 1 Not at all allowed to restrict freedom | 6 Fully allowed to restrict freedom | 3.92 | 4.17 | 4.24 | 3.39 | 3.84 |
| A02_e | Restrictions of freedom: Businesses/companies | 1 Not at all allowed to restrict freedom | 6 Fully allowed to restrict freedom | 3.63 | 4.00 | 3.34 | 3.13 | 3.60 |
| A02_f | Restrictions of freedom: Societal majority | 1 Not at all allowed to restrict freedom | 6 Fully allowed to restrict freedom | 3.98 | 4.22 | 4.13 | 3.27 | 4.02 |
| B01_a | Collective self-determination: Political leaders | 1 Citizens’ opinion should be most decisive for policy-making. | 6 Strong political leaders’ opinion should be most decisive for policy-making. | 2.78 | 3.05 | 2.26 | 2.53 | 2.79 |
| B01_b | Collective self-determination: Elected politicians | 1 Citizens’ opinion should be most decisive for policy-making. | 6 Elected politicians’ opinion should be most decisive for policy-making. | 2.82 | 3.13 | 2.33 | 2.55 | 2.81 |
| B01_c | Collective self-determination: Established experts | 1 Citizens’ opinion should be most decisive for policy-making. | 6 Established experts’ opinion should be most decisive for policy-making. | 3.01 | 3.35 | 2.72 | 2.61 | 2.97 |
| B01_d | Collective self-determination: Religious leaders | 1 Citizens’ opinion should be most decisive for policy-making. | 6 Religious leaders’ opinion should be most decisive for policy-making. | 2.75 | 2.89 | 2.31 | 2.53 | 2.82 |
| B01_e | Collective self-determination: The military | 1 Citizens’ opinion should be most decisive for policy-making. | 6 The military’s opinion should be most decisive for policy-making. | 3.01 | 3.40 | 2.84 | 2.69 | 2.87 |
| B02_a | Rule of law: Judicial control of government | 1 The government should always obey the laws and the court decisions, even if it hinders its work. | 6 The government should not be bound at all by laws or court decisions in all instances to be able to work unhindered. | 2.81 | 3.23 | 2.26 | 2.52 | 2.74 |
| B02_b | Rule of law: Equal enforcement of laws | 1 Laws should be enforced equally for everyone in society. | 6 Under certain circumstances, laws can be enforced differently for different people. | 2.84 | 2.96 | 2.17 | 2.59 | 3.00 |
| B02_c | Rule of law: Basic rights across countries | 1 Every human should have the same basic rights in all countries. | 6 A country’s society should decide which rights people have in its country. | 3.05 | 3.11 | 2.53 | 2.79 | 3.23 |
| B03_a | Market economy: Private vs. state control | 1 Private ownership of businesses and industry should be increased. | 6 State ownership of businesses and industry should be increased. | 3.41 | 3.31 | 3.83 | 3.07 | 3.48 |
| B03_b | Market economy: Competition good/bad for society | 1 Competition between businesses is good for a society. | 6 Competition between businesses is harmful for a society. | 3.46 | 3.25 | 2.97 | 3.39 | 3.77 |
| B03_c | Market economy: Source of wealth and status | 1 A person’s wealth and status should always be based on talents and efforts. | 6 A person’s wealth and status should always be based on ancestry and contacts. | 2.68 | 2.89 | 2.40 | 2.54 | 2.65 |
| B04 | Progress: Change vs. tradition | 1 Society should be open for change trying to ensure a bright future. | 6 Society should preserve well-established traditions trying to protect what works well nowadays. | 2.71 | 2.73 | 2.66 | 2.32 | 2.83 |
| B05_a | Rationality: Science vs. experiences, traditions, and com… | 1 Societal decisions should be primarily based on scientific research. | 6 Societal decisions should be primarily based on personal experiences, traditions, and common sense. | 3.40 | 3.31 | 2.96 | 2.98 | 3.71 |
| B05_b | Rationality: Political influence of established scientists | 1 Established scientists should have more influence when politicians make important decisions. | 6 Established scientists should have less influence when politicians make important decisions. | 3.38 | 3.13 | 2.95 | 2.83 | 3.86 |
| B05_c | Rationality: Limits of scientific explanations | 1 In a society, it is important to accept that all things can be explained by scientific research. | 6 In a society, it is important to accept that not all things can be explained by scientific research. | 3.03 | 3.18 | 2.86 | 2.63 | 3.08 |
| B05_d | Rationality: Individual vs. public determination of facts | 1 Everyone should figure out for themselves what is correct by looking for facts. | 6 What is correct should result from public discussions of facts. | 3.13 | 3.32 | 2.77 | 3.05 | 3.10 |
| B06 | Tolerance: Equal acceptance | 1 Society should accept all people equally. | 6 Society should decide on whom to accept. | 2.55 | 2.83 | 2.05 | 2.44 | 2.52 |
| C01_a | Borders: Ban access to foreign information | 1 Fully disagree | 6 Fully agree | 4.29 | 4.51 | 4.33 | 4.34 | 4.11 |
| C01_b | Borders: Hinder citizens from leaving | 1 Fully disagree | 6 Fully agree | 4.25 | 4.43 | 4.41 | 4.29 | 4.07 |
| C01_c | Borders: Reject refugees | 1 Fully disagree | 6 Fully agree | 4.17 | 4.33 | 4.26 | 4.19 | 4.04 |
| C01_d | Borders: Reject immigrants | 1 Fully disagree | 6 Fully agree | 4.19 | 4.33 | 4.14 | 4.20 | 4.10 |
| C01_e | Borders: Restrict investment of foreign companies | 1 Fully disagree | 6 Fully agree | 4.40 | 4.49 | 4.62 | 4.52 | 4.23 |
| C01_f | Borders: Shooting at persons crossing illegally | 1 Fully disagree | 6 Fully agree | 4.22 | 4.45 | 4.31 | 4.31 | 4.00 |
| C01_g | Borders: Taking fingerprints | 1 Fully disagree | 6 Fully agree | 4.53 | 4.69 | 4.92 | 4.45 | 4.35 |
| C01_h | Borders: Preventing secessions | 1 Fully disagree | 6 Fully agree | 4.29 | 4.38 | 4.47 | 4.45 | 4.12 |
| C03_a1 | Human rights violations: Economic intervention | 1 Fully disagree | 6 Fully agree | 4.13 | 4.20 | 4.34 | 4.15 | 4.03 |
| C03_a2 | Human rights violations: Military intervention | 1 Fully disagree | 6 Fully agree | 4.17 | 4.30 | 4.36 | 4.28 | 4.00 |
| C03_b1 | Dictatorship: Economic intervention | 1 Fully disagree | 6 Fully agree | 4.17 | 4.24 | 4.46 | 4.10 | 4.06 |
| C03_b2 | Dictatorship: Military intervention | 1 Fully disagree | 6 Fully agree | 4.17 | 4.26 | 4.46 | 4.38 | 3.96 |
| C04_a | Public good provision: Free education | 1 Fully disagree | 6 Fully agree | 4.53 | 4.62 | 5.06 | 4.47 | 4.35 |
| C04_b | Public good provision: Free healthcare | 1 Fully disagree | 6 Fully agree | 4.56 | 4.67 | 5.02 | 4.51 | 4.38 |
| C04_c | Public good provision: Welfare benefits | 1 Fully disagree | 6 Fully agree | 4.57 | 4.62 | 4.86 | 4.58 | 4.45 |
| C04_d | Public good provision: Support for disadvantaged groups | 1 Fully disagree | 6 Fully agree | 4.44 | 4.48 | 4.60 | 4.56 | 4.32 |
| C04_e | Public good provision: Support for women | 1 Fully disagree | 6 Fully agree | 4.41 | 4.49 | 4.48 | 4.50 | 4.30 |
| C05_a | Scarce jobs: Preference for men | 1 Fully disagree | 6 Fully agree | 4.03 | 4.26 | 3.98 | 4.29 | 3.78 |
| C05_b | Scarce jobs: Preference for nationals | 1 Fully disagree | 6 Fully agree | 4.09 | 4.32 | 4.16 | 4.27 | 3.84 |
| C05_c | Scarce jobs: Preference for heterosexuals | 1 Fully disagree | 6 Fully agree | 3.90 | 4.20 | 3.57 | 4.23 | 3.64 |
| C05_d | Scarce jobs: Preference for people in need | 1 Fully disagree | 6 Fully agree | 4.33 | 4.41 | 4.57 | 4.38 | 4.18 |
| C05_e | Scarce jobs: Preference for family members | 1 Fully disagree | 6 Fully agree | 3.87 | 4.17 | 3.69 | 4.17 | 3.59 |
| C05_f | Scarce jobs: Preference for own religion | 1 Fully disagree | 6 Fully agree | 3.85 | 4.11 | 3.74 | 4.02 | 3.62 |
| C05_g | Scarce jobs: Preference for own ethnic group | 1 Fully disagree | 6 Fully agree | 3.84 | 4.15 | 3.77 | 4.10 | 3.55 |
| C06_a | Leadership positions: Gender representation | 1 Fully disagree | 6 Fully agree | 4.29 | 4.36 | 4.60 | 4.36 | 4.13 |
| C06_b | Leadership positions: Ethnic representation | 1 Fully disagree | 6 Fully agree | 4.18 | 4.31 | 4.37 | 4.31 | 3.99 |
| C06_c | Leadership positions: Economic status representation | 1 Fully disagree | 6 Fully agree | 4.43 | 4.54 | 4.70 | 4.51 | 4.26 |
| C07_a | Generational conflict: Prosperity vs. environment | 1 Fully disagree | 6 Fully agree | 4.23 | 4.41 | 4.28 | 4.22 | 4.09 |
| C07_b | Generational conflict: Public debt | 1 Fully disagree | 6 Fully agree | 4.11 | 4.29 | 3.92 | 4.34 | 3.94 |
| C08_a | Temporality: Punctuality | 1 Fully disagree | 6 Fully agree | 4.47 | 4.58 | 4.76 | 4.32 | 4.36 |
| C08_b | Temporality: Efficiency | 1 Fully disagree | 6 Fully agree | 4.17 | 4.37 | 4.08 | 4.14 | 4.06 |
| C08_c | Temporality: Free time | 1 Fully disagree | 6 Fully agree | 3.76 | 4.14 | 3.56 | 3.64 | 3.58 |
| C08_d | Temporality: Enjoying the present | 1 Fully disagree | 6 Fully agree | 4.19 | 4.42 | 3.98 | 4.21 | 4.09 |
| C08_e | Temporality: Control of future | 1 Fully disagree | 6 Fully agree | 4.50 | 4.62 | 4.92 | 4.39 | 4.34 |
| C08_f | Temporality: Better life compared to parents | 1 Fully disagree | 6 Fully agree | 4.56 | 4.56 | 4.99 | 4.54 | 4.46 |
| D02_a | Satisfaction: Political system | 1 Fully dissatisfied | 6 Fully satisfied | 4.24 | 4.43 | 4.31 | 4.20 | 4.08 |
| D02_b | Satisfaction: Economic system | 1 Fully dissatisfied | 6 Fully satisfied | 4.23 | 4.44 | 4.32 | 4.12 | 4.09 |
| D03_a | Interpersonal trust | 1 Fully disagree | 6 Fully agree | 3.97 | 4.21 | 3.73 | 4.09 | 3.81 |
| D03_b | Citizens’ rights during pandemic | 1 Fully disagree | 6 Fully agree | 4.53 | 4.60 | 4.67 | 4.66 | 4.41 |
| D03_c | Losers of globalization | 1 Fully disagree | 6 Fully agree | 4.12 | 4.34 | 4.22 | 4.12 | 3.93 |
| D03_d | Anti-elitism: Big interests | 1 Fully disagree | 6 Fully agree | 4.35 | 4.48 | 4.64 | 4.32 | 4.19 |
| D03_e | Anti-elitism: Responsible officials | 1 Fully disagree | 6 Fully agree | 4.21 | 4.44 | 4.22 | 4.29 | 4.03 |
| D04_a | Deprivation: Political influence | 1 Fully disagree | 6 Fully agree | 4.23 | 4.38 | 4.57 | 4.20 | 4.05 |
| D04_b | Deprivation: Economic situation | 1 Fully disagree | 6 Fully agree | 4.17 | 4.36 | 4.44 | 4.14 | 3.98 |
| D04_c | Deprivation: Traditions and customs | 1 Fully disagree | 6 Fully agree | 4.12 | 4.27 | 4.24 | 4.17 | 3.97 |
| D05_a | Subjective identity: Local | 1 Not close at all | 6 Very close | 4.57 | 4.52 | 4.77 | 4.52 | 4.58 |
| D05_b | Subjective identity: National | 1 Not close at all | 6 Very close | 4.43 | 4.57 | 4.74 | 4.35 | 4.29 |
| D05_c | Subjective identity: Regional | 1 Not close at all | 6 Very close | 3.90 | 4.36 | 3.79 | 3.61 | 3.67 |
| D07_a | RWA: Defy authority | 1 Fully disagree | 6 Fully agree | 4.05 | 4.05 | 4.29 | 4.08 | 3.98 |
| D07_b | RWA: Discipline and unity | 1 Fully disagree | 6 Fully agree | 4.23 | 4.21 | 4.54 | 4.22 | 4.18 |
| D07_c | RWA: Old-fashioned ways and values | 1 Fully disagree | 6 Fully agree | 4.14 | 4.21 | 4.22 | 4.21 | 4.06 |
| D07_d | RWA: Premarital sexual intercourse | 1 Fully disagree | 6 Fully agree | 3.11 | 3.25 | 2.60 | 3.41 | 3.03 |
| D07_e | RWA: Tougher government and stricter laws | 1 Fully disagree | 6 Fully agree | 3.84 | 3.66 | 3.98 | 3.77 | 3.96 |
| D07_f | RWA: Crack down on troublemakers | 1 Fully disagree | 6 Fully agree | 4.40 | 4.53 | 4.75 | 4.54 | 4.18 |
| D08_a | Globalization: Limiting International trade | 1 Fully disagree | 6 Fully agree | 4.38 | 4.58 | 4.52 | 4.40 | 4.19 |
| D08_b | Globalization: International organizations take away power | 1 Fully disagree | 6 Fully agree | 4.20 | 4.28 | 4.00 | 4.31 | 4.14 |
| D08_c | Globalization: Immigrants endanger society | 1 Fully disagree | 6 Fully agree | 4.20 | 4.48 | 4.08 | 4.26 | 4.00 |
| D09_a | Anti-terror measure: Acceptance (outcome) | 1 Not acceptable at all | 6 Fully acceptable | 4.63 | 4.89 | 4.66 | 4.42 | 4.52 |
| D09_b | Health data collection: Acceptance (outcome) | 1 Not acceptable at all | 6 Fully acceptable | 4.85 | 4.92 | 4.91 | 4.77 | 4.81 |
| D09_c | Tax fraud/corruption prevention: Acceptance (outcome) | 1 Not acceptable at all | 6 Fully acceptable | 4.67 | 4.91 | 4.70 | 4.42 | 4.56 |
Market segmentation is a method for dividing consumers (voters) into subsets that share common needs, wants, characteristics, ideals, and/or behaviors and then targeting these segments by creating offerings that are specifically tailored to the segments. Positioning is a marketing strategy that is designed to differentiate an offering from its competition (political parties/substitute) and communicate this difference in a way that provides a competitive advantage.
Now for US where two party system operates this segmentation and positionality reduces to 2 parallel substitutes, with zero overlapping market share. But for India this would mean multiple substitutes, with overlapping market share. Clustering voters in terms of preferences, issues, needs can be done but the conundrum will be the positionality.
Next, I compared India’s weighted means against global averages (across all countries). Set threshold at ≥1.0 point deviation on 1-6 scale.
Striking result: Zero questions where India scores below global average by 1+ point (closest is 0.97). On 12 questions, India is 1.0+ points higher than the global average. In other words, when India diverges strongly from the world, it does so in one direction only.
Now if we look at these question we would see these are those questions where self interest comes in conflict with the liberal values, hence a conservative shift.
For example:
C07 | Generational conflict: (b) Current generations should be allowed to take on public debt to maintain their prosperity regardless of the fact that this constitutes a burden for future generations.
C01 | Borders: (f) My country should have the right to shoot at a person who crosses the country’s border illegally.
C01 | Borders: (b) My country should have the right to hinder citizens from leaving their country.
pals_long_w2 <- pals %>%
left_join(country_lookup, by = "country") %>%
mutate(across(all_of(six_point_vars), haven::zap_labels)) %>% # <-- add this
select(country_name, w2, all_of(six_point_vars)) %>%
pivot_longer(
cols = all_of(six_point_vars),
names_to = "variable",
values_to = "response"
) %>%
filter(response %in% 1:6, w2 > 0)
country_means_w2 <- pals_long_w2 %>%
group_by(country_name, variable) %>%
summarise(
country_mean = weighted.mean(response, w2, na.rm = TRUE),
.groups = "drop"
)
global_means_w2 <- pals_long_w2 %>%
group_by(variable) %>%
summarise(
global_mean = weighted.mean(response, w2, na.rm = TRUE),
.groups = "drop"
)
india_vs_global_w2 <- country_means_w2 %>%
filter(country_name == "India") %>%
left_join(global_means_w2, by = "variable") %>%
mutate(
gap = country_mean - global_mean,
abs_gap = abs(gap)
) %>%
arrange(desc(abs_gap))
#Filter of 1.0 point
india_far_from_world_w2 <- india_vs_global_w2 %>%
filter(abs_gap >= 1.0) %>%
mutate(
question = sapply(variable, function(v) attr(pals[[v]], "label"))
)
india_far_from_world_w2 <- india_far_from_world_w2 %>%
select(
variable,
question,
india_mean = country_mean,
global_mean,
gap,
abs_gap
) %>%
arrange(desc(abs_gap))
view(india_far_from_world_w2)
#plotting
india_plot_data <- india_far_from_world_w2 %>%
pivot_longer(
cols = c(india_mean, global_mean),
names_to = "group",
values_to = "mean_value"
)
ggplot(
india_plot_data,
aes(
x = reorder(question, mean_value),
y = mean_value,
fill = group
)
) +
geom_col(position = "dodge") +
coord_flip() +
scale_fill_manual(
values = c("india_mean" = "firebrick", "global_mean" = "grey60"),
labels = c("Global average", "India")
) +
labs(
title = "India vs Global Average on Selected Questions (w2-weighted)",
subtitle = "Only questions where |India − Global| ≥ 1.0",
x = NULL,
y = "Weighted mean response (1–6 scale)",
fill = NULL
) +
theme_minimal()
summary(india_far_from_world_w2$abs_gap)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 1.023 1.110 1.217 1.271 1.430 1.541
Categorizing countries into regions
India: country code 17
EU/West (12 countries): 11(Australia), 14(France), 15(Germany), 19(Italy), 21(Latvia), 25(Poland), 27(Russia), 31(Spain), 32(Sweden), 34(Turkey), 35(UK), 36(USA)
East Asia (4 countries): 18(Indonesia), 20(Japan), 26(South Korea), 29(Singapore)
Latin America (4 countries): 12(Brazil), 13(Chile), 22(Mexico), 24(Peru)
Africa (5 countries): 16(Ghana), 23(Nigeria), 28(Senegal), 30(South Africa), 33(Tunisia)
pals <- pals %>%
mutate(
region = case_when(
country %in% c(14, 15, 19, 21, 25, 27, 31, 32, 35, 36, 34, 11) ~ "EU/West",
country == 17 ~ "India",
country %in% c(12, 13, 22, 24) ~ "Latin America",
country %in% c(18, 20, 29, 26) ~ "East Asia",
country %in% c(16, 23, 28, 30, 33) ~ "Africa",
TRUE ~ NA_character_
)
)
pals$region <- factor(
pals$region,
levels = c(
"India",
"EU/West",
"East Asia",
"Latin America",
"Africa"
)
)
table(pals$region, pals$country)
##
## 11 12 13 14 15 16 17 18 19 20 21 22
## India 0 0 0 0 0 0 2822 0 0 0 0 0
## EU/West 2032 0 0 2001 2020 0 0 0 2119 0 2100 0
## East Asia 0 0 0 0 0 0 0 2001 0 2000 0 0
## Latin America 0 2110 2005 0 0 0 0 0 0 0 0 2160
## Africa 0 0 0 0 0 2000 0 0 0 0 0 0
##
## 23 24 25 26 27 28 29 30 31 32 33 34
## India 0 0 0 0 0 0 0 0 0 0 0 0
## EU/West 0 0 2037 0 2143 0 0 0 2114 2090 0 2016
## East Asia 0 0 0 2084 0 0 2010 0 0 0 0 0
## Latin America 0 2018 0 0 0 0 0 0 0 0 0 0
## Africa 2000 0 0 0 0 1996 0 2030 0 0 2012 0
##
## 35 36
## India 0 0
## EU/West 2007 2033
## East Asia 0 0
## Latin America 0 0
## Africa 0 0
#India v/s Regional averages
# 1. Extend pals_long_w2 to include region:
pals_long_w2 <- suppressWarnings({
pals %>%
left_join(country_lookup, by = "country") %>%
select(country_name, region, w2, w4, all_of(six_point_vars)) %>%
pivot_longer(
cols = all_of(six_point_vars),
names_to = "variable",
values_to = "response"
) %>%
filter(!is.na(response), response %in% 1:6, w2 > 0)
})
# 2. Compute region-level means (equal country weight):
region_means_w24 <- pals_long_w2 %>%
group_by(region, variable) %>%
summarise(
region_mean = weighted.mean(response, w2 * w4, na.rm = TRUE),
.groups = "drop"
)
# 3. India vs region:
india_vs_region_w24 <- country_means_w2 %>%
filter(country_name == "India") %>%
left_join(region_means_w24, by = "variable") %>%
mutate(
gap = country_mean - region_mean,
abs_gap = abs(gap)
) %>%
filter(abs_gap >= 1.0)
region_comparison_table <- pals_long_w2%>%
filter(region != "India") %>%
group_by(region, variable) %>%
summarise(region_mean = weighted.mean(response, w2 * w4, na.rm = TRUE), .groups = "drop") %>%
pivot_wider(names_from = region, values_from = region_mean, values_fill = NA) %>%
# India column
left_join(
country_means_w2%>%
filter(country_name == "India") %>%
transmute(variable, India = country_mean),
by = "variable"
) %>%
select(variable, India, `EU/West`, `East Asia`, `Latin America`, `Africa`, everything()) %>%
# Add labels
mutate(
question = str_trunc(sapply(variable, function(v) attr(pals[[v]], "label")), 60),
meaning_1 = sapply(variable, function(v) {
lbls <- attr(pals[[v]], "labels")
if(is.null(lbls) || !1%in% lbls) return(NA_character_)
names(lbls)[lbls == 1]
}),
meaning_6 = sapply(variable, function(v) {
lbls <- attr(pals[[v]], "labels")
if(is.null(lbls) || !6%in% lbls) return(NA_character_)
names(lbls)[lbls == 6]
})
) %>%
# Final column order
select(variable, question, meaning_1, meaning_6, India, `EU/West`, `East Asia`, `Latin America`, `Africa`)
region_comparison_table %>%
kableExtra::kable(digits = 2, booktabs = TRUE, caption = "India vs Regional Averages (1-6 Scale)") %>%
kableExtra::kable_styling(full_width = FALSE) %>%
kableExtra::scroll_box(width = "100%", height = "600px")
| variable | question | meaning_1 | meaning_6 | India | EU/West | East Asia | Latin America | Africa |
|---|---|---|---|---|---|---|---|---|
| A01 | Self-determination | 1 Everyone should be allowed to live as they want to, to foster individual freedom. | 6 Everyone should live in line with the values of the society to foster social cohesion. | 3.24 | 3.57 | 3.63 | 3.53 | 3.54 |
| A02_a | Restrictions of freedom: Religious groups/leaders | 1 Not at all allowed to restrict freedom | 6 Fully allowed to restrict freedom | 3.67 | 2.41 | 3.10 | 2.44 | 3.62 |
| A02_b | Restrictions of freedom: State/government | 1 Not at all allowed to restrict freedom | 6 Fully allowed to restrict freedom | 3.94 | 3.23 | 3.48 | 3.11 | 3.60 |
| A02_c | Restrictions of freedom: Family | 1 Not at all allowed to restrict freedom | 6 Fully allowed to restrict freedom | 4.12 | 2.90 | 3.45 | 3.12 | 3.89 |
| A02_d | Restrictions of freedom: Police | 1 Not at all allowed to restrict freedom | 6 Fully allowed to restrict freedom | 3.92 | 3.55 | 3.56 | 3.42 | 3.54 |
| A02_e | Restrictions of freedom: Businesses/companies | 1 Not at all allowed to restrict freedom | 6 Fully allowed to restrict freedom | 3.63 | 2.52 | 3.12 | 2.57 | 3.09 |
| A02_f | Restrictions of freedom: Societal majority | 1 Not at all allowed to restrict freedom | 6 Fully allowed to restrict freedom | 3.98 | 3.11 | 3.53 | 3.12 | 3.67 |
| B01_a | Collective self-determination: Political leaders | 1 Citizens’ opinion should be most decisive for policy-making. | 6 Strong political leaders’ opinion should be most decisive for policy-making. | 2.78 | 2.68 | 2.79 | 2.35 | 2.38 |
| B01_b | Collective self-determination: Elected politicians | 1 Citizens’ opinion should be most decisive for policy-making. | 6 Elected politicians’ opinion should be most decisive for policy-making. | 2.82 | 2.70 | 2.77 | 2.37 | 2.29 |
| B01_c | Collective self-determination: Established experts | 1 Citizens’ opinion should be most decisive for policy-making. | 6 Established experts’ opinion should be most decisive for policy-making. | 3.01 | 3.25 | 3.14 | 3.19 | 2.96 |
| B01_d | Collective self-determination: Religious leaders | 1 Citizens’ opinion should be most decisive for policy-making. | 6 Religious leaders’ opinion should be most decisive for policy-making. | 2.75 | 2.14 | 2.59 | 2.12 | 3.01 |
| B01_e | Collective self-determination: The military | 1 Citizens’ opinion should be most decisive for policy-making. | 6 The military’s opinion should be most decisive for policy-making. | 3.01 | 2.61 | 2.58 | 2.47 | 2.67 |
| B02_a | Rule of law: Judicial control of government | 1 The government should always obey the laws and the court decisions, even if it hinders its work. | 6 The government should not be bound at all by laws or court decisions in all instances to be able to work unhindered. | 2.81 | 2.11 | 2.51 | 2.30 | 2.10 |
| B02_b | Rule of law: Equal enforcement of laws | 1 Laws should be enforced equally for everyone in society. | 6 Under certain circumstances, laws can be enforced differently for different people. | 2.84 | 2.08 | 2.29 | 2.14 | 2.05 |
| B02_c | Rule of law: Basic rights across countries | 1 Every human should have the same basic rights in all countries. | 6 A country’s society should decide which rights people have in its country. | 3.05 | 2.51 | 2.54 | 2.09 | 2.87 |
| B03_a | Market economy: Private vs. state control | 1 Private ownership of businesses and industry should be increased. | 6 State ownership of businesses and industry should be increased. | 3.41 | 3.39 | 3.23 | 3.28 | 3.64 |
| B03_b | Market economy: Competition good/bad for society | 1 Competition between businesses is good for a society. | 6 Competition between businesses is harmful for a society. | 3.46 | 2.43 | 2.60 | 2.31 | 2.38 |
| B03_c | Market economy: Source of wealth and status | 1 A person’s wealth and status should always be based on talents and efforts. | 6 A person’s wealth and status should always be based on ancestry and contacts. | 2.68 | 2.11 | 2.23 | 1.86 | 2.06 |
| B04 | Progress: Change vs. tradition | 1 Society should be open for change trying to ensure a bright future. | 6 Society should preserve well-established traditions trying to protect what works well nowadays. | 2.71 | 2.66 | 2.56 | 2.36 | 2.50 |
| B05_a | Rationality: Science vs. experiences, traditions, and com… | 1 Societal decisions should be primarily based on scientific research. | 6 Societal decisions should be primarily based on personal experiences, traditions, and common sense. | 3.40 | 3.31 | 3.31 | 3.30 | 3.30 |
| B05_b | Rationality: Political influence of established scientists | 1 Established scientists should have more influence when politicians make important decisions. | 6 Established scientists should have less influence when politicians make important decisions. | 3.38 | 2.63 | 2.98 | 2.57 | 2.66 |
| B05_c | Rationality: Limits of scientific explanations | 1 In a society, it is important to accept that all things can be explained by scientific research. | 6 In a society, it is important to accept that not all things can be explained by scientific research. | 3.03 | 3.44 | 3.56 | 3.61 | 3.50 |
| B05_d | Rationality: Individual vs. public determination of facts | 1 Everyone should figure out for themselves what is correct by looking for facts. | 6 What is correct should result from public discussions of facts. | 3.13 | 3.31 | 3.25 | 3.32 | 3.28 |
| B06 | Tolerance: Equal acceptance | 1 Society should accept all people equally. | 6 Society should decide on whom to accept. | 2.55 | 2.37 | 2.44 | 1.91 | 2.54 |
| C01_a | Borders: Ban access to foreign information | 1 Fully disagree | 6 Fully agree | 4.29 | 2.53 | 3.00 | 2.47 | 2.98 |
| C01_b | Borders: Hinder citizens from leaving | 1 Fully disagree | 6 Fully agree | 4.25 | 2.49 | 3.08 | 2.36 | 2.83 |
| C01_c | Borders: Reject refugees | 1 Fully disagree | 6 Fully agree | 4.17 | 3.70 | 3.87 | 3.31 | 3.32 |
| C01_d | Borders: Reject immigrants | 1 Fully disagree | 6 Fully agree | 4.19 | 4.02 | 4.18 | 3.28 | 3.30 |
| C01_e | Borders: Restrict investment of foreign companies | 1 Fully disagree | 6 Fully agree | 4.40 | 4.37 | 4.32 | 3.85 | 4.29 |
| C01_f | Borders: Shooting at persons crossing illegally | 1 Fully disagree | 6 Fully agree | 4.22 | 2.89 | 3.63 | 2.56 | 2.93 |
| C01_g | Borders: Taking fingerprints | 1 Fully disagree | 6 Fully agree | 4.53 | 4.55 | 4.48 | 4.77 | 4.92 |
| C01_h | Borders: Preventing secessions | 1 Fully disagree | 6 Fully agree | 4.29 | 3.66 | 3.99 | 3.30 | 3.95 |
| C03_a1 | Human rights violations: Economic intervention | 1 Fully disagree | 6 Fully agree | 4.13 | 4.33 | 4.26 | 3.67 | 3.34 |
| C03_a2 | Human rights violations: Military intervention | 1 Fully disagree | 6 Fully agree | 4.17 | 3.75 | 3.70 | 3.60 | 3.47 |
| C03_b1 | Dictatorship: Economic intervention | 1 Fully disagree | 6 Fully agree | 4.17 | 4.23 | 4.12 | 3.61 | 3.35 |
| C03_b2 | Dictatorship: Military intervention | 1 Fully disagree | 6 Fully agree | 4.17 | 3.65 | 3.62 | 3.68 | 3.51 |
| C04_a | Public good provision: Free education | 1 Fully disagree | 6 Fully agree | 4.53 | 5.25 | 4.57 | 5.09 | 4.97 |
| C04_b | Public good provision: Free healthcare | 1 Fully disagree | 6 Fully agree | 4.56 | 5.19 | 4.58 | 5.15 | 5.13 |
| C04_c | Public good provision: Welfare benefits | 1 Fully disagree | 6 Fully agree | 4.57 | 4.83 | 4.69 | 4.95 | 5.14 |
| C04_d | Public good provision: Support for disadvantaged groups | 1 Fully disagree | 6 Fully agree | 4.44 | 4.82 | 4.78 | 4.97 | 5.11 |
| C04_e | Public good provision: Support for women | 1 Fully disagree | 6 Fully agree | 4.41 | 4.74 | 4.40 | 4.91 | 4.62 |
| C05_a | Scarce jobs: Preference for men | 1 Fully disagree | 6 Fully agree | 4.03 | 2.22 | 2.97 | 2.06 | 2.96 |
| C05_b | Scarce jobs: Preference for nationals | 1 Fully disagree | 6 Fully agree | 4.09 | 3.71 | 4.31 | 3.54 | 3.95 |
| C05_c | Scarce jobs: Preference for heterosexuals | 1 Fully disagree | 6 Fully agree | 3.90 | 2.35 | 3.15 | 2.13 | 3.45 |
| C05_d | Scarce jobs: Preference for people in need | 1 Fully disagree | 6 Fully agree | 4.33 | 3.97 | 4.37 | 3.99 | 4.11 |
| C05_e | Scarce jobs: Preference for family members | 1 Fully disagree | 6 Fully agree | 3.87 | 2.50 | 3.22 | 2.59 | 2.85 |
| C05_f | Scarce jobs: Preference for own religion | 1 Fully disagree | 6 Fully agree | 3.85 | 2.30 | 2.68 | 2.12 | 2.73 |
| C05_g | Scarce jobs: Preference for own ethnic group | 1 Fully disagree | 6 Fully agree | 3.84 | 2.60 | 3.25 | 2.40 | 2.67 |
| C06_a | Leadership positions: Gender representation | 1 Fully disagree | 6 Fully agree | 4.29 | 3.10 | 3.20 | 3.40 | 3.31 |
| C06_b | Leadership positions: Ethnic representation | 1 Fully disagree | 6 Fully agree | 4.18 | 2.90 | 3.26 | 3.47 | 3.45 |
| C06_c | Leadership positions: Economic status representation | 1 Fully disagree | 6 Fully agree | 4.43 | 3.33 | 3.53 | 3.69 | 4.05 |
| C07_a | Generational conflict: Prosperity vs. environment | 1 Fully disagree | 6 Fully agree | 4.23 | 3.98 | 4.11 | 3.85 | 4.07 |
| C07_b | Generational conflict: Public debt | 1 Fully disagree | 6 Fully agree | 4.11 | 2.82 | 3.24 | 2.91 | 3.14 |
| C08_a | Temporality: Punctuality | 1 Fully disagree | 6 Fully agree | 4.47 | 5.06 | 4.63 | 5.19 | 5.16 |
| C08_b | Temporality: Efficiency | 1 Fully disagree | 6 Fully agree | 4.17 | 4.52 | 4.47 | 4.11 | 4.00 |
| C08_c | Temporality: Free time | 1 Fully disagree | 6 Fully agree | 3.76 | 4.01 | 3.83 | 3.67 | 2.66 |
| C08_d | Temporality: Enjoying the present | 1 Fully disagree | 6 Fully agree | 4.19 | 3.92 | 3.61 | 3.81 | 2.84 |
| C08_e | Temporality: Control of future | 1 Fully disagree | 6 Fully agree | 4.50 | 4.98 | 4.74 | 4.62 | 5.04 |
| C08_f | Temporality: Better life compared to parents | 1 Fully disagree | 6 Fully agree | 4.56 | 4.34 | 4.37 | 4.27 | 4.57 |
| D02_a | Satisfaction: Political system | 1 Fully dissatisfied | 6 Fully satisfied | 4.24 | 2.89 | 3.10 | 2.40 | 2.42 |
| D02_b | Satisfaction: Economic system | 1 Fully dissatisfied | 6 Fully satisfied | 4.23 | 3.09 | 3.44 | 2.61 | 2.35 |
| D03_a | Interpersonal trust | 1 Fully disagree | 6 Fully agree | 3.97 | 3.42 | 3.56 | 2.88 | 2.72 |
| D03_b | Citizens’ rights during pandemic | 1 Fully disagree | 6 Fully agree | 4.53 | 4.29 | 4.40 | 4.19 | 4.44 |
| D03_c | Losers of globalization | 1 Fully disagree | 6 Fully agree | 4.12 | 3.68 | 3.51 | 3.52 | 3.75 |
| D03_d | Anti-elitism: Big interests | 1 Fully disagree | 6 Fully agree | 4.35 | 4.43 | 4.09 | 4.40 | 4.68 |
| D03_e | Anti-elitism: Responsible officials | 1 Fully disagree | 6 Fully agree | 4.21 | 3.15 | 3.72 | 2.81 | 3.21 |
| D04_a | Deprivation: Political influence | 1 Fully disagree | 6 Fully agree | 4.23 | 4.13 | 3.99 | 4.13 | 4.55 |
| D04_b | Deprivation: Economic situation | 1 Fully disagree | 6 Fully agree | 4.17 | 4.17 | 4.09 | 4.26 | 4.83 |
| D04_c | Deprivation: Traditions and customs | 1 Fully disagree | 6 Fully agree | 4.12 | 3.62 | 3.62 | 3.71 | 4.41 |
| D05_a | Subjective identity: Local | 1 Not close at all | 6 Very close | 4.57 | 4.30 | 4.09 | 4.09 | 4.66 |
| D05_b | Subjective identity: National | 1 Not close at all | 6 Very close | 4.43 | 4.52 | 4.64 | 4.52 | 4.40 |
| D05_c | Subjective identity: Regional | 1 Not close at all | 6 Very close | 3.90 | 3.64 | 3.68 | 3.60 | 3.58 |
| D07_a | RWA: Defy authority | 1 Fully disagree | 6 Fully agree | 4.05 | 3.64 | 3.92 | 3.61 | 3.72 |
| D07_b | RWA: Discipline and unity | 1 Fully disagree | 6 Fully agree | 4.23 | 3.48 | 3.78 | 3.60 | 4.53 |
| D07_c | RWA: Old-fashioned ways and values | 1 Fully disagree | 6 Fully agree | 4.14 | 3.78 | 3.48 | 3.68 | 4.21 |
| D07_d | RWA: Premarital sexual intercourse | 1 Fully disagree | 6 Fully agree | 3.11 | 4.81 | 3.67 | 4.48 | 2.46 |
| D07_e | RWA: Tougher government and stricter laws | 1 Fully disagree | 6 Fully agree | 3.84 | 3.83 | 3.50 | 3.43 | 3.65 |
| D07_f | RWA: Crack down on troublemakers | 1 Fully disagree | 6 Fully agree | 4.40 | 4.36 | 4.63 | 4.45 | 4.77 |
| D08_a | Globalization: Limiting International trade | 1 Fully disagree | 6 Fully agree | 4.38 | 3.87 | 3.67 | 3.63 | 4.60 |
| D08_b | Globalization: International organizations take away power | 1 Fully disagree | 6 Fully agree | 4.20 | 3.86 | 3.68 | 3.75 | 4.25 |
| D08_c | Globalization: Immigrants endanger society | 1 Fully disagree | 6 Fully agree | 4.20 | 3.53 | 3.69 | 3.05 | 3.75 |
| D09_a | Anti-terror measure: Acceptance (outcome) | 1 Not acceptable at all | 6 Fully acceptable | 4.63 | 3.89 | 3.80 | 3.73 | 4.50 |
| D09_b | Health data collection: Acceptance (outcome) | 1 Not acceptable at all | 6 Fully acceptable | 4.85 | 4.13 | 4.24 | 4.45 | 4.74 |
| D09_c | Tax fraud/corruption prevention: Acceptance (outcome) | 1 Not acceptable at all | 6 Fully acceptable | 4.67 | 3.83 | 3.92 | 3.85 | 4.46 |
The results are amazing! (even across regions). So when we look at the Module A and B which is basically “Acceptance of the liberal script: individual self-determination, political, economic, and socio-cultural elements”, the averages lies on the more liberal side of the spectrum for both regional and India, but as soon as we move towards module C and D on “The liberal script in practice: applications and contestations,Political values and attitudes” the averages starts moving upwards for India (and to some extent regional). This basically shows that in theory Indians are inclining towards more liberal tendencies but as soon as its applications or the consequences of accepting that liberal theory comes up (in case of border question etc), India becomes overtly conservative (so does other regions).
# India mean by question
india_means <- country_means_w2 %>%
filter(country_name == "India") %>%
select(variable, india_mean = country_mean)
# Country distances to India (exclude India)
country_dist <- country_means_w2 %>%
filter(country_name != "India") %>%
left_join(india_means, by = "variable") %>%
mutate(
gap = country_mean - india_mean,
abs_gap = abs(gap)
)
# Closest 3 per variable (ties handled deterministically by country_name)
closest3 <- country_dist %>%
arrange(variable, abs_gap, country_name) %>%
group_by(variable) %>%
slice_head(n = 3) %>%
mutate(rank = row_number()) %>%
ungroup() %>%
select(variable, rank, country_name, country_mean, abs_gap)
# Min and max per variable
minmax <- country_dist %>%
group_by(variable) %>%
summarise(
lowest_country = country_name[which.min(country_mean)],
lowest_mean = min(country_mean, na.rm = TRUE),
highest_country = country_name[which.max(country_mean)],
highest_mean = max(country_mean, na.rm = TRUE),
.groups = "drop"
)
# Reshape closest3 to wide columns
closest_wide <- closest3 %>%
mutate(rank = paste0("closest_", rank)) %>%
select(variable, rank, country_name, country_mean) %>%
pivot_wider(
names_from = rank,
values_from = c(country_name, country_mean),
names_glue = "{rank}_{.value}"
)
# Final table
india_closest_table <- india_means %>%
left_join(closest_wide, by = "variable") %>%
left_join(minmax, by = "variable") %>%
mutate(
question = str_trunc(sapply(variable, function(v) attr(pals[[v]], "label")), 60)
) %>%
select(
variable, question,
india_mean,
closest_1_country_name, closest_1_country_mean,
closest_2_country_name, closest_2_country_mean,
closest_3_country_name, closest_3_country_mean,
lowest_country, lowest_mean,
highest_country, highest_mean
)
india_closest_table_short <- india_closest_table %>%
transmute(
variable,
question,
`India mean` = india_mean,
`Closest` = closest_1_country_name,
`C mean` = closest_1_country_mean,
`2nd` = closest_2_country_name,
`2 mean` = closest_2_country_mean,
`3rd` = closest_3_country_name,
`3 mean` = closest_3_country_mean,
`L country` = lowest_country,
`L mean` = lowest_mean,
`H country` = highest_country,
`H mean` = highest_mean
)
india_closest_table_short %>%
kableExtra::kbl(
format = "html",
digits = 2,
caption = "Closest countries to India (top 3), and lowest/highest"
) %>%
kableExtra::kable_styling(full_width = FALSE) %>%
kableExtra::scroll_box(width = "100%", height = "600px")
| variable | question | India mean | Closest | C mean | 2nd | 2 mean | 3rd | 3 mean | L country | L mean | H country | H mean |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| A01 | Self-determination | 3.24 | Republic of Korea | 3.23 | Poland | 3.20 | Japan | 3.29 | Tunisia | 2.79 | Senegal | 4.75 |
| A02_a | Restrictions of freedom: Religious groups/leaders | 3.67 | South Africa | 3.48 | Russian Federation | 3.47 | Nigeria | 3.93 | Poland | 1.90 | Senegal | 4.62 |
| A02_b | Restrictions of freedom: State/government | 3.94 | Ghana | 3.86 | Nigeria | 4.04 | South Africa | 3.82 | Tunisia | 2.01 | Indonesia | 4.31 |
| A02_c | Restrictions of freedom: Family | 4.12 | Indonesia | 4.12 | Ghana | 4.08 | Nigeria | 3.86 | Sweden | 2.58 | Senegal | 4.68 |
| A02_d | Restrictions of freedom: Police | 3.92 | Ghana | 3.90 | United Kingdom | 3.89 | Australia | 3.88 | Tunisia | 1.91 | Senegal | 4.52 |
| A02_e | Restrictions of freedom: Businesses/companies | 3.63 | Nigeria | 3.66 | Ghana | 3.55 | Indonesia | 3.83 | Tunisia | 1.54 | Indonesia | 3.83 |
| A02_f | Restrictions of freedom: Societal majority | 3.98 | Ghana | 3.97 | Nigeria | 3.72 | Indonesia | 4.31 | Tunisia | 2.55 | Senegal | 4.54 |
| B01_a | Collective self-determination: Political leaders | 2.78 | South Africa | 2.79 | Germany | 2.79 | Sweden | 2.72 | Senegal | 2.04 | Singapore | 3.31 |
| B01_b | Collective self-determination: Elected politicians | 2.82 | Germany | 2.83 | Indonesia | 2.84 | France | 2.75 | Senegal | 1.94 | Singapore | 3.25 |
| B01_c | Collective self-determination: Established experts | 3.01 | Republic of Korea | 2.96 | Tunisia | 3.09 | Türkiye | 2.92 | Japan | 2.61 | Australia | 3.66 |
| B01_d | Collective self-determination: Religious leaders | 2.75 | United States | 2.74 | South Africa | 2.66 | Singapore | 2.90 | Sweden | 1.77 | Senegal | 3.97 |
| B01_e | Collective self-determination: The military | 3.01 | United Kingdom | 3.01 | Singapore | 3.06 | Tunisia | 3.12 | Japan | 2.12 | United States | 3.15 |
| B02_a | Rule of law: Judicial control of government | 2.81 | Peru | 2.82 | Republic of Korea | 2.61 | Singapore | 2.59 | Russian Federation | 1.62 | Peru | 2.82 |
| B02_b | Rule of law: Equal enforcement of laws | 2.84 | Singapore | 2.52 | Peru | 2.51 | Indonesia | 2.41 | Tunisia | 1.67 | Singapore | 2.52 |
| B02_c | Rule of law: Basic rights across countries | 3.05 | Latvia | 2.98 | Ghana | 2.92 | Japan | 2.75 | Mexico | 1.86 | Senegal | 4.00 |
| B03_a | Market economy: Private vs. state control | 3.41 | Germany | 3.40 | Japan | 3.43 | Sweden | 3.46 | Republic of Korea | 2.68 | Senegal | 4.61 |
| B03_b | Market economy: Competition good/bad for society | 3.46 | Indonesia | 3.16 | South Africa | 2.75 | United Kingdom | 2.73 | Latvia | 2.01 | Indonesia | 3.16 |
| B03_c | Market economy: Source of wealth and status | 2.68 | United Kingdom | 2.52 | United States | 2.52 | Indonesia | 2.49 | Senegal | 1.59 | United Kingdom | 2.52 |
| B04 | Progress: Change vs. tradition | 2.71 | Russian Federation | 2.71 | Australia | 2.70 | Singapore | 2.69 | Brazil | 2.17 | United Kingdom | 2.92 |
| B05_a | Rationality: Science vs. experiences, traditions, and com… | 3.40 | Russian Federation | 3.40 | Singapore | 3.40 | Peru | 3.39 | Tunisia | 2.49 | Senegal | 3.90 |
| B05_b | Rationality: Political influence of established scientists | 3.38 | Singapore | 3.10 | United States | 3.02 | South Africa | 2.99 | Tunisia | 2.21 | Singapore | 3.10 |
| B05_c | Rationality: Limits of scientific explanations | 3.03 | Nigeria | 3.06 | Spain | 3.26 | Republic of Korea | 3.27 | Türkiye | 2.62 | Senegal | 4.05 |
| B05_d | Rationality: Individual vs. public determination of facts | 3.13 | Germany | 3.12 | Italy | 3.10 | Sweden | 3.10 | Tunisia | 2.64 | Senegal | 4.06 |
| B06 | Tolerance: Equal acceptance | 2.55 | United Kingdom | 2.54 | Indonesia | 2.59 | Russian Federation | 2.62 | Brazil | 1.80 | Senegal | 3.26 |
| C01_a | Borders: Ban access to foreign information | 4.29 | Indonesia | 3.89 | South Africa | 3.41 | Nigeria | 3.36 | Latvia | 1.80 | Indonesia | 3.89 |
| C01_b | Borders: Hinder citizens from leaving | 4.25 | Indonesia | 3.96 | Nigeria | 3.45 | South Africa | 3.37 | Poland | 1.94 | Indonesia | 3.96 |
| C01_c | Borders: Reject refugees | 4.17 | Russian Federation | 4.15 | Nigeria | 4.07 | United Kingdom | 4.04 | Tunisia | 2.37 | Türkiye | 4.40 |
| C01_d | Borders: Reject immigrants | 4.19 | Sweden | 4.23 | Germany | 4.23 | South Africa | 4.15 | Senegal | 2.48 | Türkiye | 4.88 |
| C01_e | Borders: Restrict investment of foreign companies | 4.40 | Tunisia | 4.41 | Italy | 4.38 | United States | 4.37 | Brazil | 3.67 | Indonesia | 4.99 |
| C01_f | Borders: Shooting at persons crossing illegally | 4.22 | Indonesia | 4.20 | Türkiye | 4.05 | Nigeria | 3.70 | Mexico | 2.23 | Indonesia | 4.20 |
| C01_g | Borders: Taking fingerprints | 4.53 | France | 4.55 | Mexico | 4.52 | Singapore | 4.58 | Poland | 3.88 | Senegal | 5.58 |
| C01_h | Borders: Preventing secessions | 4.29 | Senegal | 4.31 | Tunisia | 4.24 | Türkiye | 4.54 | Mexico | 3.23 | Indonesia | 4.54 |
| C03_a1 | Human rights violations: Economic intervention | 4.13 | Italy | 4.14 | Nigeria | 4.14 | Singapore | 4.12 | Tunisia | 2.28 | Germany | 4.74 |
| C03_a2 | Human rights violations: Military intervention | 4.17 | Spain | 4.19 | France | 4.14 | United Kingdom | 4.12 | Tunisia | 2.03 | Spain | 4.19 |
| C03_b1 | Dictatorship: Economic intervention | 4.17 | Nigeria | 4.15 | Italy | 4.13 | Japan | 4.11 | Tunisia | 2.27 | Poland | 4.60 |
| C03_b2 | Dictatorship: Military intervention | 4.17 | Spain | 4.15 | France | 4.10 | United Kingdom | 4.06 | Tunisia | 1.98 | Spain | 4.15 |
| C04_a | Public good provision: Free education | 4.53 | Japan | 4.55 | United States | 4.56 | Singapore | 4.49 | Republic of Korea | 4.38 | Russian Federation | 5.68 |
| C04_b | Public good provision: Free healthcare | 4.56 | United States | 4.61 | Singapore | 4.72 | Japan | 4.35 | Republic of Korea | 4.29 | Russian Federation | 5.63 |
| C04_c | Public good provision: Welfare benefits | 4.57 | Japan | 4.52 | Singapore | 4.64 | France | 4.49 | United States | 4.42 | Senegal | 5.58 |
| C04_d | Public good provision: Support for disadvantaged groups | 4.44 | Japan | 4.49 | United States | 4.51 | Latvia | 4.55 | Japan | 4.49 | Senegal | 5.56 |
| C04_e | Public good provision: Support for women | 4.41 | United States | 4.42 | Latvia | 4.39 | Russian Federation | 4.48 | Republic of Korea | 3.96 | Italy | 5.24 |
| C05_a | Scarce jobs: Preference for men | 4.03 | Indonesia | 3.88 | Nigeria | 3.43 | Türkiye | 3.06 | Chile | 1.67 | Indonesia | 3.88 |
| C05_b | Scarce jobs: Preference for nationals | 4.09 | Nigeria | 3.99 | Latvia | 3.97 | Republic of Korea | 4.21 | Sweden | 2.78 | Indonesia | 4.83 |
| C05_c | Scarce jobs: Preference for heterosexuals | 3.90 | Tunisia | 3.72 | Indonesia | 4.13 | Nigeria | 3.51 | Chile | 1.76 | Senegal | 4.43 |
| C05_d | Scarce jobs: Preference for people in need | 4.33 | Brazil | 4.40 | Japan | 4.45 | Republic of Korea | 4.15 | Ghana | 3.43 | Türkiye | 4.94 |
| C05_e | Scarce jobs: Preference for family members | 3.87 | Indonesia | 3.69 | Japan | 3.38 | Nigeria | 3.27 | Sweden | 2.06 | Indonesia | 3.69 |
| C05_f | Scarce jobs: Preference for own religion | 3.85 | Indonesia | 3.41 | Türkiye | 3.18 | Tunisia | 3.16 | Chile | 1.70 | Indonesia | 3.41 |
| C05_g | Scarce jobs: Preference for own ethnic group | 3.84 | Türkiye | 3.48 | Japan | 3.46 | Republic of Korea | 3.40 | Chile | 2.05 | Türkiye | 3.48 |
| C06_a | Leadership positions: Gender representation | 4.29 | Indonesia | 3.83 | Brazil | 3.71 | Italy | 3.68 | Russian Federation | 2.57 | Indonesia | 3.83 |
| C06_b | Leadership positions: Ethnic representation | 4.18 | Indonesia | 3.93 | Brazil | 3.68 | Nigeria | 3.60 | Russian Federation | 2.32 | Indonesia | 3.93 |
| C06_c | Leadership positions: Economic status representation | 4.43 | Senegal | 4.57 | Brazil | 4.22 | Indonesia | 4.20 | Republic of Korea | 2.80 | Senegal | 4.57 |
| C07_a | Generational conflict: Prosperity vs. environment | 4.23 | Italy | 4.17 | France | 4.17 | Japan | 4.12 | Tunisia | 3.13 | Senegal | 5.16 |
| C07_b | Generational conflict: Public debt | 4.11 | Nigeria | 3.71 | Japan | 3.60 | United Kingdom | 3.44 | Latvia | 2.07 | Nigeria | 3.71 |
| C08_a | Temporality: Punctuality | 4.47 | Türkiye | 4.60 | Republic of Korea | 4.72 | Tunisia | 4.76 | Japan | 3.59 | Senegal | 5.70 |
| C08_b | Temporality: Efficiency | 4.17 | Republic of Korea | 4.15 | Nigeria | 4.25 | Chile | 4.28 | Tunisia | 3.47 | Indonesia | 5.02 |
| C08_c | Temporality: Free time | 3.76 | Indonesia | 3.78 | Republic of Korea | 3.74 | Japan | 3.73 | Senegal | 2.02 | United Kingdom | 4.31 |
| C08_d | Temporality: Enjoying the present | 4.19 | France | 4.22 | Spain | 4.08 | United Kingdom | 4.08 | Tunisia | 2.48 | Russian Federation | 4.33 |
| C08_e | Temporality: Control of future | 4.50 | Republic of Korea | 4.37 | Tunisia | 4.65 | Singapore | 4.65 | Peru | 4.19 | Senegal | 5.66 |
| C08_f | Temporality: Better life compared to parents | 4.56 | Peru | 4.58 | Italy | 4.51 | United Kingdom | 4.45 | Germany | 3.80 | Indonesia | 5.05 |
| D02_a | Satisfaction: Political system | 4.24 | Singapore | 3.79 | Indonesia | 3.66 | Germany | 3.49 | Tunisia | 1.95 | Singapore | 3.79 |
| D02_b | Satisfaction: Economic system | 4.23 | Singapore | 3.99 | Indonesia | 3.92 | Australia | 3.74 | Tunisia | 1.60 | Singapore | 3.99 |
| D03_a | Interpersonal trust | 3.97 | United Kingdom | 3.90 | Australia | 3.78 | Indonesia | 3.77 | Senegal | 2.33 | United Kingdom | 3.90 |
| D03_b | Citizens’ rights during pandemic | 4.53 | South Africa | 4.51 | Chile | 4.56 | Australia | 4.48 | Peru | 3.85 | Senegal | 4.95 |
| D03_c | Losers of globalization | 4.12 | Russian Federation | 4.11 | Türkiye | 4.16 | Indonesia | 4.04 | Republic of Korea | 2.94 | Türkiye | 4.16 |
| D03_d | Anti-elitism: Big interests | 4.35 | Ghana | 4.37 | Australia | 4.38 | Nigeria | 4.40 | Sweden | 3.74 | Senegal | 5.08 |
| D03_e | Anti-elitism: Responsible officials | 4.21 | Indonesia | 4.25 | Singapore | 3.97 | Senegal | 3.71 | Russian Federation | 2.36 | Indonesia | 4.25 |
| D04_a | Deprivation: Political influence | 4.23 | Chile | 4.22 | Italy | 4.22 | United States | 4.25 | Sweden | 3.49 | South Africa | 4.79 |
| D04_b | Deprivation: Economic situation | 4.17 | Spain | 4.21 | United Kingdom | 4.09 | Singapore | 4.06 | Sweden | 3.52 | Tunisia | 4.97 |
| D04_c | Deprivation: Traditions and customs | 4.12 | Indonesia | 4.11 | Ghana | 4.19 | France | 4.03 | Sweden | 3.02 | Senegal | 4.79 |
| D05_a | Subjective identity: Local | 4.57 | Ghana | 4.56 | Indonesia | 4.65 | Russian Federation | 4.67 | Republic of Korea | 3.58 | Nigeria | 4.90 |
| D05_b | Subjective identity: National | 4.43 | Peru | 4.41 | Spain | 4.40 | Nigeria | 4.47 | Tunisia | 3.62 | Indonesia | 5.22 |
| D05_c | Subjective identity: Regional | 3.90 | Ghana | 3.87 | Poland | 3.83 | Germany | 3.96 | Tunisia | 2.44 | Indonesia | 4.60 |
| D07_a | RWA: Defy authority | 4.05 | Türkiye | 4.06 | Japan | 4.06 | Nigeria | 4.11 | France | 3.00 | Poland | 4.68 |
| D07_b | RWA: Discipline and unity | 4.23 | Nigeria | 4.36 | France | 4.05 | Ghana | 4.51 | Latvia | 2.49 | Senegal | 5.63 |
| D07_c | RWA: Old-fashioned ways and values | 4.14 | Peru | 4.15 | Brazil | 4.12 | Italy | 4.09 | Republic of Korea | 2.99 | Senegal | 4.66 |
| D07_d | RWA: Premarital sexual intercourse | 3.11 | Indonesia | 3.01 | Nigeria | 2.99 | South Africa | 3.36 | Tunisia | 1.56 | Germany | 5.25 |
| D07_e | RWA: Tougher government and stricter laws | 3.84 | Germany | 3.85 | Italy | 3.86 | United Kingdom | 3.87 | Tunisia | 2.94 | Poland | 4.52 |
| D07_f | RWA: Crack down on troublemakers | 4.40 | Chile | 4.43 | Nigeria | 4.43 | Australia | 4.36 | Poland | 3.85 | Senegal | 5.17 |
| D08_a | Globalization: Limiting International trade | 4.38 | France | 4.39 | Türkiye | 4.43 | Ghana | 4.49 | Republic of Korea | 3.06 | Senegal | 5.45 |
| D08_b | Globalization: International organizations take away power | 4.20 | Indonesia | 4.18 | France | 4.15 | Australia | 4.14 | Poland | 3.22 | South Africa | 4.73 |
| D08_c | Globalization: Immigrants endanger society | 4.20 | South Africa | 4.28 | Indonesia | 4.33 | Ghana | 4.05 | Brazil | 2.55 | Türkiye | 4.59 |
| D09_a | Anti-terror measure: Acceptance (outcome) | 4.63 | Indonesia | 4.56 | Ghana | 4.78 | Nigeria | 4.34 | Republic of Korea | 3.29 | Senegal | 5.10 |
| D09_b | Health data collection: Acceptance (outcome) | 4.85 | Ghana | 4.86 | Indonesia | 5.01 | Peru | 4.63 | Poland | 3.62 | Senegal | 5.47 |
| D09_c | Tax fraud/corruption prevention: Acceptance (outcome) | 4.67 | Indonesia | 4.78 | Tunisia | 4.54 | Ghana | 4.43 | Poland | 3.26 | Senegal | 5.03 |
Well here we can’t say that India resembles like its counterparts in developing world or new democracies of global south. Rather it is a mix pot, which varies from question to question. In some questions the average is closest to EU and West and in some it is similar to African countries.
“India” is a single country, while “EU/West”, “Africa”, etc. are mixtures of several countries, each with different response distributions. When we average several countries together, the region mean will often be pulled toward the middle (or toward whichever countries have larger effective weight), so a single country like India can end up above the regional average even if it is not near the top relative to every individual country.
# =============================================================================
# METHOD 1: LONGEST RUN
# =============================================================================
likert_vars_ordered <- names(pals)[grepl("^[A-D][0-9]", names(pals))]
likert_vars_ordered <- sort(likert_vars_ordered) # Survey order
calculate_longest_run <- function(x) {
if (all(is.na(x))) return(0)
r <- rle(as.numeric(x))
max(r$lengths, na.rm = TRUE)
}
straightline_run <- suppressWarnings({
pals %>%
select(id, country, w2, all_of(likert_vars_ordered)) %>%
pivot_longer(cols = all_of(likert_vars_ordered), names_to = "item", values_to = "response") %>%
filter(response %in% 1:6) %>%
group_by(id) %>%
summarise(
country = first(country),
w2 = first(w2),
total_responses = n(),
max_run = calculate_longest_run(response),
run_value = {
r <- rle(as.numeric(response))
r$values[which.max(r$lengths)]
},
.groups = "drop"
) %>%
mutate(
straightliner_10 = max_run > 10,
straightliner_15 = max_run > 15
)
})
# Table 1: India runs
kable(
straightline_run %>%
filter(country == 17) %>%
summarise(
Total_Resp = n(),
`Max Run >10` = sum(straightliner_10),
`Pct >10` = round(100 * mean(straightliner_10), 1),
`Max Run >15` = sum(straightliner_15),
`Pct >15` = round(100 * mean(straightliner_15), 1),
Avg_Max_Run = round(mean(max_run), 1),
.groups = "drop"
),
caption = "India: Straightlining (Longest Run)"
)
| Total_Resp | Max Run >10 | Pct >10 | Max Run >15 | Pct >15 | Avg_Max_Run |
|---|---|---|---|---|---|
| 2822 | 684 | 24.2 | 290 | 10.3 | 9.1 |
# Show extremes
kable(
straightline_run %>%
filter(country == 17, max_run > 10) %>%
select(id, total_responses, max_run, run_value) %>%
arrange(desc(max_run)) %>%
head(10),
caption = "India: Respondents with >10 identical answers"
)
| id | total_responses | max_run | run_value |
|---|---|---|---|
| 170016 | 126 | 64 | 1 |
| 171670 | 134 | 37 | 1 |
| 171093 | 145 | 28 | 1 |
| 171665 | 132 | 28 | 1 |
| 170402 | 139 | 27 | 6 |
| 170572 | 143 | 27 | 6 |
| 170579 | 145 | 27 | 6 |
| 170583 | 144 | 27 | 6 |
| 170585 | 144 | 27 | 6 |
| 170878 | 133 | 27 | 4 |
# ------------------------------
# PALS Conjoint (India only) - Task 1 (B07) AMCEs with cregg
# Uses your variable names: B07_a1..B07_a7 and B07_b1..B07_b7
# ------------------------------
# 1) India only + valid forced choice
ind <- pals %>%
filter(country == 17, B07 %in% 1:4, !is.na(id), w2 > 0) %>%
mutate(pickA = if_else(B07 %in% c(1, 2), 1L, 0L)) # chose A?
# 2) Long data: two rows per respondent (A and B profiles)
ind_long <- ind %>%
transmute(
id, w2, pickA,
A_minority = B07_a1, A_democracy = B07_a2, A_econ_policy = B07_a3,
A_tax_policy = B07_a4, A_homosexuality = B07_a5, A_immigration = B07_a6,
A_econ_situation = B07_a7,
B_minority = B07_b1, B_democracy = B07_b2, B_econ_policy = B07_b3,
B_tax_policy = B07_b4, B_homosexuality = B07_b5, B_immigration = B07_b6,
B_econ_situation = B07_b7
) %>%
mutate(across(starts_with(c("A_", "B_")), haven::zap_labels)) %>%
pivot_longer(
cols = starts_with(c("A_", "B_")),
names_to = c("profile", "attr"),
names_pattern = "^(A|B)_(.*)$",
values_to = "level"
) %>%
pivot_wider(names_from = attr, values_from = level) %>%
mutate(
profile = factor(profile, levels = c("A", "B")),
chosen = if_else(profile == "A", pickA, 1L - pickA)
)
# 3) Label + set baselines (baselines are the first level listed)
# Attribute definitions from the India questionnaire/codebook [file:10][file:9]
ind_long <- ind_long %>%
mutate(
minority = factor(minority,
levels = c(2, 1),
labels = c("Govt free even if against minority rights",
"Govt constrained by minority rights")),
democracy = factor(democracy,
levels = c(2, 1),
labels = c("Policy controlled by experts",
"Policy controlled by elected reps")),
econ_policy = factor(econ_policy,
levels = c(2, 1),
labels = c("Actively controls major industries",
"Few controls on major industries")),
tax_policy = factor(tax_policy,
levels = c(2, 1),
labels = c("High taxes (more equality)",
"Low taxes (individual choice)")),
homosexuality = factor(homosexuality,
levels = c(2, 1),
labels = c("Homosexual relationships penalized",
"Equal rights for homosexual couples")),
immigration = factor(immigration,
levels = c(2, 1),
labels = c("Keeps immigration to a minimum",
"Encourages talented foreigners")),
econ_situation = factor(econ_situation,
levels = c(1, 2, 3, 4),
labels = c("Income/capita 3,500 USD",
"Income/capita 23,000 USD",
"Income/capita 43,000 USD",
"Income/capita 63,000 USD"))
)
# 4) AMCEs (cluster by respondent id; weighted by w2)
amce_india_b07 <- cj(
ind_long,
chosen ~ minority + democracy + econ_policy + tax_policy +
homosexuality + immigration + econ_situation,
id = ~ id,
weights = ~ w2,
estimate = "amce"
)
## Warning in logLik.svyglm(x): svyglm not fitted by maximum likelihood.
plot(amce_india_b07)
## Warning: `aes_string()` was deprecated in ggplot2 3.0.0.
## ℹ Please use tidy evaluation idioms with `aes()`.
## ℹ See also `vignette("ggplot2-in-packages")` for more information.
## ℹ The deprecated feature was likely used in the cregg package.
## Please report the issue at <https://github.com/leeper/cregg/issues>.
## This warning is displayed once per session.
## Call `lifecycle::last_lifecycle_warnings()` to see where this warning was
## generated.
## Warning: Using `size` aesthetic for lines was deprecated in ggplot2 3.4.0.
## ℹ Please use `linewidth` instead.
## ℹ The deprecated feature was likely used in the ggplot2 package.
## Please report the issue at <https://github.com/tidyverse/ggplot2/issues>.
## This warning is displayed once per session.
## Call `lifecycle::last_lifecycle_warnings()` to see where this warning was
## generated.
## `height` was translated to `width`.
# 5) Rank which levels "matter most" by absolute AMCE size
amce_ranked <- amce_india_b07 %>%
mutate(abs_est = abs(estimate)) %>%
arrange(desc(abs_est))
amce_table <- amce_ranked %>%
# drop the baseline levels (they have estimate==0 and NA SE)
filter(!is.na(std.error)) %>%
mutate(
AMCE_pp = 100 * estimate,
CI = sprintf("[%.1f, %.1f]", 100 * lower, 100 * upper),
p = scales::pvalue(p, accuracy = 0.001),
feature = str_replace_all(feature, "_", " ")
) %>%
select(
feature,
level,
`AMCE (pp)` = AMCE_pp,
CI,
p
)
amce_table %>%
kbl(
format = "html",
digits = 1,
caption = "India (B07): Ranked AMCEs (percentage-point change in probability profile is chosen)"
) %>%
kable_styling(full_width = FALSE) %>%
scroll_box(width = "100%", height = "600px")
| feature | level | AMCE (pp) | CI | p |
|---|---|---|---|---|
| econ situation | Income/capita 63,000 USD | 10.8 | [5.0, 16.5] | <0.001 |
| econ situation | Income/capita 43,000 USD | 10.4 | [4.5, 16.3] | <0.001 |
| minority | Govt constrained by minority rights | -3.6 | [-7.6, 0.3] | 0.071 |
| econ situation | Income/capita 23,000 USD | 2.2 | [-3.6, 8.0] | 0.461 |
| homosexuality | Equal rights for homosexual couples | -1.3 | [-5.5, 2.8] | 0.529 |
| democracy | Policy controlled by elected reps | 1.0 | [-3.0, 5.0] | 0.627 |
| econ policy | Few controls on major industries | -0.3 | [-4.5, 3.9] | 0.881 |
| tax policy | Low taxes (individual choice) | 0.3 | [-3.8, 4.4] | 0.887 |
| immigration | Encourages talented foreigners | -0.2 | [-4.3, 3.9] | 0.924 |