Quantitative · finished

One resident survey, end to end: questionnaire to report

Synthetic data, 1,000 respondents, 32 columns, six steps — intake, preprocessing, reliability, factor analysis, group comparison, regression

Research question — What raises overall satisfaction, and what differs by district?

Raw data citizen_perception_survey_2026.csv · 12 rows

Synthetic demonstration data — not a real survey and not any municipality’s data (the city is written as a placeholder). The 1,000-row sample comes from a seeded generator in the repository, and every table and sentence was produced by running the repository’s own engines. Those values were then checked cell by cell against an independently computed answer sheet: 22 cells, 0 mismatches.

idgenderage_groupdistrictyears_residentq1q5q16q19_overall_satisfactionq21_priority_investment
R0001Female30–39East1634.013Transport
R0002Male19–29West1034.045Environment & green space
R0003Female30–39East445.023Culture & sports
R0004Female40–49West2721.033Environment & green space
R0005Female40–49West3523.03Welfare & care

The study, step by step — what was actually produced

  1. ① Intake — who answered

    Count first: how many fall in each gender, district and investment priority, and where cells are missing. Skip this and every later test reports without saying how many people it ran on.

    A frequency analysis was conducted on gender, district and _priority_investment (N = 1000). For gender (2 categories), the most frequent category was "Male" (506, 50.6% of valid cases); valid n = 1000, missing = 0. For district (4 categories), the most frequent category was "Central" (273, 27.3% of valid cases); valid n = 1000, missing = 0. For _priority_investment (6 categories), the most frequent category was "Transport" (210, 21.0% of valid cases); valid n = 1000, missing = 0. No missing data were present.
  2. ② Preprocessing — flip the reverse items, build the scales

    Two reverse-coded items are flipped back, then each scale becomes the mean of its items. The flip uses the same one-line formula the preprocessing screen uses. Then the shape of overall satisfaction and the four scale means is checked.

    Descriptive statistics were computed for _overall_satisfaction and 4 other variables (N = 1000). For _overall_satisfaction, M = 3.24, SD = 1.27, Mdn = 3.00, range = 1.00–5.00. Skewness = -0.17 and kurtosis = -1.01, within normal range. For admin_service_mean, M = 3.37, SD = 0.87, Mdn = 3.40, range = 1.00–5.00. Skewness = -0.17 and kurtosis = -0.62, within normal range. For living_environment_mean, M = 3.22, SD = 0.89, Mdn = 3.20, range = 1.00–5.00. Skewness = -0.19 and kurtosis = -0.64, within normal range. For civic_participation_mean, M = 2.87, SD = 0.91, Mdn = 3.00, range = 1.00–5.00. Skewness = 0.08 and kurtosis = -0.56, within normal range. For trust_mean, M = 3.02, SD = 0.97, Mdn = 3.00, range = 1.00–5.00. Skewness = -0.00 and kurtosis = -0.71, within normal range. 16 missing value(s) were identified.
  3. ③ Reliability — do these items hang together

    Cronbach alpha checks whether the five administrative-service items really measure one thing. Item-total correlations and alpha-if-deleted come back with it.

    Internal consistency of Administrative service was Cronbach’s α = .81 (5 items, N = 910). Corrected item-total correlations ranged from .52 to .67. Standardized α = .81; mean inter-item correlation = .46.
  4. ④ Factor analysis — do they split into four as designed

    All eighteen items go in at once to see how many groups they form. KMO and Bartlett say first whether the data support factoring at all; eigenvalues and cumulative explained variance follow.

    An exploratory factor analysis with varimax rotation was conducted. The Kaiser-Meyer-Olkin measure verified the sampling adequacy, KMO = .90; Bartlett’s test of sphericity was significant, χ²(153, N = 603) = 3685.10, p < .001. 4 factor(s) were retained, explaining 58.8% of the total variance. Factor 1 was primarily defined by q12, q11, q14. Factor 2 was primarily defined by q7, q8, q6. Factor 3 was primarily defined by q2, q1, q4. The analysis was based on N = 603. Factor loadings ranged from .61 to .80. Factor 1 explained 13.5% of the variance, Factor 2 explained 15.3% of the variance, Factor 3 explained 15.5% of the variance, Factor 4 explained 14.5% of the variance. Communalities ranged from .39 to .73.
  5. ⑤ Group comparison — does living environment differ by district

    With four groups you run one ANOVA, not three t-tests. When the effect is significant, the post-hoc test (Tukey HSD) names which district pair separated.

    One-way ANOVAs examined living_environment_mean across levels of district (N = 1000). For living_environment_mean, there was a significant effect, F(3, 996) = 8.52, p < .001, η² = .03. Levene's test indicated equal variances (p = .890). Post hoc Tukey HSD comparisons showed East differed from New town (p = .021), East differed from Central (p = .024), West differed from New town (p < .001), West differed from Central (p < .001). Group statistics: East (M = 3.12, SD = 0.88), West (M = 3.04, SD = 0.87), New town (M = 3.36, SD = 0.91), Central (M = 3.35, SD = 0.87).
  6. ⑥ Regression — what raises overall satisfaction

    The four scale means predict overall satisfaction. Standardized beta gives the priority order across domains, and VIF answers whether the predictors are too much alike.

    A multiple linear regression was conducted to predict _overall_satisfaction from admin_service_mean, living_environment_mean, civic_participation_mean, trust_mean. The overall model was significant (R² = .59, adjusted R² = .59, F(4, 979) = 355.56, p < .001). The predictors accounted for 59.2% of the variance in _overall_satisfaction. admin_service_mean significantly predicted _overall_satisfaction (B = 0.54, SE = 0.04, β = .37, t(979) = 14.46, p < .001). living_environment_mean significantly predicted _overall_satisfaction (B = 0.37, SE = 0.03, β = .26, t(979) = 11.15, p < .001). civic_participation_mean significantly predicted _overall_satisfaction (B = 0.25, SE = 0.03, β = .18, t(979) = 7.49, p < .001). trust_mean significantly predicted _overall_satisfaction (B = 0.29, SE = 0.03, β = .22, t(979) = 8.72, p < .001). Multicollinearity was assessed using the variance inflation factor; the maximum VIF was 1.56 (admin_service_mean), indicating no serious multicollinearity.

