{ "cells": [ { "cell_type": "markdown", "source": [ "# Non-Parametric Tutorial\n", "**NOTE** \n", "This notebook is not meant to teach statistics, but only demo how to run the py50 functions. There are plenty of resources available online. I particularly found introductory [tutorials by DATAtab](https://datatab.net/tutorial/get-started) helpful. \n", "\n", "The following page will show examples of non-parametric tests using the Stats() and Plots() modules of py50. There are many plot features available for py50, but they will not all be demoed here. Instead, to see all the plots available, take a look at the [006_statistics_quickstart](https://github.com/tlint101/py50/blob/main/tutorials/006_statistics_quickstart.ipynb).\n", "\n", "The tests here will follow a path similar to the [guidelines by Pingouin](https://pingouin-stats.org/build/html/guidelines.html). However, different post-hoc tests can be used based on the given dataset. Use your best judgement for the analysis. \n", "\n", "py50 has converted the tests for Wilcoxon and Mann-Whitney for pairwise analysis, which will be demoed below. " ], "metadata": { "collapsed": false }, "id": "f1f36e5ded82a1b7" }, { "cell_type": "code", "id": "initial_id", "metadata": { "collapsed": true, "ExecuteTime": { "end_time": "2026-05-21T04:13:07.661247Z", "start_time": "2026-05-21T04:13:06.794109Z" } }, "source": [ "from py50 import Stats, Plots\n", "import seaborn as sns\n", "from matplotlib import pyplot as plt" ], "outputs": [], "execution_count": 1 }, { "cell_type": "markdown", "source": [ "## Pairwise Wilcoxon\n", "\n", "The pairwise Wilcoxon test is a non-parametric test to determine statistically significant differences between paired samples. The test evaluates whether the median of the differences between paired observations is significantly different from zero.\n", "\n", "**Performing a pairwise Wilcoxon test requires the groups to be the same length**. This is because each group observation is paired with a corresponding observation in the other group. Thus, a one-to-one pairing will need to be established. \n", "\n", "For this example, the Wilcoxon test will be performed using the Iris dataset. " ], "metadata": { "collapsed": false }, "id": "3eba28080df942cf" }, { "cell_type": "code", "source": [ "iris = sns.load_dataset(\"iris\")\n", "\n", "# Initialize class \n", "iris_stats = Stats(iris)\n", "iris_plot = Plots(iris)\n", "\n", "iris_stats.show()" ], "metadata": { "collapsed": false, "ExecuteTime": { "end_time": "2026-05-21T04:13:07.689139Z", "start_time": "2026-05-21T04:13:07.670979Z" } }, "id": "7b26dc796d6118c", "outputs": [ { "data": { "text/plain": [ " sepal_length sepal_width petal_length petal_width species\n", "0 5.1 3.5 1.4 0.2 setosa\n", "1 4.9 3.0 1.4 0.2 setosa\n", "2 4.7 3.2 1.3 0.2 setosa\n", "3 4.6 3.1 1.5 0.2 setosa\n", "4 5.0 3.6 1.4 0.2 setosa" ], "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
sepal_lengthsepal_widthpetal_lengthpetal_widthspecies
05.13.51.40.2setosa
14.93.01.40.2setosa
24.73.21.30.2setosa
34.63.11.50.2setosa
45.03.61.40.2setosa
\n", "
" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "execution_count": 2 }, { "cell_type": "markdown", "source": [ "Performing the pairwise Wilcoxon test works similarly for all tests and use the \"get_X\" script, where X is the name of the test. " ], "metadata": { "collapsed": false }, "id": "25656cce5bbc4826" }, { "cell_type": "code", "source": "iris_stats.get_wilcoxon(group_col='species', value_col='sepal_width')", "metadata": { "collapsed": false, "ExecuteTime": { "end_time": "2026-05-21T04:13:07.766095Z", "start_time": "2026-05-21T04:13:07.742873Z" } }, "id": "4f6f06452e30e76e", "outputs": [ { "data": { "text/plain": [ " A B W-val p-val significance RBC CLES\n", "0 setosa versicolor 34.0 3.190027e-08 **** 0.937095 0.9248\n", "1 setosa virginica 99.5 8.767532e-07 **** 0.823582 0.8344\n", "2 versicolor virginica 247.0 6.368052e-03 ** -0.477801 0.3364" ], "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
ABW-valp-valsignificanceRBCCLES
0setosaversicolor34.03.190027e-08****0.9370950.9248
1setosavirginica99.58.767532e-07****0.8235820.8344
2versicolorvirginica247.06.368052e-03**-0.4778010.3364
\n", "
" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "execution_count": 3 }, { "cell_type": "markdown", "source": [ "Generating annotated plots is similar to those detailed in [006_statistics_quickstart tutorial](https://github.com/tlint101/py50/blob/main/tutorials/006_statistics_quickstart.ipynb) and [007_parametric_tutorial](https://github.com/tlint101/py50/blob/main/tutorials/007_parametric_tutorial.ipynb).\n", "\n", "As the plots will essentially re-calculate results using the given tests, the figures can return a dataframe to compare with the test results above." ], "metadata": { "collapsed": false }, "id": "90c953fcbc149e97" }, { "cell_type": "code", "source": [ "title = \"Swarm Plot with Pairwise WilCoxon Test\"\n", "\n", "iris_plot.swarmplot(test='wilcoxon', group_col='species', value_col='sepal_width', title=title, fontsize=30,\n", " return_df=True)" ], "metadata": { "collapsed": false, "ExecuteTime": { "end_time": "2026-05-21T04:13:08.433467Z", "start_time": "2026-05-21T04:13:08.233481Z" } }, "id": "bab1709e7c1e7a4", "outputs": [ { "data": { "text/plain": [ "( A B W-val p-val significance RBC CLES\n", " 0 setosa versicolor 34.0 3.190027e-08 **** 0.937095 0.9248\n", " 1 setosa virginica 99.5 8.767532e-07 **** 0.823582 0.8344\n", " 2 versicolor virginica 247.0 6.368052e-03 ** -0.477801 0.3364,\n", " )" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" }, { "data": { "text/plain": [ "
" ], "image/png": "iVBORw0KGgoAAAANSUhEUgAAAnYAAAHWCAYAAAD6oMSKAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjksIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvJkbTWQAAAAlwSFlzAAAPYQAAD2EBqD+naQAAhj1JREFUeJzt3Qd4U1UbB/B/927pZpdZ9t6y9xYBQWQoiILiHp+CCxQFcQAqqIADARVBRUBkCCJ7byizzLZQZlu65/e8J9w0aZNSSmfy/z1Pn5Kc5ObmNpf75pzzntcmIyMjA0RERERU4tkW9Q4QERERUf5gYEdERERkIRjYEREREVkIBnZEREREFoKBHREREZGFYGBHREREZCEY2BERERFZCAZ2RERERBaCgR0R3bfCWOeca6mTteBnne4HAzuyeqdOncLLL7+M1q1bo27dumjTpg1eeuklnDhxosQfm7CwMNSoUcPop2bNmmjUqBEGDBiA3377Tf/YXbt2qXb5nVvJycmYMmUKVq5cma/7Lfvx5Zdfmn2N8ePHo1OnTve8XXle1uNRp04d9Tf/3//+h8uXL9/T9v744w+1DTnOBfX+CypweOCBB/D8889na/vuu+/U6z/55JPZ2r7//nvVJscp63sfMWKE+slqx44deO6559C2bVs0aNAA3bt3x7Rp03Djxg2UFNq5cbef/Pgc7Nu3D2PGjMmX/SbrZF/UO0BUlE6fPo1HHnkEDRs2xNtvvw1fX19cuXIFixYtwuDBg7FgwQLVVtI988wz6NChg/6iHhcXh6VLl+Ktt95CamoqhgwZkqftXr16FT/++COmTp2ar/v766+/onTp0gXyGv7+/pg1a5b+trz/c+fO4dNPP8WBAwfw119/wdnZOVfbkmMq+xoQEICCev8FwcbGBi1btsTu3buztW3ZsgWlSpXCnj17kJSUBCcnJ32b3FelShWUKVMmV+9djum3336LHj16qM+abPfkyZOYN28e1q1bp84z2VZxJ8G/vFfNsWPH8P777+Pdd99VbZr8+BzIeRkaGnrf2yHrxcCOrNoPP/wAb29vdaGxt888Hbp06aIuRl999RXmzp2Lkq5ixYrZAlTpsZFeyfnz5+c5sCsoBRlMOzo6Ztt+06ZN4eDggDfeeAMbNmxA7969c7UtHx8f9ZPfCuPLRKtWrbBq1SpcunQJFSpUUPclJCSoHiPpyfvss89U4Cc9bdoXgv3796Nv3765eu+ybTmvJkyYgJEjR+rvl4Cyffv26N+/Pz788EOjILu4cnd3N/qbSMArqlWrZhFf/MiycCiWrNr169fVBSs9Pd3ofldXV7z55pvo2bOnui1DSQ8++KDRYx5//HE1dJuYmKi/Ty5UMtQk0tLSVFDYp08f1K9fX10AJIDauXOn/vEy3Na1a1d1cWvevLkaEoyOjlbDjHKfDEG2aNFCDZ2++uqrqqdNttmuXTs0adJEXYBv3bqVp/dua2uLWrVqISIiwuxjjhw5gtGjR6t9aNy4MZ5++mnVyylk2Klz587q33LxNjU0KsdVLuQffPCB/j4ZWpUhuaFDhxo9tl+/fqoHxHAo8m6vIcOBcrzr1aun/j6bNm1CXsk2RHh4uFHviQxZy99O/oayj6tXrzZ6fcMhOBnqlc/FxIkT1fHq1avXfb1/jfRYyhcN2UcJtCZNmoTY2Fij4yyfC/ksyWdSjsnChQvvGtgJCeQMhxxTUlLw8MMPq2Bv69at+jb5u0dFRakvBKbee1ayPxL4yPHIqlKlSmroWz7X2nwyCZZmz56tf5/dunVT29DOzaNHj6reMTnGGhnOlfcxatQo/XbOnz+PF154QU2tkL+bDA8bvkdteoL8HeVxsg9y7kmPfXx8PO6HHB/5G8oxkvcgvf4yFG1o27Zt6n553WbNmqnedK2HTt7bsmXL1GdQ9lGOMdG9YmBHVk2GkySwkYDrp59+Uv/BahcIucBIr4KQHgaZi6fNC5KLkAzbyUXw4MGD+u1t3rwZHTt21A9DSY+fDPXKcNTkyZPVf/wvvvii6hnRyOtLQDJjxgwVvHh5eennM8lcJrlf/vOXIcKBAweqi61s65VXXlG9S1988UWe378MQUpvnikSgD766KPq3xJgSnAi+yPHSo6TDDtpvS2yf6Z6XiR4lEDE8OImx02CYQkatZ4PGW6V3kNtuFiT02vIvsiFX46nBEEyvCgX6rzO3ZJjIbTjIZ8HuUhL7+2cOXPU31N6+1577TU1XG/O3r171b5JkCLB+P28fyF/908++QTDhg1T89+effZZLF++XH0GNBLoyedAgttvvvlGfXblbyb7YE758uVV8Ca9cBr5bNWuXVv1xMmXDBmWNRyGlV5NCfLv5tq1a/r3I38XUySwlS8N0i7nnHxpkPNk0KBB+vcwc+ZMFSQLCVifeuopFfhox1P+PhL4ffTRR2o7Z86cUYG4BG8SqMnfTO6X4DLrsLNst1y5cuoclf2Q+aZff/018kr+lvI6ck7KnF35rMpwusxV1PZXekfHjRun3ou8lnwRlM+dzKmT9yFt8n+NTBeQoV9Tnweiu+FQLFk1ubjIRUgumDJnRsjQrFzUHnvsMdVLI+Q/WyH/QUsPnFwM7ezsULlyZXXBk14Z+U9begu0wE4u1vIfvOGEcpmvJL1sMs9IG8KROV4yBCjDgVmHfySokyFi6QGQC1pkZKTqRfLw8FCPkQuv4YXZHLloyOto/5btSI+OXHwlKDBFhuKCgoJU8CTvVchxkV4hCSI+//xz1eOnBUMSEJgiF6cVK1ao4yGBmhxD6XmReUoSFEugIO9D5rVpvUEaCaTMvYa8Dwlcqlatqj+2MuQn29R6+czRjoWQni8JsmQOnwQ72sVU/p5ywZeLrUYCAQkcpAfI3HCtbFs+S9ocOQni8vr+hQQksl8S2EmgLL1L0qMsPbtCAoMlS5aoQF+bdC9/JwloJCCVz7h8pk2R3i4JNDWyHxJQadv45Zdf1BePsmXLqoBVehrd3NxwN1oSiux3bsgXou3bt2P69On64yo9bnJM5HMm52L16tVVUPvvv//ivffeU+91/fr1qj0wMFA9R4Ip+czI3Fg5f4T8PeWc/fjjj42SheSclvNOOw7Sk/bff/+pYDwvJNiW80n+FnKchPSsy/kvAebvv/+Ow4cPq8/D2LFj9fssnxMJBqW3UD7jElSbmi5AlFvssSOrJz0+ckGTQEaGoOSCIBmYWvKEkAuyBBVy8RFycZahNhlK0XoC5OLk6emphkiFbE++wd+8eVNdFOU/drnAa8NxhrTgxZAElYbz/vz8/FQgqQV1Qiaj3759+65/Q5m4LsGE/MgQkfRCyTCP9IJJj2JWcpGRYEeGorWgTsj7k8DV1KR7cyRAkG1ox056AiV4kOE4CYq1YyfBcW6TFoQEK1pQZxhE3O14yDCXdizkRwIr6VWRxBkJFLV9kGEx6Z2LiYlRAZhcuKUXz9Tfz5D8TQwTH+73/cv9ErxJQCmBi/xdZJ6b9oVBtic9XjJMLUGl9iO3pRfJcBgyKwloZIhV3qP2xUT2V3td+fxp+y2fYVOBpyna5zbrFAdz5PMkz9GCSo02/UH7vEmPoWTUSo+cfKalR93wOfI4+XxqQZ22LxIsylCuTGXQZA2c5G92P0Ox8n+C9LTJZ0r7G8h0DNkfeW0JxCXgky8g8v+M9NbJ/zuSpS5fAA33meh+sMeOCFDDn/KtXn5ESEiImgMkQ2ByEZUgQr7hy8Vd+09ceq4ko0/ukwu9/Cctw27aRU0uwNKzIL9dXFzUfCPp+TC1TpWpXhBT/9FLT01eyBxBrSdKen0kOJRASP5tigRHso8STGYl9+UmmDQ8tjKfSI6ZBJRyPCRokkBCLsRy8ZM26XG6F1mPhTbkd7dgQi6+hkNu0jsiF3VtCFxz8eJFNdQn+yYBhWSDykX4buuMZf1b3u/7l3l68p5+/vlnNWwow87ScyhBp7TJ8L4w14MovbPmSPAmpNdOAl7Zdy3gkc+ffLmQeXcS/EqPoxb03Y2cF/L3MJyvmJUEOnKuyGvKv+UcM/wSof2thOHnTb4EyfwzCZa03nHDbZr7zMrfzHBeopyThuRcuJ/14+TvIL3/hlmyhqRN/g+QTGDpBZfeQ/niKF+WpFdVllgyN2xNdC8Y2JHVkguezFmTHjuZ12NIeufkW7QM/cgFWC46EhjJhVWG0ORHegwkUJNeEenNkAugBHJCLiDSCyQXIMkOlKBALhwyl27t2rWF/l4lENCSA3JDAj+5yEhyiakLlPRK3QsJiuWCJsdJAimZYyS9LtKDKcGNXJCzXqQLirz+3Y6FBFIy1CcBnVyAJZiQIETmcGnBfWG+f+1LhwQ4Mg9Osk3li4f0DktgoCVYmPqCoH2ZMEWG/eQzeujQIfXeJNCT96yR4VDp2ZV9lNeR/c4NOV8kwJEvO7KfpgIW6X1cvHgxNm7cqIJfSQKSINcwuJNgUtueRuaeSVAnQbb0ekmvo3YMZDvmPrPadrRt5jc5Z6QXVoZdTdF6lCVYlvcuXwalN1Xej8wplPejJWsR3Q8OxZLVkm/xcrGWnhBtEruhs2fPqmETmWcmJBiQC6EEd3K/XORkiFaCNvmPWrYhc2q058o3eJkbJN/StZ4xGXK7lyGqoiK9YfL+JHNQLrYaCSxkHpI23Jy1h8UcCYq1+YEyhC3HXXqBZL6R9EBJIK3NOcoqt6+RnyTIkOFPGTKTv7vWC5vXv9/9vH/pyZEvGFrwIBd/mfcnQ30SpGhzM2WfZV+1H5kCIPPPtB49c2R4VeZ+SdCZtUdObkuvm3whkaDvXv4WMj9REo4koM1KgkiZmiCvLeehzBuU97NmzRqjx2lTF7TPm+yLDMXK30WCIfk8SnCnkakREiga9szJ51e+XMkxkaC6oMh7kLmFMqRv+HeQuXuSFCLHTpYWkgBegjrZFwlKtSQYLTvdXC86UW6xx46slvxHK4kDctGUnjuZnC5ztiRjVf4zlvlU0punDdHJf7gSuP3555/qgqdd7OUCLZPM5QKr9WTJXDgZypKLjzxOfqSnTpu8bZgVW1zJJHK5OEvPlQwVSQawDCHJRckw0BAylCjHTps0nlVwcLDqOZLJ7trkdBlmk+dIr4VhgkJWuX2N/CQXZ+nllM+ADNNKj5D0PmlzLu/173c/718CKsnglIBGPn8yH06+SEjvkPTySA+bzEV75513VOAjAbkEpZJ4I71E8ricyPYlkUb+vtqadRoJTOTzLwkLkmV6L2SYWObnSTa19AjKXDj5wiBBpLZ+pLYMjLwvOY/kNSQAlvclvYTSMynz6OTLkQyTSi+5DKG+/vrrar8k6JXsX1neReYUypQDCb7lC5XW4yqBpfS6S3BVkGQOpLyWLL0iGb4yHC3vX97D8OHD1b7IsZYePTl/5D75P0h6LSXI03ps5bMmvY4STEtPcX4vfk2Wj18NyKpJT4pkscmFV4IwCWRkrtPx48fVhTFraR8tO9ZwyQft34ZLE0gwIj17cjGS4FAuRPKNXP7jl+Ey6R0p7qQ3QS7A0qskx0QCB+lV0o6XkOBVLmQSsMhSFBIcmKMdO+nZyHrschqGvJfXyE/y95P3K/PhJICQ4ETm5kkPbV7+fnl9/7K8jAQ8ErBIwCDz/iQglOVwtGFTyeiVYyRBgkwBkM+yBFbymLv1skkvl5CeaW2hYo08V4IROeYyLHuvJHCTQEaCNdlvSdaRoWyZ+iBfcrQ5dFoGr7xX6dWS80567+RzJ4GbkJ51Ce7lWGhftiSBRIJP2bb0TErmrDxOAnNZOkiGgeUclIA8t4kfeSVBq3wRkN5FmZsrn1WpriGBvOyLkIBV/jbSoyjvTQJR2W/5O8nnSgsQ5UuFBH/yJZLoXtlksNowERERkUVgjx0RERGRhWBgR0RERGQhGNgRERERWQgGdkREREQWgoEdERERkYVgYEdERERkIaxmgWJZKV5WaZc1xFiPj4iIiEoKWZkuLi5OLVh9t+okVhPYSVCnLRBKREREVNJIRRKphpMTqwnstOLYclBkJXsiIiKikkCqlUjnlBbL5MRqAjtt+FWCOgZ2REREVNLkZioZkyeIiIiILAQDOyIiIiILwcCOiIiIyEIwsCMiIiKyEAzsiIiIiCwEAzsiIiIiC8HAjoiIiMhCMLAjIiIishAM7IiIiIgsBAM7IiIA3bt3R2RkpP5YzJkzB9988022mtPyuKxGjx6N/fv38zgSUZGzmpJiRESmrFixAidOnICDgwPWr1+PCxcuICwsDD4+PrC1tcULL7yA9957D99//726Tx73+eefo0KFCihTpgxWr16N5ORk7N27F0uXLsXUqVN5oImoyLDHjoisWv369eHs7IzTp09j165d6Nq1K3r27Int27dj8+bN6NKlCxwdHdGhQwccPHhQPS4jIwMNGzZElSpV1M+BAwewdetWk715RESFiYEdEVm1oKAgHD16FM8//7z6Lbft7OzU70qVKiElJQVubm6oXLkyQkJC1OMkkJP2wMBAnDt3DiNGjFC9fGXLli3qt0NEVo5DsURk1WxsbDBgwADV21a7dm14eHigWrVqePvtt9VQbEJCgnqcBHcTJkxAx44d1fCrBH9CevJatWqFdu3awc/Pr4jfDRFZO5sMGVOwArGxsWjSpAn27dsHd3f3ot4dIiIionyPYTgUS0RERGQhGNgRERERWQgGdkREREQWgoEdERERkYVgYEdERERkIRjYEREREVkIBnZEREREFoILFFsYWZYwMTGxqHeDiIjorqScnywSTvmHgZ2FBXWjR4/G4cOHi3pXiIiI7qpBgwb49ttvGdzlIw7FWhDpqWNQR0REJcWhQ4c4ypTP2GNnodatWwcXF5ei3g0iIqJspAZzt27deGQKAAM7CyVBHQM7IiIi68KhWCIiIiILwcCOiIiIyEIwsCMiIiKyEJxjZ2HrAUnquPZvIiKi4ojXq4LDwM6CyCKPsh6Q9m8iIqLiiNergsPAzsIwoCMiopKA16uCwTl2RERERBaCgR0RERGRhWBgR0RERGQhijSw++eff1CjRg2jnxdeeMHkY7dv344+ffqorM/HHnsMly5dKvT9JSIiIirOijR54syZM+jYsSMmT56sv8/JySnb4yIiIvDss8/i+eefR9u2bTF79myMGzcOK1as4ORLIiIiouIQ2IWGhiI4OBj+/v45Pm7p0qWoW7cunnji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" }, "metadata": {}, "output_type": "display_data", "jetTransient": { "display_id": null } } ], "execution_count": 4 }, { "cell_type": "markdown", "source": [ "## Pairwise Mann-Whitney U\n", "\n", "This is a non-parametric test used to determine if statistically significant differences occur between two independent groups. Unlike the pairise Wilcoxon tests (above), the measures for the Mann-Whitney U tests are not paired and there is less restrictions on the input data format.\n", "\n", "Both the pairwise Mann-Whitney U and pairwise Wilcoxon tests and perform tests for both groups and subgroups within each group. The usage with subgroups will be demoed with the Seaborn tips dataset. " ], "metadata": { "collapsed": false }, "id": "c77ee60efc22bf2a" }, { "cell_type": "code", "source": [ "tips = sns.load_dataset(\"tips\")\n", "\n", "# Initialize class\n", "tips_stats = Stats(tips)\n", "tips_plot = Plots(tips)\n", "\n", "tips_stats.show(100)" ], "metadata": { "collapsed": false, "ExecuteTime": { "end_time": "2026-05-21T04:13:08.483857Z", "start_time": "2026-05-21T04:13:08.459946Z" } }, "id": "f6b07b71d4059429", "outputs": [ { "data": { "text/plain": [ " total_bill tip sex smoker day time size\n", "0 16.99 1.01 Female No Sun Dinner 2\n", "1 10.34 1.66 Male No Sun Dinner 3\n", "2 21.01 3.50 Male No Sun Dinner 3\n", "3 23.68 3.31 Male No Sun Dinner 2\n", "4 24.59 3.61 Female No Sun Dinner 4\n", ".. ... ... ... ... ... ... ...\n", "95 40.17 4.73 Male Yes Fri Dinner 4\n", "96 27.28 4.00 Male Yes Fri Dinner 2\n", "97 12.03 1.50 Male Yes Fri Dinner 2\n", "98 21.01 3.00 Male Yes Fri Dinner 2\n", "99 12.46 1.50 Male No Fri Dinner 2\n", "\n", "[100 rows x 7 columns]" ], "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
total_billtipsexsmokerdaytimesize
016.991.01FemaleNoSunDinner2
110.341.66MaleNoSunDinner3
221.013.50MaleNoSunDinner3
323.683.31MaleNoSunDinner2
424.593.61FemaleNoSunDinner4
........................
9540.174.73MaleYesFriDinner4
9627.284.00MaleYesFriDinner2
9712.031.50MaleYesFriDinner2
9821.013.00MaleYesFriDinner2
9912.461.50MaleNoFriDinner2
\n", "

100 rows × 7 columns

\n", "
" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "execution_count": 5 }, { "cell_type": "markdown", "source": "Pairwise Mann-Whitney U tests are again called using the \"get_X\" format, where X is the name of a specific test. Additional parameters include the \"subgroup_col\". ", "metadata": { "collapsed": false }, "id": "539078a475d97811" }, { "cell_type": "code", "source": "tips_stats.get_mannu(value_col='total_bill', group_col='time', subgroup_col='sex')", "metadata": { "collapsed": false, "ExecuteTime": { "end_time": "2026-05-21T04:13:08.557178Z", "start_time": "2026-05-21T04:13:08.523867Z" } }, "id": "bf9947e706b2088b", "outputs": [ { "data": { "text/plain": [ " A B U-val p-val significance RBC \\\n", "0 (Dinner, Female) (Dinner, Male) 2849.5 0.225232 n.s. -0.116160 \n", "1 (Dinner, Female) (Lunch, Male) 943.0 0.446076 n.s. 0.099068 \n", "2 (Dinner, Female) (Lunch, Female) 1166.5 0.026695 * 0.281868 \n", "3 (Dinner, Male) (Lunch, Male) 2483.5 0.059743 n.s. 0.213832 \n", "4 (Dinner, Male) (Lunch, Female) 2994.5 0.000614 *** 0.379954 \n", "5 (Lunch, Male) (Lunch, Female) 679.5 0.212925 n.s. 0.176623 \n", "\n", " CLES \n", "0 0.441920 \n", "1 0.549534 \n", "2 0.640934 \n", "3 0.606916 \n", "4 0.689977 \n", "5 0.588312 " ], "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
ABU-valp-valsignificanceRBCCLES
0(Dinner, Female)(Dinner, Male)2849.50.225232n.s.-0.1161600.441920
1(Dinner, Female)(Lunch, Male)943.00.446076n.s.0.0990680.549534
2(Dinner, Female)(Lunch, Female)1166.50.026695*0.2818680.640934
3(Dinner, Male)(Lunch, Male)2483.50.059743n.s.0.2138320.606916
4(Dinner, Male)(Lunch, Female)2994.50.000614***0.3799540.689977
5(Lunch, Male)(Lunch, Female)679.50.212925n.s.0.1766230.588312
\n", "
" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "execution_count": 6 }, { "cell_type": "markdown", "source": [ "The inclusion of the subgroup will have an impact on the final plot. In this case, the subgroups will be color coded and a figure legend will be included. The figure legend will be drawn and placed in a default location. If this interferes with the plot, it can be moved using plt.legend(). \n", "\n", "For readability, groups that have no significance will not be annotated. " ], "metadata": { "collapsed": false }, "id": "1da370ed9f932406" }, { "cell_type": "code", "source": [ "title = \"Pairwise Mann-Whitney U Test\"\n", "\n", "pairs = [\n", " (('Dinner', 'Female'), ('Lunch', 'Female')),\n", " (('Dinner', 'Male'), ('Lunch', 'Female')),\n", "]\n", "\n", "tips_plot.barplot(test='mannu', value_col='total_bill', group_col='time', subgroup_col='sex', pairs=pairs,\n", " title=title, fontsize=30)\n", "plt.legend(loc='upper left', bbox_to_anchor=(1.03, 1))" ], "metadata": { "collapsed": false, "ExecuteTime": { "end_time": "2026-05-21T04:13:09.140961Z", "start_time": "2026-05-21T04:13:09.023821Z" } }, "id": "27cb317ba1dc7c0c", "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" }, { "data": { "text/plain": [ "
" ], "image/png": "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" }, "metadata": {}, "output_type": "display_data", "jetTransient": { "display_id": null } } ], "execution_count": 7 }, { "cell_type": "markdown", "source": [ "As a reminder, the plots in py50 come with a lot of different methods for modification. In the figure above, Dinner is listed first. That is weird. I usually eat Lunch before Dinner? We can quickly modify this by including the **group_order** parameter. \n", "\n", "Changing the group orders will also modify the layout order for the significant figures. The significant figures can also be modified if users dislike the asterisk and prefer a more verbose description. This is done using the pvalue_order. The order of the pvalue_order parameter will follow the order of appearance in the statistics DataFrame. " ], "metadata": { "collapsed": false }, "id": "448775816331208b" }, { "cell_type": "code", "source": [ "title = \"Pairwise Mann-Whitney U Test with Group Order and Verbose Pvalue\"\n", "\n", "meal_order = ['Lunch', 'Dinner']\n", "pvalue_order = ['p ≤ 0.05', 'p ≤ 0.001']\n", "\n", "tips_plot.barplot(test='mannu', value_col='total_bill', group_col='time', subgroup_col='sex', pairs=pairs,\n", " group_order=meal_order, pvalue_order=pvalue_order, title=title)\n", "plt.legend(loc='upper right', bbox_to_anchor=(1.22, 1))" ], "metadata": { "collapsed": false, "ExecuteTime": { "end_time": "2026-05-21T04:13:09.284118Z", "start_time": "2026-05-21T04:13:09.155264Z" } }, "id": "a59cfb4355dd0d84", "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" }, { "data": { "text/plain": [ "
" ], "image/png": "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Hm/RooUbjVDnS2pwk5NPPtluuukmu/32223JkiUumz766KOuU0bvpU6ZF154wXXEqDz74osvdp3N4cyePdvl1z/++MMOPvhgu+OOO9zn7am4Dd1YqVIlNzOrVatmF110kZtJ6o264oor7NBDD3UbuldffdXOPPNM19P+8MMPuxAPALGmNqlq1aq2atUqW7BggetEOP300+3zzz93I1apnE9leCeddJIr79Pz1Mi3bduWHwsAYmjGjBn22muvudz4/PPPuzHkr7rqqsBQlaKgfv/997sg/s4779gll1zibgrbW7ZssSeeeMI9Tx3F06dPt/vuu8/eeust69+/vz3++OP23XffFfjcDz74wA10ogFRdLHP9u3bu0y7Y8eO8n2CqfZaChvBRRu/4Hp2AIiXRo0auTI9nUQ0Z84c97cadP2rUK6NwF577eUuHf3999+752kUq7I+6QgAEtVdd91lw4cPz3ffZ599ZlOnTnWPHXXUUe6+e++9144//nj79NNP3Ymp0qtXLzvssMPc/3WBTrXd6oCRU0891R1Jlf3228+NUqiLdooC/fjx412HjHrgg+lzNdiJBkiRG2+80XXm6MisOqPL/WgwAOBnGkpW5SyqWW/durWrldQJ8TrEqTKYzMxM9zwFdpX1qbF+88033RFEAED0DRw40AXrYLm5ubZp0yZX1qK22aNyGI0q6FGJokdHTRs0aJDvb++6PUcffbQrjVEv/Zo1a2z58uWuo0afE0qPq5z7kUceCdynUQ6DP7e0COsAEIHTTjvN/ev1zDRv3rzAc6pUqRJ4PHSUAgBA9NSpU8cd3Qz2n//8x/2rUmr1lgerVatW4P+hHSnBwT7Yiy++aCNHjrQLLrjA7RgMHjzYlbaEoyuR6jxMrxfeo2sElduadQAAACBaatas6UK8V6aom0pZ1OO9bt26Er+fTlJVnbpCePfu3W3vvfe233//3ZU/htLOgXr1vc/VbdKkSe48pj1FWAcAAECF0KtXLzfai074VAmKyhV1sc3SDP+tcP7FF1+4oK/zllReo3OUvDKZYLowp05G1UmpP/30k9tBUDlks2bN9vg7UQYDAACAAmOgl8fP6NOnj/31119uuEZdZFNDKGoo8OAymEipR123c845x/XY6yRUjWKo2vVQKn3UBT810oz+1XlNEydOtMaNG+/xd0rKC9eXXwHoB9KwOYsWLYpKvRAAAEBFyTQ66VI9xirf0EmV5e0KpuVdUfM/VOLNHQAAABQqluE5EYN6STGHAAAAAJ8irAMAAAA+xQmmKJZOa1BtFQAAJaFaXF1UDEDpEdZRbFDXmdVLly5lTgEASkSXdNdl2AnsQOlRBoMiqUedoA4AKA1dqp0js8CeoWcdEXvnnXfc+KIAABQlMzPTXZ4dwJ4jrCNiCuqEdQAAgNihDAYAAADwKcI6AAAAyo0WLVq428aNGws89txzz7nHHn/88Yjeq3PnzjZnzhzzM8I6AAAAAvJyc3z/WZUrV7YPPvigwP3vvfdehRt9iJp1AAAABCQlV7Ktc26z3VvXlulcqVy3qdXtcX+pXnvEEUe4sH755ZcH7svIyLBvv/3WWrdubRUJYR3FXtBC4+R6/wcAoDhsO8o/BfXdm5abX5188sn2wAMPuICelpbm7vvoo49ciNdoRJ6srCx7+OGH7Y033rBt27ZZvXr1rF+/fnbRRReFvbbMhAkTXCmNhhzVe915551Wv359iyfKYFAkHUrSBS24qAUAIFJsO1DWmjdv7oL3J598Erjv3XfftS5duuR73pQpU1yIVw37W2+9Zd27d7fhw4fb1q1bC7znjBkz7LXXXnPh/vnnn7c6derYVVddZbt3747rD0pYR0SNbkWr/wIAlC22HYhF7/oH/1e3rh70zz77zN0XrGXLlnbfffdZ27ZtrWHDhnbttde68L1+/foC76eOyX/961921FFHWbNmzezee++1HTt22KeffhrXH5MyGAAAAJQ7J598sg0cONCys7Ptiy++cL3t6g0Ppp52hfj777/f1q5da99//727Pycn/4mtf/31l23atMluuukmS07+X1+2ymHCBftYIqwDAACg3Gnfvr37d9GiRW4UmFNOOaXAcx599FF78cUXrUePHq4E5q677nLDNYbywvtjjz1mTZo0yfdYrVq1LJ4ogwEAAEC5k5KSYh07dnSlMB9++GGBenWZPXu2DRs2zAYNGmTdunULnHyqk0mD1axZ0/XKb9myxRo1auRu++23n40ePdrWrVtn8URYBwAAQLkthXnxxRdd0FZNeqjatWu7IP/zzz/b119/7WrSvRr3UL169bIxY8a48K/SlzvuuMO++eYba9q0qcUTZTAAAAAoMAZ6efiM448/3tWsh+tVl5EjR9rdd99tZ5xxhhs9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ACpiWNcFi7Zt21bgfvWq165dO1rTBQAogoL6il8KtsXlXVJ2lv13OIP/WrVxu+WlVLxraDROrxnvSQBQkcL6woULA/8/66yzbPDgwTZgwAA75JBDrFKlSm6oxTFjxlivXr3KcloBAACAhBJRWO/Zs2eB++65554C9z3wwAMEdgAAACCWYX3FihUlfuNFixa5nneNFAMAAACg5MpsOIFrrrnGNm/eXFZvDwAAAFR4ZRbWNaQjAAAAgNJjoF4AAADApwjrAAAAgE8R1gEAAACfIqwDAAAAPkVYBwAAABItrDdp0sQqV65cVm8PRF1ebg5ztQLgdwQAJNxFkebOnRvxG3bv3t39O2fOnNJPFRAHScmVbOuc22z31rUVbv7/lZWb7+9NT/eyvVIr3oG1ynWbWt0e98d7MgAAiG1YHzt2bERvlpSUFAjrQHmkoL5703KraLKzk8ws/X9///aD7U7hWggAAFSIsP7BBx+U/ZQAAAAAKHlYD7Vt2zZbt26d5ebmBq5WmpWVZd9//7317du3NG8JAAAAYE/D+gsvvGD33nuvZWdnu7IXBXXR/w899FDCOgAAABAlJT7DbNKkSXbttdfa0qVLrU6dOvbhhx/a66+/bq1atbJTTjklWtMFAAAAJLwSh/XffvvNnUSamppqbdq0scWLF9uBBx5oQ4cOtRdffDHhZygAAAAQt7C+zz77uJp1adq0qS1f/t+RM+rVq2ebN2+O2oQBAAAAia7EYf3000+3wYMH2zfffGMnnHCCG0/97bfftvHjx9sBBxxQNlMJAAAAJKASn2A6aNAgq1Gjhv3xxx928skn23nnnWd33XWX1a5d20aNGlU2UwkAAAAkoBKHddWo9+vXzypXruz+vummm9xNQzd+8sknZTGNAAAAQEIqcRnMFVdcYX/++WeB+1evXm0333xztKYLAAAASHgR9azPmjXLja3ujat+3HHHhX3esccem/AzFAAAAIhpWL/00kvtoIMOclcsvfLKK23s2LFWq1atwOMK8dWqVbPmzZtHbcIAAACARBdxzfqRRx7p/n3//fetfv36LqBnZGRYTk5OvuAOAAAAIE4nmDZo0MCmT59uU6dOta1btwbGXr/kkktswIABUZosAAAAACUO6xpPfcaMGXbDDTdYu3btXGmMxlwfN26cu6pp3759masAAABAPML6Cy+8YPfdd591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AUA0UAaDCu3xxx+3nj17FjiMPWfOHPd/PTZx4kTr06ePHXrooda1a9d8h7N///13u/HGG+3www+34447zh555BF32WePLtbVpUsXO+yww+zaa691vWwAEs9FF11kP/zwg/3444/5ymDU3sycOdMuvPBCdwXuc845x5YtW5avnO6dd95x7YgeVw/99u3bA+/79ddfW48ePVz7dNZZZ9nbb78deOy2225zt7PPPtuOOeYYW79+fRy+OYCyRlhHwps0aZKdccYZ9vrrr7sa1GHDhrnD29K/f3/XYzZjxgwbM2aMC/na8HpeeeUVF+CfeeYZ++677+yJJ55I+PkJJKJmzZq5f1evXh2206Bv3742b9481ys/YsSIAm2Q2hG1M//+97/tqaeecver7VF4V1hXj/3VV1/twrkCvOfVV191HQq6TkTjxo3L/HsCiD3KYJDwOnbs6DaG8s9//tP1fGkj+ccff9i3337res8bNmzoHtcVdf/+++/APLv11ltdj5ecfvrptmLFioSfn0AiUgiXv/76q8Bj5557rus5l969e9sNN9yQ7/GBAwcG2hH1niuwizoGVAN/+eWXu78bNWpky5cvt+nTp9sRRxzh7lNvvHrvAVRchHUkvODeqLS0NPdvdna2rVu3zmrXrh0I6uJtcL1RYA444IB8G+tdu3Yl/PwEElFGRka+NqSoNmb37t35HlcID/f42rVr7cMPP3Qjznj0WJMmTQJ/N2jQIMrfBIDfENZRoSUlJRW4T0E8WOXKlQs8R3Xp4e4PlZxMJRkAs5UrV7rZcNBBBxWYHcW1JYU9rrZKPe06HyZYSsr/Nt1VqlRh9gMVHEkDFZo2gsGHpfX/bdu2RfRa9XbpRK9ff/01cJ9q06+77roymVYA5dfLL79sbdq0yXckbk+pB10nrKot8m7vv/++q18HkDgI66gQli5dap988km+W2ZmpqvnVB35m2++6cpa7rzzzoh7w9VDdvTRR9vtt9/ues00usOUKVPcqDAAEteff/7pzmv57bffXNtw33332RtvvOFO/oymSy+91I0c8+ijj7qRXhTSdSJq/fr1o/o5APyNMhhUCA899FCB+zQcmoYz69WrVyCk6+QubWAjNXr0aLvnnnvcsGyqJdW/2oD+8ssvUf4GAMqLkSNHupvK7PbZZx9r3bq1Pf3004GTPqNF9egaKUbt27Rp09yY7t5QjQASR1Je8KDRAAAAAHyDMhgAAADApwjrAAAAgE8R1gEAAACfIqwDAAAAPkVYBwAAAHyKsA4AAAD4FGEdAAAA8CnCOgAAAOBThHUACLF8+XL75ptvbMGCBdaiRQvmDwAgbgjrABCif//+tn79emvXrp3Nnz+f+QMAiBvCOgAUIjU11dLT05k/AIC4IawDQJCePXvaL7/8YkOGDLHOnTsHymA2bNjg/v/RRx+5+9XrPmLECPvhhx+sR48e1rZtW+vXr59lZGQE3mv27NmB5+p9V65cybwGAJQIYR0Agjz++OP2j3/8w4YOHepuoaZMmWITJkyw4cOH27PPPmsDBgywW265xaZNm2aLFy+2l156yT3vgw8+sHHjxtmwYcPslVdesfbt29sVV1xhO3bsYH4DACJGWAeAILVr17ZKlSpZjRo13C3UddddZy1btrQzzzzT6tSpY2eccYYdd9xxLowfc8wxtnbtWve8qVOnup72Tp06WePGje3GG2+0Bg0a2Lx585jfAICIpUT+VABAw4YNAzOhatWqLoAH/52VleX+v2bNGhs9erQ98sgjgcd37drlTlwFACBShHUAKAH1ugdLTg5/gDInJ8eV0ai3PVhaWhrzGwAQMcpgAKAMNGnSxDZt2mSNGjUK3CZNmuTq2gEAiBRhHQBCVK9e3dWe78nJoL1797bp06fb3Llz7aeffnIlMW+++aY1a9aM+Q0AiBhlMAAQ4pJLLrGHHnrIXnjhhVLPm27dutnWrVtt7Nix7t8DDzzQJk6c6E42BQAgUkl5eXl5ET8bAAAAQMxQBgMAAAD4FGEdAAAA8CnCOgAAAOBThHUAAADApwjrAAAAgE8R1gEAAACfIqwDAAAAPkVYBwAAAHyKsA4AAAD4FGEdAAAA8CnCOgAAAOBThHUAAADA/On/AxL6Z2IwKUw6AAAAAElFTkSuQmCC" }, "metadata": {}, "output_type": "display_data", "jetTransient": { "display_id": null } } ], "execution_count": 8 }, { "cell_type": "markdown", "source": [ "## Friedman Test\n", "The Friedman test is a non-parametric test for repeated measures. The dataset must be in long format, i.e. each row represents a measurement. This requires both the group_col and the subgroup_col. \n", "\n", "For ease of use, the tips dataset will continue to be used. " ], "metadata": { "collapsed": false }, "id": "20b06999d5e54bfc" }, { "cell_type": "code", "source": "tips_stats.get_friedman(value_col='total_bill', group_col='sex', subgroup_col='day')", "metadata": { "collapsed": false, "ExecuteTime": { "end_time": "2026-05-21T04:13:09.346337Z", "start_time": "2026-05-21T04:13:09.310537Z" } }, "id": "e7ac4dfd531d7700", "outputs": [ { "data": { "text/plain": [ " Source W ddof1 Q p_unc significance\n", "Friedman sex 1.0 1 4.0 0.0455 *" ], "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
SourceWddof1Qp_uncsignificance
Friedmansex1.014.00.0455*
\n", "
" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "execution_count": 9 }, { "cell_type": "markdown", "source": [ "The Friedman test suggest there is a difference between the sex column. Post-hoc tests can be performed using the get_pairwise_tests(). As the Friedman Test is non-parametric, the parametric argument must be set to False. The results can be plotted as shown in previous examples. " ], "metadata": { "collapsed": false }, "id": "1f34ad484fccb8cd" }, { "cell_type": "code", "source": "tips_stats.get_pairwise_tests(value_col='total_bill', group_col='sex', parametric=False)", "metadata": { "collapsed": false, "ExecuteTime": { "end_time": "2026-05-21T04:13:09.431571Z", "start_time": "2026-05-21T04:13:09.407893Z" } }, "id": "19ce4849232bedac", "outputs": [ { "data": { "text/plain": [ " Contrast A B Paired Parametric U_val alternative p_unc \\\n", "0 sex Female Male False False 5613.5 two-sided 0.02135 \n", "\n", " hedges significance \n", "0 -0.303494 * " ], "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
ContrastABPairedParametricU_valalternativep_unchedgessignificance
0sexFemaleMaleFalseFalse5613.5two-sided0.02135-0.303494*
\n", "
" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "execution_count": 10 }, { "cell_type": "code", "source": [ "title = \"Non-Parametric Pairwise Tests\"\n", "tips_plot.boxplot(value_col='total_bill', group_col='sex', test='pairwise-nonparametric', palette='Greens',\n", " title=title, fontsize=30, orient='h')" ], "metadata": { "collapsed": false, "ExecuteTime": { "end_time": "2026-05-21T04:13:09.970215Z", "start_time": "2026-05-21T04:13:09.893167Z" } }, "id": "21ac76f065a37a8b", "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" }, { "data": { "text/plain": [ "
" ], "image/png": "iVBORw0KGgoAAAANSUhEUgAAAnYAAAHWCAYAAAD6oMSKAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjksIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvJkbTWQAAAAlwSFlzAAAPYQAAD2EBqD+naQAAMMhJREFUeJzt3Qe4VNW5P+AFIogNO5bYewsWYom9xIIa+zUaC5ao1xZ77A0VY+8VDcYeAxq9lsQae+811mjk2hWDDRX+z7dy9/nPORyQA6fN4n2fZ55h9gyz96zZZ/ZvvrXWni6jR48enQAAqHtdO3oDAABoHYIdAEAhBDsAgEIIdgAAhRDsAAAKIdgBABRCsAMAKIRgBwBQCMEOYAI5v3vZvL/UI8EO6th2222XFltssfT88883e/+aa66ZDjnkkHbdnoUXXrjRZYkllkirr756OvbYY9Pw4cNTCb744ot08MEHpyeeeGKcj/vXv/6V22Do0KETvK74v03bdNFFF00/+9nP0k477ZSefPLJFj1fa2zT2N77uLSl2J+btkXTyznnnNNu7y90Rt06egOAifPDDz+kQw89NB+ou3fv3uHNGUHz6KOPbrj93XffpRdffDGdfvrp6eWXX07XXHNN6tKlS6pn8Tr+8pe/pM0333ycj5tlllnSddddl+aaa66JXue5556bZp555vzvUaNGpY8//jidd955aYcddkh//vOf0yKLLDJez9Oa21Sr9j1vK9EGI0eObLi911575f1tjz32aFg266yzttv7C52RYAd1bppppkmvvfZaPsjvt99+Hb05aeqpp05LLbVUo2VRXfryyy/T2WefnZ599tkx7i9VBO3Weq1RpfvJT37SaFmEml/84hfp6quvTscdd1y7b1OtBRZYILW1eL1NX8sMM8wwyexPMD50xUKdiwP+JptskgYNGpReeOGFH63uXXXVVWmjjTZKP/3pT3MX6amnnpq+/fbbhsdE123//v3TkCFD0rrrrpu7UjfeeON03333TdR2xvOEYcOGNWzLxRdfnDbccMO8LXFw/tWvfpUeeeSRhv8T3WoRXKJSs9xyy6WVV145d+d+88036bTTTkvrrLNOft5lllkm7bjjjrnSUvs6dt5551ydWnvttfM64vnfeuutdM899+Q26NOnT9pyyy0b/b8QXXDbbrttvj/W+7vf/S59+umn+b5HH300bb/99vnfcV11P8b1gQcemPbZZ5/8WmJ7muv2fPPNN3OlKZ43Au9uu+2W3njjjQlq0wh6008/fUObhscffzy/7njuaJvovox2jCpfaLpNcR2B6frrr08rrbRS3q7Yvl/+8peN1hWVwXi+aPvKCSeckPeR5rpiH3zwwfRf//Vfaemll87b8t///d9jvM4777wzbbbZZmnJJZfM6z7++OPTV199lSZWvJYNNtigYRhAvP7Y3yrxXh5wwAF5nbHu2L9vvPHGcb6/77zzTtp9993T8ssvn/eLrbbaKv3973+f6G2F1ibYQQEOO+ywfICPLtnarqqmjjrqqDRw4MAcdC644IL061//Ol155ZW5K6t2oHgExEsvvTSHlKgETjbZZGnvvfeeqDFyEajCnHPOma8jUJ5//vn5ABmhdMCAAenzzz9Pv/3tb9PXX3/d8P8itMQB9Iwzzsivr1evXnn8UwTPXXfdNV122WV5eVQt42Bd+zqefvrp/Poi5MXrjmAR/yf+HYEquof/93//Nwey2mAUwXaKKaZIZ555Zm7bxx57LB/kI9QsvvjiuR2r9qztgrztttvSVFNNldt2l112GaMNPvjgg/x633777XTMMcekU045JXepRmiK195Sn332Wb5U3aqvvPJK3vbpppsut1dsR9++fXMwjm0bmwg90Y4R1KItV1tttfSPf/wjffLJJ/n+CP7RltGt/swzzzT8vwj7a6yxxhjP9+677+Z9KoJVbEM8b7z/0fZVwLz55pvTnnvumeabb768j0WYvOmmm8bYF1vqoosuSkceeWRaccUV04UXXpj38UsuuSQvqxx00EF5X4hxn3FfBNsI7/Glorn3N7Y59pfYL08++eS830YbR1j95z//OcHbCm1BVywUIMJOdMXFgWZsXbKvv/56HosV4ScOsCEqFjHmKoJSHKTjgB7+/e9/50pOFRimnHLKXMGKA19VoRmbOCh///33DbcjDEYwigN8VG+qyt2HH36Yt7O2ytOjR48cIF999dWG7rV4rjjoRkAJEVyjW/eII45I/fr1y8uiyjRixIh00kkn5aBUjUWLx0U4m3/++fPt2I5rr702DR48OB/4QxyYf//73+cB89NOO22uBM4777w5IESgDVGhiQpQhMkIClW3Y1zXdkFOPvnkOSxUYx2jOlYr1hvb/4c//KFhG2Ns3NZb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TJNmnnnmjt4MAMbiwgsvTEOGDMkhpHL++ec3esx0002Xrz///POGZbPOOmvafffd06qrrjrJtO19992X2+v999//0XZoyWOh7sfYjR49Op133nlp5ZVXTn379s07enxTrCy88MLptttuS+uvv37q06dP2n///dO7776btt9++3x7m222SR988EHDc8UfT3T9LrHEEvk5zz333LGu+9prr82PXXrppXM3bXwrBZgUxWfnn/70pzTttNOmAw44IF9qe1Y222yztMsuu+RAF5edd9453XLLLfkzdt55503HHntsDjCTgnid8XrjdcfrH1c7tOSxUESwu/LKK9PNN9+cTjvttHTdddflEvVOO+2Uvvvuu4bHnH322emkk05KF110Ufrb3/6Wtt5663yJYPbRRx+lSy65JD/uxhtvTJdffnk64YQT0u2335723HPPdM4556QXX3xxjPXefffd+Y/ryCOPTDfccENadtllc1gcPnx4u75+gM7Q/RqVuumnnz5/Dq+33nrpqquuSiuuuGL+fI7l8fka/45lK6ywQrr11ltT9+7d02KLLZYGDBiQl8VndG21r0Tx+iIEx+uN1x2vv2fPns22Q0seS+sbPXp0+vrrr8frEo+tNx3eFXv00UfnHbnWgw8+mAYNGpTvW3755fOy4447Llfa7r///lxNC/3798/VubDooovmbzpRwQvrrLNOeuWVV/K/Z5tttjRw4MD8wRMi/EU18LXXXkuLL754o3XHenfbbbe0xhpr5Nv77rtv/uYUY0uieje2D7+4VEaMGJHayjvvvNNmzz0p067a0b43pvjci3ARX6q7deuWnnnmmdxteMQRR+TwtuOOO6bTTz89947El+E4CMYktBgzttRSS6WuXbvm3pPaZaWK11e1TbzuWk3bIYzvY0tus44wevToXFV+7rnnxuvxkTEiF3Tp0iXViw4Pdvvss08OYbVGjRqVd/r99tuv0U7/zTffpLfffrvh9pxzztnw7ymmmCLNMcccjW5XYSu+/Tz77LO5+vfGG2+kl19+OVf0Yj1Nxf2nnHJK/rCqfPvtt43W21R8sxpX125rOvHEE9tlPTAh7J9lqYa/VF+KY4B/iC/R1WdrJZZV1Y3qcbWPrV1WoqZt01Rz7dCSx9J6urQgpEV2iOwRFdV60eHBLrpY55577kbLvvjii3x91llnjbHj9+rVq+HfTWcONf3mU7n++uvzAWfLLbfMIfJ3v/td7l5tTnw7jZm61QdZZeqppx7ra4gKX3xzra3YrbbaaqktxLbNNddcbfLck3rFTiiZePbPsva9mP0aHn744TwLNj6vw1tvvZW7DR955JGGx8ayKthVj6uWN11WoqZt01Rz7dCSx9J6oW7QoEE5rI1LdMM2LTrViw4Pds2JQbqxQ0dVbfXVV8/LovoWEySihBqTGloizokX4+pigG8VHOObUHN95xEko1pYGzYPPfTQtPbaa6e11lqr2eePLom4tIcIdQsttFC7rAtayv5Zll/+8pe5R+Kyyy5L6667bj4VR8zajHF2MVTmD3/4Q/5CHWc2iGXxmRpDX6pTn0SvyNVXX91oWalq2yaGF9UWGpprh5Y8ltYPdz3rqAJXzOSJGD935pln5skM0Q0aYxGeeuqpNN9887X4uWKAb3zjjG9BL7zwQu7ijUkYtePiKlF5i4kWMSA4vklHt2zMvp1//vlb6ZUB1If4wrr55punzz77LG211Vb5szDGf8Xn6UYbbZSXb7LJJmnDDTfMy6KCF+cljeErMTktxt3FsujVKP3cbPH64uwN8Xrjdcfr/+qrr5pth5Y8Foqo2IWozH355ZfpqKOOyl2bcZqSSy+9tFFXbEu6h+Ky8cYb50pgTLCItB5j7ZqKD6WPP/44z7iN6wUWWCBdcMEFaZ555mmlVwZQPyKAhJgdWzv2uDpDwdChQxudxy4+p+MSouoUlb1J5Zxs8Trj9caM19pfMmquHVryWKibYBfVuLGJbypRWYtLc5qeW+6KK65odLv2DyWqbTFVf2ya/t8Yfze2MXgAk2K4i5mxfnnix0UgW2mllcbr1yRa8lio+4odAJ2rW3aLLbZotKy5U3E4Pcd/ChPj2w4teSzU9Rg7AABaRrADACiEYAcAUAjBDgCgEIIdAEAhBDsAgEIIdgAAhRDsAAAKIdgBABRCsAMAKIRgBwBQCMEOAKAQgh0AQCEEOwCAQgh2AACFEOwAAAoh2AEAFEKwAwAohGAHAFAIwQ4AoBCCHQBAIQQ7AIBCCHYAAIUQ7AAACiHYAQAUQrADACiEYAcAUAjBDgCgEIIdAEAhBDsAgEIIdgAAhRDsAAAKIdjViamnnjp17do1XwPl8LcNtKZurfpstJnZZ589DRkyJPXq1UsrQ0H8bQOtScWujgh1UCZ/20BrEewAAAoh2AEAFEKwAwAohGAHAFAIwQ4AoBCCHQBAIQQ7AIBCCHYAAIUQ7AAACiHYAQAUQrADACiEYAcAUAjBDgCgEIIdAEAhBDsAgEIIdgAAhRDsAAAKIdgBABRCsAMAKIRgBwBQCMEOAKAQgh0AQCEEOwCAQgh2AACFEOwAAAoh2AEAFEKwAwAohGAHAFAIwQ4AoBCCHQBAIQQ7AIBCCHYAAIUQ7AAACiHYAQAUQrADAChEt47eAOhMPn3/sw5e/6eNrutFR7cbAP8h2EFKqVevXqlHjx7ptsF/6xTtcdvgO1K9ifaLdgSg4wh2kFLq3bt3Gjx4cBo+fLj2mEAR6qIdAeg4gh38nwglggkA9czkCQCAQgh2AACFEOwAAAoh2AEAFEKwAwAohGAHAFAIwQ4AYFINdl999dVY73v99dcndnsAAGivYLfhhhumhx56qNGy7777Lp155plp0003ndDtAACgvYPdJptsknbbbbd05JFHphEjRqQnnngibbTRRukvf/lLOvXUUyd2ewAAaK+fFNtnn31Sv3790hFHHJHWWmut9OWXX6Zddtklh72ePXtO6HYAANARkyfeeuut9PHHH6fpp58+9ejRI7366qvp008/ndhtAQCgPYPdDjvskA488MC02WabpZtvvjndeuutqWvXrmmDDTZI55133sRsCwAA7RnsRo0alW644Ya0xx57pMknnzz17t07B7qTTz45XXfddROzLQAAtOcYuyuuuKLZ5euss076+c9/PjHbAgBAe4+xu+mmm3JXbN++fdO7776bTjjhhHTxxRenqaeeemK2BQCgrr3zzjt5qFrdBLurr746d7tGsIvz14UlllgiXXrppencc89ti20EAOjU/va3v+UzhMTp31555ZX6CXbRFXv88cenbbfdNk+aCBtvvHEOe9dff31bbCMAQKe2zjrrpJ/+9Kfp/PPPT/fdd19ab7316mOM3bBhw9L8888/xvI555wzff755621XQAAdePee+9NQ4cOTeuuu2762c9+loNeXVTs+vTpk2688cZGy0aPHp0uu+yynFQBACY1K664Yj47SPRoRhFs5plnro+KXfzixK677pqT6ciRI9Oxxx6bT1j8zTffpEGDBrXNVgIAdGI9evTIl5lmmilPLu0oLQ52Cy20ULrtttvyzNi33347/6TY0ksvnUuOCy64YNtsJQAArd8V++STT+YQN/fcc6cdd9wx3X333Wnw4MFp0003zYEPAIA6CXYnnnhi6tevXx5r96c//SmXHR988ME0YMCAdPbZZ7fNVgIA0PrB7rXXXsu/F9uzZ89crYvqXffu3dNyyy2XBwsCAFAnwS4GBb7++uv58tJLL6U11lgjL3/ooYfSbLPN1hbbCABAW0ye6N+/f9pzzz3zyYmXXHLJXKm78MIL869ODBw4sKVPBwBARwW77bffPp9477333ksrr7xyXrbCCiuk1VdfPS2yyCKttV0AALR1sAuLLrpovlSWWmqpCXkaAAA6cowdAACdk2AHAFAIwQ4AoBCCHQBAIQQ7AIBCCHYAAJPy6U6AlD744IM0fPhwTdGBevXqlXr37u09APg/gh1MYKiL30weOXKk9utA8TvVl19+uXAH8H8EO5gAUamLUNel73SpyzSd789o9L+/T6Of+LzTbl9rvcaRT3ye3wtVO4D/KPMTH9pJhKYu03fvlO09upNvX2u9RgD+P5MnAAAKIdgBABRCsAMAKIRgBwBQCMEOAKAQgh0AQCEEOwCAQgh2AACFEOwAAAoh2AEAFEKwAwAohGAHAFAIwQ4AoBCCHQBAIQQ7AIBCCHYAAIUQ7AAACiHYAQAUQrADACiEYAcAUAjBDgCgEIIdAEAhBDsAgEIIdgAAhRDsAAAKIdgBABRCsAMAKIRgBwBQCMEOAKAQgh0AQCEEOwCAQgh2AACFEOwAAAoh2AEAFEKwAwAohGDHRBs+fLhWBOqSzy9KI9gxUYYNG5Y233zzfA1QT3x+USLBjokyYsSINGrUqHwNUE98flEiwQ4AoBCCHQBAIQQ7AIBCCHYAAIUQ7AAACiHYAQAUQrADACiEYAcAUAjBDgCgEIIdAEAhBDsAgEIIdgAAhRDsAAAKIdgBABRCsAMAKIRgBwBQCMEOAKAQgh0AQCEEOwCAQgh2AACFEOwAAAoh2AEAFEKwAwAohGAHAFAIwQ4AoBCCHQBAIQQ7AIBCCHYAAIUQ7AAACiHYAQAUQrADAChEXQe7hRdeOF+GDRs2xn3XXHNNvu+cc84Zr+dac80109ChQ9tgKwEA2ke3VOcmn3zydPfdd6dtt9220fI777wzdenSpcO2C4D688MPP6Tnn38+ffLJJ2nGGWdMSy65ZJpssskmie2KdTz77LPpqaeeSh9++GHq3bt3WnrppVOfPn1aZV2dtW1LU/fBrm/fvmMEuxEjRqSnn346LbbYYh26bQDUj/vuuy9deOGF6f33329YNuuss6bdd989rbrqqkVvV6zjzDPPTJ9//nmj5VdddVWabrrp0r777jtR6+qsbVuiuu6KDWuttVZ67LHHcpir3HvvvTnwTTXVVA3LRo4cmQYOHJhWWWWVtPjii+eu1+uuu67Z5xw9enQ677zz0sorr5yfJ3a85rp7AShDBI9jjz02zTvvvOncc89Nt9xyS76O27E87i91u+I5jjnmmIZQF0WRffbZJy266KL5diyP+yd0XZ21bUtV98FuoYUWyuXi2h3jjjvuSGuvvXajx1188cU58MWYu9tvvz1tsskmacCAAenjjz8e4zmvvPLKdPPNN6fTTjsth78oGe+0007pu+++a5fXBED7GTVqVK4mrbDCCvm4EMGmZ8+e+Tpux/KLLroodyW2p1hfW29XtY7u3bunHj16pBVXXDGdffbZ+RgZx8u4Xd0Xj2vputrjNbTU6NGj09dff/2jl3pV912xVdUuumP79euXK3MPPvhgOuqoo3I4qyyyyCJ5B1pqqaXy7ajCRVXu7bffTjPNNFOj5xs0aFA6+uij0/LLL59vH3fccbl6d//99+dKX1OxzrhUaquHk4p33nknTUomtdfbmXkvmNh957XXXstdhEcccUTq2rVxvSNub7PNNmnvvffO48OqY0h7iPW19XZV66j8+te/blhXtY6HH344347HtXRd7fEaWhrqdt555/Tcc8+lUhUT7KJs/P333+cdMKp4UWWrFRW8CHwnnXRSevPNN9NLL72Ulzf9lvDll1/mnXC//fZrtBN+8803OQQ2J75tRFl5UnbiiSd29CYwibLvMbG++OKLfB1dg82plseg//ZUra8tt6vp/226rqa3W7qu9ngNLdWlBRMrY+LIFFNMkepJEcFu2WWXzddPPvlkng37i1/8YozHnHHGGen6669Pm222WS4xR0WuuepbFfTOOuusMXbEXr16Nbv+3XbbLe24446NKnarrbZampQcdthhaa655kqT0jd9gaJzmNT2PVr/73jaaafNt996661mJ93F8tC0YNDWqvW15XY1/b9N11WtY2yPH9/n7yxt26VLl9wrF8Wa8RGhrt7OsFFEsOvWrVsOUtEde88996Rdd911jMdce+21efDn+uuvn2+//vrrDWXZWvEHHjvYRx99lFZfffW8LLpZ999//1y+janfTcX4g7hMyuLAGpVSsO9RbxZccME8QzNmgMa4r9remhh/d/XVV6fZZpstn56jPcX62nq7qnV8+umnOcDUrqtaRxzf4r7pp5++xetqj9fQUl26dMnj/EpV95MnartjoyIXoWzOOecc4/6Yrh2h7913301PPPFEOvjgg/Py2rFxlf79++dp3xEUo/s1xgbEeX3mm2++dnktALSfCBsx7vqRRx5JRx55ZHrxxRfTV199la/jdiyPnpn2PudarK+tt6taRxwLv/322zycKYY2DRkyJI99i9vVffG4lq6rPV4DBVbsQkxuiDF2TWfDVqLcHhW7DTbYIM+i3XLLLfOO9PLLL49xDp2ozMVYu5iAEd2qSyyxRLr00kvH2hULQH2L40AM0YkZnBFoKlFNiuUdda619tiueI44PlbnsYsx6NU49DCx57HrrG1bqroOdq+++mrDv+OcdU1nuVxxxRWNxuHVzpINtV22UZ2rROCLyRNxAWDSEAFjpZVW6nS/jtAe21Wto61+eaKztm2J6jrYAUBriqDRnqc06UzbFetYZpll8mVSatvSFDPGDgBgUifYAQAUQrADACiEYAcAUAjBDgCgEIIdAEAhBDsAgEIIdgAAhRDsAAAKIdgBABRCsAMAKIRgBwBQCMEOAKAQgh0AQCEEOwCAQgh2AACFEOwAAAoh2AEAFEKwAwAohGAHAFAIwQ4AoBCCHQBAIQQ7AIBCCHYAAIUQ7AAACiHYAQAUQrADACiEYAcAUAjBDgCgEIIdAEAhBDsAgEIIdgAAhRDsmChTTz116tq1a74GqCc+vyhRt47eAOrb7LPPnoYMGZJ69erV0ZsC0CI+vyiRih0TTagD6pXPL0oj2AEAFEKwAwAohGAHAFAIwQ4AoBCCHQBAIQQ7AIBCCHYAAIUQ7AAACiHYAQAUQrADACiEYAcAUAjBDgCgEIIdAEAhBDsAgEIIdgAAhRDsAAAKIdgBABRCsAMAKIRgBwBQCMEOAKAQgh0AQCEEOwCAQgh2AACFEOwAAAoh2AEAFEKwAwAohGAHAFAIwQ4AoBCCHQBAIQQ7AIBCCHYAAIUQ7AAACiHYAQAUQrADACiEYAcAUIhuHb0BUM9G//v71Jm3q7NuX2so+bUBTCjBDiZAr169Uvfu3dPIJz5PoztxC47u5Ns3seI9iPcCgP8Q7GAC9O7dO11++eVp+PDh2q8DRaiL9wKA/xDsYAJFoBAqAOhMTJ4AACiEYAcAUAjBDgCgEIIdAEAhBDsAgEIIdgAAhRDsAAAKIdgBABRCsAMAKIRgBwBQCMEOAKAQgh0AQCEEOwCAQgh2AACF6NbRG1Ci0aNH5+sRI0Z09KYAAHWuyhNVvhgXwa4NfPnll/l6tdVWa4unBwAm0XwxzTTTjPMxXUaPT/yjRUaNGpU+/PDDNNVUU6UuXbpovVb4phIh+e9//3uaeuqptWcb097tR1tr6xLZr1tfRLUIdbPMMkvq2nXco+hU7NpANPqss87aFk89SYtQJ9hp7xLZt7V1iezXrevHKnUVkycAAAoh2AEAFEKwo9Pr3r172muvvfI12rsk9m1tXSL7dccyeQIAoBAqdgAAhRDsAAAKIdjRKY0cOTJtuOGG6dFHH21Y9u6776b+/funpZZaKvXr1y898MADHbqN9e6DDz5I++yzT1puueXSKquskgYOHJi+/fbbfJ+2bn3//Oc/084775yWXnrptPrqq6dBgwY13Ke928auu+6aDjnkkIbbL730Utpyyy1Tnz590uabb55eeOGFNlrzpOOOO+5ICy+8cKNLfK4E7d0xBDs6nQgX+++/f3rttdcanZxxzz33TDPNNFMaMmRI2njjjfOEimHDhnXottaraM/48P3666/TVVddlc4444x0zz33pDPPPFNbt9FJyyNkTD/99OmGG25Ixx57bLrgggvSzTffrL3byC233JJPal756quv8nvQt2/fNHTo0Bywd9ttt7ycCff666+nNdZYI3/Rri7HH3+89u5ATlBMp/uQOOCAA8b4PbxHHnkkVzWuvfbaNOWUU6b5558/Pfzwwznk7b333h22vfXqzTffTM8880x68MEHc1gOEfR+//vfp1VXXVVbt7KPP/44LbrooumYY47JJ22dZ5550oorrpiefPLJ3P727db1+eefp5NPPjktueSSDctuvfXW1KNHj3TwwQfnXwQ6/PDD03333Zduv/32tNlmm7XyFkw63njjjbTQQgulmWeeudHyP//5z9q7g6jY0ak89thjafnll0/XXXddo+XPPvtsWmyxxXKoqyy77LI5nNBy8SEcXYFVqKv9KSBt3friZ4CiGhqhLr60RKB7/PHHcze49m598QUlqvoLLLBAw7Jo5/jMqH7mMa6XWWYZnyGtEOzii0pT2rvjCHZ0Kttss0067LDDUs+ePRst/+ijj/LBsdaMM86Y3n///XbewjJMO+20eVxdbVfhlVdemVZYYQVt3cbWXHPNvJ9HV+C6666rvVtZVPKfeOKJtMceezRa7jOk9cWXlLfeeit3v8a+vPbaa6dTTz01j5HW3h1HVyx1IcaCNT1BcdyODxAm3imnnJIHOkf3yeDBg7V1Gzr77LNz12x0y8aEFft2647PPfroo9NRRx2Vpphiikb3aefWF2Ocq3aNivS//vWvPL7um2++0d4dSLCjLsTYmBg3UytCXdMPbyYs1F1++eV5AkWMldHWbasa9xUh5MADD8yzM+PgWMu+PWHOPffctMQSSzSqRldiv276RVA7T5w55pgjn7mgV69euWs7xpFG9f+ggw7Kwwy0d8cQ7KgLvXv3zhMrakXVo2n3LC0zYMCAdM011+RwF10p2rptxL4a40Gjq6oS47++++67PN4xJrM0fbx9e8JmwkbbRTd3qILFX//613z6pLhPO7eu6aabrtHtmNgWX1piv9beHcMYO+pCnHfqxRdfzCX+SgxAj+VMeHUjZhmffvrpaYMNNtDWbSi6qOL0PHHuwEqcQ22GGWbIA/rt263jiiuuyKeQufHGG/MlxjPGJf4dnxVPP/10w4z7uH7qqad8hkyE+++/P092q604v/zyyznsxX6tvTuGYEddiLL+bLPNlg499NB8fruLL744Pffcc2mLLbbo6E2r25ls559/fvrNb36TP4BjoHN10dZt0/26+OKL54lBUXmO86tFlXT33XfX3q3cNTj33HM3XKaaaqp8iX+vt9566YsvvkgnnHBCfg/iOgLJ+uuv35qbMEmJymh0cR9xxBG56hz7dZxmZpdddtHeHUiwoy5MNtlkOYhE8IhzTt10003pvPPOS7PPPntHb1pduuuuu9IPP/yQT5K78sorN7po69ZXtWnM9t5qq63yOdS22267tP3222vvdhKnmrnoootypT8+Q+J0HPEFsfYUSrS8TS+99NL06aef5rGisV/H/h3BTnt3nC6jm54JFgCAuqRiBwBQCMEOAKAQgh0AQCEEOwCAQgh2AACFEOwAAAoh2AEAFEKwAwAohGAHMBbxu5fxe6I/Js7zftVVV413O8bvlw4dOnS8HrvwwgunRx99tNn7YnncX/0ebfw7rn/s/wHlEuwAxmLPPfdMb7/99o+2z+OPP56OO+64DvmtzgceeKDd1wt0XoIdwETqqF9m7N69e5p55pk7ZN1A5yTYATRju+22S++991469NBD0yGHHJLeeOONtPPOO6dlllkmrbLKKuncc89No0aNyl2f22+/faPuz5EjR6aBAwfmxy2++OK56/W6666b4HaOiuA666yT+vTpk37729+m4cOHj9EVCyDYAYzFOeeck2adddZ02GGHpb333jtts802aZZZZknXX399Ovroo9OVV16Z/vjHP6bZZpstPzZEt2h0j1588cXp3nvvzctvv/32tMkmm6QBAwakjz/+eILaO8bvHX744fn6rbfeyqERoDkqdgDNmG666dJkk02WpplmmnTXXXelnj175nA2//zzp7XXXjtXzgYNGpQf06tXr/x/ols0ukcXWWSRdMIJJ6SllloqzTnnnGn33XdP33333XiN12vOXnvtlVZbbbW0xBJLpCOOOCLdfPPNacSIEd43YAzdxlwEQK3oho0u1W7d/v9HZlTmPvroo/TFF1+M0VgR/B588MF00kknpTfffDO99NJLefkPP/wwQQ275JJLNvx7scUWS99//3165513vEnAGFTsAH5Ejx49xlgW4+vGFtbOOOOMdNBBB+UgGN2wEzO+LkRVsOlEjcknn9z7BoxBsAP4EfPOO2968cUXc3dq5emnn04zzDBD7rLt0qVLo8dfe+216cgjj0wHHnhg6tevX/r6668navbsP/7xj4Z/P/fccznU/eQnP/G+AWMQ7ADGYsopp8xdqauuumqe6XrUUUflbtk777wzT4zYeuutc6iL8XfhhRdeSN9++20Oe/fcc09699130xNPPJEOPvjgfH88x4SICuDDDz+cnnnmmXT88cenX/3qVw3rBKhljB3AWERwO/XUU/Okh5goERMioms1KnU77LBD2m233fLj4pQjK620Ug5cp59+ejrxxBPTMccckzbYYIPUu3fvtOWWW+bu1PgliwiJLbXjjjvmWbGfffZZWn/99XMlEKA5XUZ31Jk1AQBoVbpiAQAKoSsWoINsttlm+YTDY3PJJZekvn37tus2AfVNVyxABxk2bFijmbZNxfi8KaaYol23Cahvgh0AQCGMsQMAKIRgBwBQCMEOAKAQgh0AQCEEOwCAQgh2AACFEOwAAAoh2AEApDL8P6hdtuZeokHOAAAAAElFTkSuQmCC" }, "metadata": {}, "output_type": "display_data", "jetTransient": { "display_id": null } } ], "execution_count": 11 }, { "cell_type": "markdown", "source": [ "## Kruskal-Wallis H Test\n", "The Kruskal-Wallis test is a non-parametric method used to determine significant differences between two or more independent groups. Post-hoc tests can be performed to obtain pairwise differences. Again, the example here uses the pairwise-nonparametric as an example. \n", "\n", "For ease, the tip dataset will continue to be used. " ], "metadata": { "collapsed": false }, "id": "86068bf7ce1f9ce5" }, { "cell_type": "code", "source": "tips_stats.get_kruskal(value_col='tip', group_col='day')", "metadata": { "collapsed": false, "ExecuteTime": { "end_time": "2026-05-21T04:13:10.001218Z", "start_time": "2026-05-21T04:13:09.983104Z" } }, "id": "a414ac5334e5a35", "outputs": [ { "data": { "text/plain": [ " Source ddof1 H p_unc significance\n", "Kruskal day 3 8.565588 0.035661 *" ], "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Sourceddof1Hp_uncsignificance
Kruskalday38.5655880.035661*
\n", "
" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "execution_count": 12 }, { "cell_type": "code", "source": "tips_stats.get_pairwise_tests(value_col='tip', group_col='day', parametric=False)", "metadata": { "collapsed": false, "ExecuteTime": { "end_time": "2026-05-21T04:13:10.069104Z", "start_time": "2026-05-21T04:13:10.036841Z" } }, "id": "95c0734f8736f252", "outputs": [ { "data": { "text/plain": [ " Contrast A B Paired Parametric U_val alternative p_unc \\\n", "0 day Thur Fri False False 561.0 two-sided 0.758381 \n", "1 day Thur Sat False False 2486.5 two-sided 0.417663 \n", "2 day Thur Sun False False 1755.5 two-sided 0.010006 \n", "3 day Fri Sat False False 808.0 two-sided 0.881937 \n", "4 day Fri Sun False False 533.5 two-sided 0.079741 \n", "5 day Sat Sun False False 2652.0 two-sided 0.029497 \n", "\n", " hedges significance \n", "0 0.030468 n.s. \n", "1 -0.148857 n.s. \n", "2 -0.388762 * \n", "3 -0.166274 n.s. \n", "4 -0.431509 n.s. \n", "5 -0.178644 * " ], "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
ContrastABPairedParametricU_valalternativep_unchedgessignificance
0dayThurFriFalseFalse561.0two-sided0.7583810.030468n.s.
1dayThurSatFalseFalse2486.5two-sided0.417663-0.148857n.s.
2dayThurSunFalseFalse1755.5two-sided0.010006-0.388762*
3dayFriSatFalseFalse808.0two-sided0.881937-0.166274n.s.
4dayFriSunFalseFalse533.5two-sided0.079741-0.431509n.s.
5daySatSunFalseFalse2652.0two-sided0.029497-0.178644*
\n", "
" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "execution_count": 13 }, { "cell_type": "markdown", "source": [ "For readability, groups with no significance were not annotated. " ], "metadata": { "collapsed": false }, "id": "81607edd18db7e1f" }, { "cell_type": "code", "source": [ "# Plot annotations\n", "title = \"Non-Parametric Pairwise Tests with New Group Order\"\n", "pairs = [('Sun', 'Sat'), ('Thur', 'Sun')]\n", "group_order = ['Sun', 'Thur', 'Fri', 'Sat']\n", "palette = ['red', 'orange', 'green', 'blue']\n", "\n", "tips_plot.boxplot(value_col='tip', group_col='day', test='pairwise-nonparametric', group_order=group_order,\n", " pairs=pairs, palette=palette, title=title)" ], "metadata": { "collapsed": false, "ExecuteTime": { "end_time": "2026-05-21T04:13:10.641444Z", "start_time": "2026-05-21T04:13:10.529753Z" } }, "id": "c449112f5f6db896", "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" }, { "data": { "text/plain": [ "
" ], "image/png": "iVBORw0KGgoAAAANSUhEUgAAAnYAAAHWCAYAAAD6oMSKAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjksIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvJkbTWQAAAAlwSFlzAAAPYQAAD2EBqD+naQAAOe9JREFUeJzt3Ql8VOW9//FfCIQAAQUElUVsEarsCoLai1CR4FattN5iuWjRXkAE6gINivtSQCz2IiKxVPSqBSp61eJCKi1cuSqW1RULwdoAFlE2o6xJ/q/v0/9JJ8Nkn/XJ5/16hWFOJjNnzjnzPN/zLGfSSkpKSgwAAAApr16iVwAAAADRQbADAADwBMEOAADAEwQ7AAAATxDsAAAAPEGwAwAA8ATBDgAAwBMEOwAAAE8Q7IAUwvXE/ZYM+zcZ1gFAzRHsUC0jRoywLl262HvvvRfx9+edd55Nnjw5ruvzne98p8xPt27dbODAgXb33Xfb3r17zQf79u2zX/ziF7Z69eoKH7d161a3DZ5//vkav5b+NnybnnbaaXbmmWfaNddcY2vWrKnW80Vjncrb9/qJJR3P4dsi/Ofhhx+O2/6NtvDP65w5c+y3v/1t6X29N73H6gr+7oknnoj4e72mXjtR/vGPf9iDDz5ol1xyiZ1++unu5/LLL7fHHnvM9u/fb6lEn8fx48fbd7/7XevevbsNGjTIbrvtNsvPz6/V88a7LEf01I/ic6GOKCoqsltuucVV1BkZGYleHRc077zzztL7hw8ftg8++MBmzpxpH330kS1YsMDS0tIslel9vPjii/bDH/6wwse1bt3aFi1aZCeddFKtX3P27NnWqlUr9//i4mL74osv7JFHHrGrr77aFi9ebKeeemqVniea6xQqdJ/HirbBoUOHSu+PGzfOHW9jx44tXXbCCSfEbf/G4v1lZWWV3v+v//ov9x6j5aGHHrLvfe971qFDB0sWq1atsgkTJtgxxxxjP/nJT1wA1fGt5Y8++qjl5eXZM888Yw0bNrRkpyCqcu7f/u3f7NZbb3Wf108//dSVeQqqU6dOtYsvvjjRq4k4I9ih2po2bWqbNm1ylfyNN96Y8C2oiqlXr15llql16euvv7ZZs2bZhg0bjvq9rxS0o/Ve1UrXrl27MssUagYPHmy/+93v7J577on7OoU65ZRTLNb0fsPfS4sWLbw5nsLfX7RpeylwPP3000lxcrVr1y5XZp188sk2f/58a9y4cenv1OKl1q4rr7zSnnzySRs1apQlsz//+c/2q1/9yrXWhYbxvn372g9+8AO7+eabXYtb586drVOnTgldV8QXXbGoUYWvgmPevHn2/vvvV9q6p7Pf73//+9ajRw/XRaoukIMHD5Y+RoXPT3/6U3vuuedsyJAhriv1sssus//93/+t1d7R88j27dtL10VnuOp+0bqoch42bJi9/fbbZbqQFFzUkqECUmfC6s49cOCAK0Szs7Pd855xxhk2cuRI19IS+j6uvfZa1zp1/vnnu9fQ83/yySeuENY26Nmzp11xxRVl/k7UBfcf//Ef7vd63ZycHFcJiVoSrrrqKvd/3Qbdj7qdOHGia33Qe9H6ROr23LJliyv49bwKvKNHj65xN42CXvPmzUu3qfzlL39x71vPrW2jLhxtR7WCSPg66VaB4tlnn3WVqdZL63fppZeWeS21DOr5tO0D999/vztGInXF/t///Z/9+7//u+tW07pcd911R73P119/3YYOHeq6rPTa9913n33zzTdWW3ovahkJhgHo/et4C2hfqqINust0fL/wwgsV7t+///3vNmbMGOvXr587Ln784x/bihUryl0HtdDoPYfScaj1CaXWRu2v8O62oMtVx3549+vy5cvd/tG6a/sH614ZPbeO7f/+7/+u9LEVfQaWLVvm1unDDz8sfbzWQcu07QP6XGnZunXrIr6GTki+/PJLt99DQ11Ar63jLvR32ka//OUv3XJ9pqdMmeKWf/75567nYsCAAW75j370I7eelQ1BCO+G1v7Wsrlz59o555xjvXv3dvto27ZtFW4v7advf/vbdv311x/1uwYNGrgTr/T0dPvNb35Tulzro7/TZ0DrrP/Lxo0bXfmhz45aWF966aWjnlOfZ5WfKh91nOs4eOqpp8o8JlKZhPgj2KFGdBauCl4FW2hXVbg77rjDdQeoglE3x/Dhw93Zuwqu0EHaCoga26MCQS2BKpB0JlqbMXIKVNK+fXt3q0CpMUSqIBVK7733XtuzZ4/9/Oc/LzOuRqFFFai6kfT+1GWj8U8KnjqLf/zxx91ytVqqsg59H6pQ9P5UUOt9K1job/R/BSp1m3z22Weu8AsNRgq2mZmZ9utf/9pt23feecdV8go1Xbt2ddsx2J6hXZCvvvqqNWnSxG3b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" }, "metadata": {}, "output_type": "display_data", "jetTransient": { "display_id": null } } ], "execution_count": 14 } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 2 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython2", "version": "2.7.6" } }, "nbformat": 4, "nbformat_minor": 5 }