Statistical Analysis: Project with A/B testing and Machine Learning methodologies
Statistical Analysis: A/B testing and Machine Learning
Hi all, this is a Data Analytics Project ! - Project with A/B testing and Machine Learning methodology.Project Objective
- The purpose of this project is to learn how to apply A/B testing and Machine Learning methodology in order to understand which version is more popular for users and also uncover the relations between each variable.
Methods Used
- Inferential Statistics
- Data Visualization
- Calculated Probability
- A/B Testing
- Machine Learning
Model Used
- Statistical Analysis:
- Machine Learning:
Technologies and Packages Used
- Python, Jupyter Notebook
- Numpy, Matplotlib.pyplot
- Pandas, Statsmodels.api
Project Description
- Motivation:
- Data and Scope:
- Methodology Approach:
Conclusion:
- From the results of Calculated Probability, there are more than 50% of users willing to land newpages which makes the model more convincing and meaningful. Although only around 11.96% of users are willing to convert to the newpages version, the result is still acceptable in the business world. Furthermore, the probability of an individual received the new page in either "control" or "treatment" groups are around 12% which means not only the size of both groups are similar but the conversion rates are close. Therefore, I can distinguish the design of this experimental model is strong and persuasive. - From the results of A/B Testing, p-value is around 9.6% which is higher than Type I error(5%); therefore, I should fail to reject the null (H0). In addition, I can tell the actual p-value of control group is higher than the treatment group during the calculation which means no overfitting. On the other hand, since old verison has higher p-value than the new one, I should keep the old version and do not change to the new version. Meanwhile, since the probabilities of using newpages and oldpages are the same, there is no bias here.. - From the results of Modeling Approach, Logisitc Regression is an excellent choice in this case because the response variables are Categorical Variables. Moreover, the result will be stronger and more convincing with new variables added such as 'timestamp'. More specifically, I can classify this factor into 'morning', 'afternoon' and 'evening'. Also I can classify them as 'weekday' and 'weekend' for better performance. On the other hand, it will make regression model more complex and I need to check it carefully to see if variables are dependable with each other. If yes, I need to add higher order term to get the better prediction results. Otherwise, the results should be trustworthy.