{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Gap analysis with Continuous Variables\n", "\n", "Recall the purpose of Gap Analysis: determine whether two samples of data are different. In our running example, we want to determine whether Sample 1 (salaries of female employees in the bank) is different from Sample 2 (salaries of male employees at the bank). We generally come at Gap Analysis in two steps:\n", "1. Plot the data in such a way that we can visually assess whether a gap exists. These visualizations also come in handy later when communicating the results of any formal analysis.\n", "2. Conduct a formal gap analysis using statistical techniques." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Preliminaries\n", "I include the data import and library import commands at the start of each lesson so that the lessons are self-contained." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import pandas as pd\n", "bank = pd.read_csv('Data/Bank.csv')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Visual gap analysis\n", "The boxplot in Seaborn permits both an _x_ and _y_ axis. For the resulting boxplot to make sense, the _x_ variable must be continuous (like salary) and the _y_ variable must be categorical (like gender). This permits a very quick comparison of the distribution of salary by gender.\n" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "scrolled": true }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "#ensure Seaborn is loaded\n", "import seaborn as sns\n", "\n", "sns.boxplot(x=bank['Salary'], y=bank['Gender'], showmeans=True);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "As an aside: We can do the same kind of analysis by \"JobGrade\". But recall that we left JobGrade as an integer and did not convert it to a category variable (as we did for Gender and PCJob). We can make this conversion on the fly in order to get a boxplot:" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "sns.boxplot(x=bank['Salary'], y=bank['JobGrade'].astype('category'), showmeans=True);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We see that the higher job grades (managerial roles) have both higher mean salaries and higher variability in salaries than the lower job grades.\n", "\n", "## Histograms\n", "As in R, comparative histograms are a bit trickier. Given that boxplots provide much the same information, it might not be worth the effort to generate meaningful comparative histograms. Having said that, histograms (and kernel density plots) seem to be slightly easier for some people to understand. This is important when communicating your results.\n", "\n", "### Faceted histograms\n", "We used the notion of a \"facet\" in R to create a grid of histograms. In this case, we want a grid with one column and two rows. The rows correspond to different values of the \"Gender\" variable. This is a bit easier in Python with Seaborn's `displot` function, which creates a faceted distribution plot. Here the `row` argument tells Seaborn to create one row for each value of gender. I have also set the `linewidth` property to zero and added kernel density plots.\n" ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "sns.displot(x='Salary', row='Gender', data=bank, linewidth=0, kde=True);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Overlaying kernel density plots\n", "As mentioned in our discussion of R, overlaying histograms almost never makes sense—the result is typically a mess, which is why SAS Enterprise Guide stacks them one on top of the other (as we just did above). Here is an overlayed histogram for the bank salary data. Note that the color are added, so we get a third color in regions of overlap:" ] }, { "cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "sns.histplot(x='Salary', hue='Gender', data=bank, linewidth=0);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "A better approach is to stack kernel density plots. Note that I have also added some shading to make the result look marginally cooler." ] }, { "cell_type": "code", "execution_count": 27, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "sns.kdeplot(x='Salary', hue='Gender', data=bank, shade=True);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## _t_-Tests\n", "We use the _t_-test at this point to formally test the hypothesis that two distributions have the same sample mean (and thus are \"the same\"—or at least close enough). As in Excel and R, the two main preconditions to running the test in Python are:\n", "1. Getting the data in the right format\n", "2. Determining which version of the _t_-test to run: equal variance or unequal variance\n", "\n", "### Formating the data\n", "The easiest way to format data for _t_-tests in Python is to use the filtering and selection techniques already covered to create two arrays of data: salaries of female employees and salaries of male employees.\n", "\n", "The steps to do this are straightforward, although the syntax may look a bit odd initially:\n", "1. Start with the data frame `bank`\n", "2. Create a Boolean vector (209 true or false values) based on the value of the \"Gender\" column (true if female, false otherwise)\n", "3. Filter the data frame based on the Boolean vector. This creates a subset of the original data frame.\n", "4. Extract the \"Salary\" column from the subsetted data frames into two new vectors: `female_sal` and '`male_sal`" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "female_sal = bank[bank['Gender'] == \"Female\"]['Salary']\n", "male_sal = bank[bank['Gender'] == \"Male\"]['Salary']" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "If we list the contents of `female_sal`, we see it contains the salaries of the 140 female employees." ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "1 39.1\n", "2 33.2\n", "3 30.6\n", "5 30.5\n", "6 30.0\n", " ... \n", "186 50.0\n", "187 61.8\n", "188 43.0\n", "190 58.5\n", "207 30.0\n", "Name: Salary, Length: 140, dtype: float64" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "female_sal" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Testing for equality of variance\n", "By default, R uses the _F_-test to determine whether the variances of the two samples are similar enough to be considered \"the same\". The authors of Scipy, a popular Python library for statistics, object to this choice for various technical reasons and, as a consequence, did not implement a method to perform _F_-tests. Instead, they offer two refinements: Levene's test and Bartlett's test (Levene's and Bartlett's tests are also available in R). We will use Levene's test: " ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [], "source": [ "# ensure the scipy stats module is loaded\n", "from scipy import stats " ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "LeveneResult(statistic=26.208558688866834, pvalue=7.013920590029544e-07)" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "stats.levene(female_sal, male_sal)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The output is not particularly impressive, but it contains the one number we need: the probability (pvalue) that the two variances are equal. Any number that ends with \"e07\" ($10^{-7}$) is small enough to treat as zero. We thus proceed under the assumption that the variances are unequal." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Running the _t_-test\n", "Although the Scipy library has a _t_-test, the statsmodels library offers a bit more functionality. To run a _t_-test in statsmodels, we do the following: \n", "1. Load the library\n", "2. Call the library's `CompareMeans.from_data()` method to convert our two vectors of salary data into a CompareMeans object, which I call `model`\n", "3. Call the `summary()` method which provides a nice summary of the test.\n", "\n", "Note that I have to specify the unequal variance assumption in the call to `summary()` by passing the `usevar='unequal'` argument." ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [], "source": [ "import statsmodels.stats.api as sms" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "
Test for equality of means
coef std err t P>|t| [0.025 0.975]
subset #1 -8.2955 2.003 -4.141 0.000 -12.283 -4.308
" ], "text/plain": [ "" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "model = sms.CompareMeans.from_data(bank[bank['Gender'] == \"Female\"]['Salary'], bank[bank['Gender'] == \"Male\"]['Salary'])\n", "model.summary( usevar='unequal')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The summary includes:\n", "+ the difference in sample means (-8,295.50, as we have seen before)\n", "+ the _p_-value (appropriately rounded)\n", "+ the 5\\% confidence intervals around the difference in means. Here we 95\\% certain that the true difference between female and male salaries is somewhere between 4.3K and 12.2K\n", "\n", "Yes, these are the same results we got in Excel, SAS, and R." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "celltoolbar": "Tags", "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.9.5" } }, "nbformat": 4, "nbformat_minor": 2 }