Key results

① Intake — Frequency table

Total N = 1000, Total missing = 0 · Cumulative percent: based on valid responses

VariableCategoryFrequencyPercentValid PercentCumulative Percent
genderMale50650.650.650.6
genderFemale49449.449.4100.0
districtEast22422.422.422.4
districtWest24624.624.647.0
districtNew town25725.725.772.7
districtCentral27327.327.3100.0
q21_priority_investmentTransport21021.021.021.0
q21_priority_investmentCulture & sports13113.113.134.1
q21_priority_investmentWelfare & care17617.617.651.7
q21_priority_investmentJobs & economy16616.616.668.3
q21_priority_investmentHousing & urban renewal13713.713.782.0
q21_priority_investmentEnvironment & green space18018.018.0100.0
Total1000100.0100.0100.0

② Preprocessing — Descriptive statistics

Total N = 1000, Total missing = 16

VariableNMeanStd. DeviationVarianceStd. ErrorMedianQ1Q3MinimumMaximumSkewnessKurtosis
q19_overall_satisfaction9843.241.271.620.0413.02.04.01.05.0-0.174-1.014
admin_service_mean10003.370.870.760.0283.42.84.01.05.0-0.173-0.617
living_environment_mean10003.220.890.800.0283.22.63.81.05.0-0.189-0.642
civic_participation_mean10002.870.910.830.0293.02.23.51.05.00.077-0.563
trust_mean10003.020.970.930.0313.02.23.81.05.0-0.003-0.713

③ Reliability — Reliability analysis (α = 0.809, good)

Cronbach's α = 0.809 (good) · Standardized α = 0.809 · Items = 5, N = 910 · Mean inter-item correlation = 0.459 · Decision: corrected item-total r < .30 = review needed, .30–.40 = acceptable, ≥ .40 = good

ItemMeanSDCorrected item-total correlationAlpha if item deleted
q13.4101.1530.672Good
q23.3871.1790.647Good
q33.3571.1760.579Good
q43.3881.1640.562Good
q53.2981.1740.523Good

④ Factor analysis — Suitability tests

IndexValueInterpretation
KMO0.8989meritorious
Bartlett χ²3685.10-
Bartlett df153-
Bartlett p< .001Adequate

④ Factor analysis — Eigenvalues and variance explained

FactorEigenvalue% of varianceCumulativeKaiser
15.690631.61%31.61%●
22.084411.58%43.19%●
31.56588.70%51.89%●
41.25206.96%58.85%●
50.77054.28%63.13%
60.71153.95%67.08%
70.67523.75%70.83%
80.63903.55%74.38%
90.58713.26%77.64%
100.56263.13%80.77%

⑤ Group comparison — living_environment_mean — Post hoc comparisons (Tukey HSD)

ComparisonMean differenceStd. Errorp95% CIDecision
East vs West0.0900.058.690[-0.120, 0.300]N.S.
East vs New town-0.2330.057.021[-0.440, -0.025]Significant
East vs Central-0.2260.056.024[-0.430, -0.021]Significant
West vs New town-0.3220.056< .001[-0.525, -0.120]Significant
West vs Central-0.3150.055< .001[-0.515, -0.116]Significant
New town vs Central0.0070.054> .999[-0.190, 0.205]N.S.

⑤ Group comparison — Mean comparison by district

living_environment_mean: η²=0.025, ω²=0.022, Post hoc(Tukey HSD): East↔New town(p=.021), East↔Central(p=.024), West↔New town(p=< .001), West↔Central(p=< .001)

VariableGroupNMeanSDSSdfMSFpη²ω²
living_environment_meanEast2243.120.88219.92536.6428.520< .0010.0250.022
West2463.040.874
New town2573.360.909
Central2733.350.867
Within groups776.4029960.780
Total796.326999

⑥ Regression — Factors predicting _overall_satisfaction

Dependent variable: _overall_satisfaction · N = 984 · Model summary rows: R² and adjusted R² sit in the value column; the model F sits in the test-statistic and significance columns.

VariableBSEβtpVIF
(Constant)-1.3310.125-10.673< .001-
admin_service_mean0.5370.0370.36914.461< .0011.56
living_environment_mean0.3690.0330.26011.148< .0011.30
civic_participation_mean0.2460.0330.1777.489< .0011.34
trust_mean0.2860.0330.2178.721< .0011.49
R²0.592
Adjusted R²0.591
Model F(4, 979)355.563< .001

Representative quotes

Every quote is a sentence that exists in the raw data (excerpt-existence check passed).

    Paper-ready tables

    Copying opens an editable duplicate in your workbench — this showcase stays as it is.

    One resident survey, end to end: questionnaire to report | Statory