Given a dataset with missing values and outliers, describe your step-by-step approach to cleaning and preparing it for a machine learning model.