Given the World Happiness Report (WHR) dataset, I trained machine learning models to predict the happiness score of a country based features such as Log GDP per capita, social support, generosity, perceptions of corruption, confidence in national government, and democratic quality. First, I explored the data by determining the presence of correlation between different features by plotting pair plots. I cleaned the data by removing missing values and eliminated unnecessary features that do not add much value. In terms of models, I experimented with linear regression, decision trees, random forest, stacking, and gradient boosted decision trees, along with various hyperparameters. Ultimately, random forest and stacking performed the best.