Mean, median, and mode are the three core measures of central tendency in Machine Learning. Exploring them before training helps you spot skewed columns, outliers, and missing-value imputation strategies right away.
The mean is the arithmetic average, the median is the middle value after sorting, and the mode is the value that appears most often.
Python's built-in statistics module computes all three directly on small lists without any third-party install (numpy and scipy.stats scale the same logic to large arrays).
import statistics
salaries = [48000, 52000, 52000, 55000, 60000, 290000]
avg_salary = statistics.mean(salaries)
mid_salary = statistics.median(salaries)
common_salary = statistics.mode(salaries)
print(f"Mean: ${avg_salary:,.0f}") # $92,833 (skewed by 290k!)
print(f"Median: ${mid_salary:,.0f}") # $53,500
print(f"Mode: ${common_salary:,.0f}") # $52,000
Notice how a single 290000 executive salary pulls the mean to $92,833, even though five of six people earn $60,000 or less.
When filling missing numeric values in an ML dataset, use the median for skewed features (like income or home prices), the mean for symmetric bell-shaped features, and the mode for categorical labels.
multimode() when ties exist: statistics.mode() returns the first tie; statistics.multimode() returns all tied top values.Python sorts the list and returns the average of the two middle numbers (for [52000, 55000], the median is 53500.0).
Yes. statistics.mode(["red", "blue", "red"]) returns "red", making mode ideal for categorical features.
Use np.mean(arr) and np.median(arr) in NumPy, and scipy.stats.mode(arr) for mode on NumPy arrays.
Sign in to track your learning journey, earn industry-recognized certificates, and join our elite developer community.
Quick Access With
Experiment with the code from this lesson in our interactive playground.