World Bank data on maternal mortality using R

The World Bank provides open data for many indicators across most countries, spanning the last few decades.

This data is available online with searches available by country codes (iso2c and iso3c), indicator names, and by dates. The indicators can be viewed here. It can also be accessed via an application programming interface (API).  The WDI library in R provides access through this API, allowing for easy search and retrieval of data.

In this post, written as an R-markdown file, and available on RPubs and GitHub, I showcase the WDI library by looking at maternal mortality rates for the United States, Brazil, and South Africa.

Follow the links and have a look.

R tutorial: Testing assumptions for parametric tests

In this post, written as an R-markdown file and posted on RPubs, I discuss the assumptions for the use of parametric tests in R.

Parametric tests such as the various t tests, analysis of variance (ANOVA), and correlations are only valid if certain assumptions are met. When these assumptions are not met, the use of these tests in your research may lead to false claims.

In the post I show you the most important assumptions and how to test for them using the R programming language.

The post is available on RPubs and the markdown file is on GitHub.

Sharing your machine learning models with others

Jupyter notebook


So, you’ve spent a lot of time and effort in creating your python machine learning model.  The parameters have been tweaked and the metrics look great.

Now what?  How do you share it with others to use?  Well, one easy way it to pickle it.  The pickle library in python allows you to write your model as a file, that others can open.  They can then simply enter their own data for prediction.

In this YouTube tutorial I create a random forest regressor model, export it as a pickle file, and then import it for use.  Have a look at how easy it all is.

K means clustering using python

The scikit learn library for python is a powerful machine learning tool.
K means clustering, which is easily implemented in python, uses geometric distance to create centroids around which our data can fit as clusters.
In the example attached to this article, I view 99 hypothetical patients that are prompted to sync their smart watch healthcare app data with a research team. The data is recorded continuously, but to comply with healthcare regulations, they have to actively synchronize the data. This example works equally well is we consider 99 hypothetical customers responding to a marketing campaign.
In order to prompt them, several reminder campaigns are run each year. In total there are 32 campaigns. Each campaign consists only of one of the following reminders: e-mail, short-message-service, online message, telephone call, pamphlet, or a letter. A record is kept of when they sync their data, as a marker of response to the campaign.
Our goal is to cluster the patients so that we can learn which campaign type they respond to. This can be used to tailor their reminders for the next year.
In the attached video, I show you just how easy this is to accomplish in python. I use the python kernel in a Jupyter notebook. There will also a mention of dimensionality reduction using principal component separation, also done using scikit learn. This is done so that we can view the data as a scatter plot using the plotly library.

You can view the video here.