PCA Psychophysical Analysis
Looking for patterns in 93 behavioural and physical measurements.
The question
For my Computational Linear Algebra course, I worked with a dataset of 93 psychophysical variables. I used PCA to reduce it to five components, then K-Means to form four groups. Afterwards, I compared the groups using the original measurements to see what the clustering had picked up.
What showed up
- Cluster 1: taller and heavier on average (178.6 cm, 73.3 kg), with stronger sensation-seeking signals.
- Cluster 0: shorter and lighter on average (169.3 cm, 59.3 kg), with a different anxiety/conformity pattern.
- Cluster 2: 60.6% female, with several psychological variables separating it from the other groups.
- Cluster 3: the least tidy group, including a much wider spread in weight (σ = 16.8).
Methodology
- Data Preprocessing: Ordinal Encoding for categorical variables, StandardScaler for numerical normalization.
- PCA: Condensed 93 features into 5 principal components while retaining structural integrity.
- K-Means Clustering: Segmented the population into 4 psychophysical profiles based on the principal components.
- Statistical Profiling: Analyzed cluster centroids to interpret correlations between height/weight and behavioral factors (extraversion, anxiety).
Built with
Language: Python 3
Libraries: Scikit-Learn, Pandas, NumPy, Matplotlib
Environment: Jupyter Notebook
Techniques: PCA, K-Means Clustering, Ordinal Encoding, StandardScaler
Academic Context
Course: Computational Linear Algebra for Large Scale Problems
Academic Year: 2025/2026
Authors: Lucio Baiocchi, Leonardo Passafiume
Source: GitHub