This project analyzes the Mice Protein Expression Dataset, which contains measurements of 77 protein expression levels from the brains of 72 mice.
The goal is to explore how:
- 🧬 Genotype (Control vs Trisomy)
- 🧠 Behavioral Training
- 💊 Treatment (Memantine vs Saline)
affect protein expression patterns using unsupervised machine learning techniques.
This project focuses on:
- Data Cleaning & Preprocessing
- Dimensionality Reduction (PCA, SVD, t-SNE, UMAP)
- Clustering (K-Means, Agglomerative, DBSCAN)
- Cluster Evaluation using Silhouette Score
- Total Mice: 72
- Total Protein Features: 77
- Categorical Variables:
Genotype→ Control / TrisomyBehavior→ CS / SCTreatment→ Memantine / Saline
Each mouse belongs to one of 8 experimental groups: [Genotype]-[Behavior]-[Treatment] Example: c-CS-s
Dataset file location:
dataset/Data_Cortex_Nuclear.csv
- Python
- Pandas
- NumPy
- Matplotlib
- Seaborn
- Scikit-learn
- UMAP
✔ Missing Value Handling using KNNImputer (k=5)
✔ One-Hot Encoding of categorical variables
✔ Feature Scaling using RobustScaler
We applied multiple dimensionality reduction techniques:
- PCA (Principal Component Analysis)
- Truncated SVD
- t-SNE
- UMAP
UMAP preserved structure more effectively for clustering.
Clustering was performed on:
- PCA-reduced data
- SVD-reduced data
- UMAP-reduced data
Algorithms used:
- 🔹 K-Means
- 🔹 Agglomerative Clustering
- 🔹 DBSCAN
All models were evaluated using Silhouette Score.
Higher score → Better cluster separation.
| Model | Silhouette Score |
|---|---|
| KMeans (PCA) | ~0.38 |
| KMeans (SVD) | ~0.38 |
| Agglomerative (PCA) | ~0.29 |
| Agglomerative (SVD) | ~0.31 |
| DBSCAN (PCA) | ~0.57 |
| DBSCAN (SVD) | ~0.58 |
| KMeans (UMAP) | 0.6218 |
| DBSCAN (UMAP) | ~0.61 |
Best Clustering Model: KMeans_UMAP
Best Silhouette Score: 0.6218
UMAP combined with K-Means produced the best cluster separation among all tested models.
This indicates that:
- UMAP preserved meaningful structure
- K-Means effectively separated the clusters in reduced space
The following bar chart compares Silhouette Scores across models:
Mice-Protein-Expression/
│
├── dataset/
│ └── Data_Cortex_Nuclear.csv
│
├── images/
│ └── clustering_performance.png
│
├── mice_protein_analysis.ipynb
├── README.md
└── requirements.txt
git clone https://github.com/muhammedshihab1001/mice-protein-expression.git
cd mice-protein-expression
jupyter notebook
mice_protein_analysis.ipynb
-
Proper scaling significantly improves clustering quality.
-
PCA and SVD provide moderate separation.
-
DBSCAN performs better than K-Means on linear reductions.
-
UMAP provides the best structure preservation.
-
KMeans + UMAP achieved the highest Silhouette Score (0.6218).
-
Try Spectral Clustering
-
Hyperparameter tuning for DBSCAN
-
Compare clusters with true experimental labels
-
Apply supervised classification models
-
Perform feature importance analysis
Muhammed Shihab P
Machine Learning Enthusiast
