diff --git a/Chi-Square Test/Chi_Square_Test.ipynb b/Chi-Square Test/Chi_Square_Test.ipynb new file mode 100644 index 0000000000..5512a3474f --- /dev/null +++ b/Chi-Square Test/Chi_Square_Test.ipynb @@ -0,0 +1,262 @@ +{ + "nbformat": 4, + "nbformat_minor": 0, + "metadata": { + "colab": { + "provenance": [] + }, + "kernelspec": { + "name": "python3", + "display_name": "Python 3" + }, + "language_info": { + "name": "python" + } + }, + "cells": [ + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "id": "Ot2NTz5ukpa0" + }, + "outputs": [], + "source": [ + "import pandas as pd\n", + "import numpy as np\n", + "from scipy.stats import chi2_contingency\n", + "import matplotlib.pyplot as plt\n", + "import seaborn as sns" + ] + }, + { + "cell_type": "code", + "source": [ + "# Read the CSV file\n", + "df = pd.read_csv('/content/drive/MyDrive/GirlsScriptOpenSource/ml|RepoProjects/Chi-Square Test /dataset.csv')" + ], + "metadata": { + "id": "saXtEKYLlOQh" + }, + "execution_count": 4, + "outputs": [] + }, + { + "cell_type": "code", + "source": [ + "# Plot the distribution of Gender\n", + "plt.figure(figsize=(10, 4))\n", + "plt.subplot(1, 2, 1)\n", + "sns.countplot(data=df, x='Gender')\n", + "plt.title('Distribution of Gender')" + ], + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 427 + }, + "id": "WCViFInRlOaL", + "outputId": "4631f296-9675-4b64-94c6-2092a80b9337" + }, + "execution_count": 5, + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": [ + "Text(0.5, 1.0, 'Distribution of Gender')" + ] + }, + "metadata": {}, + "execution_count": 5 + }, + { + "output_type": "display_data", + "data": { + "text/plain": [ + "
" + ], + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAasAAAGJCAYAAAA0dRxQAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAAAuPUlEQVR4nO3dd3hU1d7+/3vSJiEhiZQ0SogUAQEF5GAEBSEaEBCUcvCghiL4CChN0HwVkCIcbCCItEdBEcVyVJRmMDRFuoCiiIAgHDEJiEkIkADJ+v3hj3kcE1qYMAt8v65rX1f2Wmuv/dnDkDt79p4ZhzHGCAAAi/l4uwAAAM6HsAIAWI+wAgBYj7ACAFiPsAIAWI+wAgBYj7ACAFiPsAIAWI+wAgBYj7CCNZ555hk5HI7Lsq/mzZurefPmrvWVK1fK4XDogw8+uCz77969u6pUqXJZ9lVcOTk5euihhxQVFSWHw6GBAwd6u6RimTNnjhwOh/bt2+ftUnAJCCuUiDO/IM4sgYGBiomJUWJioiZPnqyjR496ZD8HDx7UM888o61bt3pkPk+yubYLMW7cOM2ZM0ePPPKI5s6dqwceeOCc4wsKCvTmm2/qjjvuULly5eTv76+IiAjdeeedmjlzpvLy8i5T5bga+Xm7AFzdRo8erbi4OJ06dUppaWlauXKlBg4cqJdeekmffPKJ6tWr5xr79NNP68knn7yo+Q8ePKhRo0apSpUquvHGGy94u5SUlIvaT3Gcq7ZZs2apoKCgxGu4FMuXL9fNN9+skSNHnnfsiRMndM899+izzz7TLbfcoscff1yRkZE6cuSIVq1apb59+2r9+vV67bXXLkPluBoRVihRrVu31k033eRaT05O1vLly9W2bVvdfffd2rFjh4KCgiRJfn5+8vMr2afk8ePHVapUKQUEBJTofs7H39/fq/u/EBkZGapdu/YFjR00aJA+++wzTZo0SQMGDHDrGzJkiHbt2qVly5aVRJmX3bFjxxQcHOztMv5+DFACZs+ebSSZjRs3Ftk/btw4I8nMnDnT1TZy5Ejz16dkSkqKadKkiQkLCzPBwcGmRo0aJjk52RhjzIoVK4ykQsvs2bONMcY0a9bMXH/99WbTpk3m1ltvNUFBQWbAgAGuvmbNmrn2c2au+fPnm+TkZBMZGWlKlSpl2rVrZ/bv3+9WU2xsrElKSip0TH+e83y1JSUlmdjYWLftc3JyzODBg03FihVNQECAqVGjhnn++edNQUGB2zhJpl+/fuajjz4y119/vQkICDC1a9c2S5YsKfKx/qv09HTTs2dPExERYZxOp6lXr56ZM2dOocfir8vevXuLnG///v3G19fXtGrV6oL2f0Z+fr6ZOHGiqV27tnE6nSYiIsL06dPHHDlyxG1cbGysadOmjfniiy9Mo0aNjNPpNHFxceaNN94oNOf27dvN7bffbgIDA02FChXMmDFjzGuvvVZk/YsXLzZNmzY1pUqVMiEhIeauu+4y27dvdxuTlJRkgoODze7du03r1q1NSEiIad++/UUdJzyDMyt4xQMPPKD/9//+n1JSUtS7d+8ix3z33Xdq27at6tWrp9GjR8vpdGr37t1as2aNJKlWrVoaPXq0RowYoT59+ujWW2+VJN1yyy2uOX777Te1bt1aXbt21f3336/IyMhz1vXss8/K4XDoiSeeUEZGhiZNmqSEhARt3brVdQZ4IS6ktj8zxujuu+/WihUr1KtXL91444367LPPNHToUP3yyy+aOHGi2/gvv/xSH374ofr27avSpUtr8uTJ6tixo/bv36+yZcueta4TJ06oefPm2r17t/r376+4uDi9//776t69uzIzMzVgwADVqlVLc+fO1aBBg1SxYkUNGTJEklS+fPki51yyZIny8/N1//33X/DjI0kPP/yw5syZox49euixxx7T3r179corr2jLli1as2aN29nn7t271alTJ/Xq1UtJSUl6/fXX1b17dzVs2FDXX3+9JCktLU233367Tp8+rSeffFLBwcGaOXNmkf9uc+fOVVJSkhITEzVhwgQdP35c06ZNU9OmTbVlyxa3m19Onz6txMRENW3aVC+88IJKlSp1UccJD/F2WuLqdL4zK2OMCQsLM/Xr13et//XMauLEiUaSOXTo0Fnn2Lhxo9sZy581a9bMSDLTp08vsq+oM6sKFSqY7OxsV/t7771nJJmXX37Z1XYhZ1bnq+2vZ1Yff/yxkWTGjh3rNq5Tp07G4XCY3bt3u9okmYCAALe2bdu2GUlmypQphfb1Z5MmTTKSzFtvveVqO3nypImPjzchISFux37mjOZ8Bg0aZCSZrVu3urXn5eWZQ4cOuZbDhw+7+r744gsjycybN89tm6VLlxZqj42NNZLM6tWrXW0ZGRnG6XSaIUOGuNoGDhxoJJn169e7jQsLC3M7szp69KgJDw83vXv3dtt3WlqaCQsLc2tPSkoyksyTTz553scBJYu7AeE1ISEh57wrMDw8XJK0YMGCYt+M4HQ61aNHjwse/+CDD6p06dKu9U6dOik6OlqLFy8u1v4v1OLFi+Xr66vHHnvMrX3IkCEyxmjJkiVu7QkJCapataprvV69egoNDdVPP/103v1ERUXpvvvuc7X5+/vrscceU05OjlatWnXRtWdnZ0v649/zr/sqX768a4mNjXX1vf/++woLC9Mdd9yhw4cPu5aGDRsqJCREK1ascJurdu3arrNT6Y+zvOuuu87teBcvXqybb75Z//jHP9zGdevWzW2uZcuWKTMzU/fdd5/bvn19fdW4ceNC+5akRx555KIfF3gWYQWvycnJcQuGv/rnP/+pJk2a6KGHHlJkZKS6du2q995776KCq0KFChd1M0X16tXd1h0Oh6pVq1bi79H5+eefFRMTU+jxqFWrlqv/zypXrlxojmuuuUa///77efdTvXp1+fi4/9c/234uxJmac3Jy3NqbNGmiZcuWadmyZbrzzjvd+nbt2qWsrCxFRES4BVr58uWVk5OjjIwMt/EXcrxnju2vrrvuukL7lqQWLVoU2ndKSkqhffv5+alixYrnexhQwrhmBa/473//q6ysLFWrVu2sY4KCgrR69WqtWLFCixYt0tKlS/Xuu++qRYsWSklJka+v73n3czHXmS7U2d64nJ+ff0E1ecLZ9mOMuSz7/7OaNWtKkrZv364bbrjB1V6+fHklJCRIkt566y23bQoKChQREaF58+YVOedfr4958njP/LEzd+5cRUVFFer/6x2pTqezULjj8iOs4BVz586VJCUmJp5znI+Pj1q2bKmWLVvqpZde0rhx4/TUU09pxYoVSkhI8PgnXpz5q/sMY4x2797t9n6wa665RpmZmYW2/fnnn3Xttde61i+mttjYWH3++ec6evSo29nVDz/84Or3hNjYWH3zzTcqKChw+wV8Kftp3bq1fH19NW/evEIvuZ1N1apV9fnnn6tJkyYe+4MiNja20L+fJO3cubPQviUpIiLCFaawH38u4LJbvny5xowZo7i4uHP+cjty5EihtjNvrj3zaQhn3u9SVHgUx5tvvul2He2DDz7Qr7/+qtatW7vaqlatqnXr1unkyZOutoULF+rAgQNuc11MbXfddZfy8/P1yiuvuLVPnDhRDofDbf+X4q677lJaWpreffddV9vp06c1ZcoUhYSEqFmzZhc9Z+XKldWzZ08tWbKkUP1n/PUMqEuXLsrPz9eYMWMKjT19+nSx/j3vuusurVu3Ths2bHC1HTp0qNDZW2JiokJDQzVu3DidOnWq0DyHDh266H2j5HFmhRK1ZMkS/fDDDzp9+rTS09O1fPlyLVu2TLGxsfrkk08UGBh41m1Hjx6t1atXq02bNoqNjVVGRoZeffVVVaxYUU2bNpX0R3CEh4dr+vTpKl26tIKDg9W4cWPFxcUVq94yZcqoadOm6tGjh9LT0zVp0iRVq1bN7fb6hx56SB988IFatWqlLl26aM+ePXrrrbfcbni42NratWun22+/XU899ZT27dunG264QSkpKVqwYIEGDhxYaO7i6tOnj2bMmKHu3btr8+bNqlKlij744AOtWbNGkyZNOuc1xHOZNGmS9u7dq0cffVTz589Xu3btFBERocOHD2vNmjX69NNP3a4dNWvWTA8//LDGjx+vrVu36s4775S/v7927dql999/Xy+//LI6dep0UTUMGzZMc+fOVatWrTRgwADXretnzibPCA0N1bRp0/TAAw+oQYMG6tq1q8qXL6/9+/dr0aJFatKkyVlDF17k1XsRcdU6c+v6mSUgIMBERUWZO+64w7z88stut0if8ddb11NTU0379u1NTEyMCQgIMDExMea+++4zP/74o9t2CxYsMLVr1zZ+fn5Fvim4KGe7df2dd94xycnJJiIiwgQFBZk2bdqYn3/+udD2L774oqlQoYJxOp2mSZMmZtOmTYXmPFdtRb0p+OjRo2bQoEEmJibG+Pv7m+rVq5/zTcF/dbZb6v8qPT3d9OjRw5QrV84EBASYunXrFnl7/YXeun7G6dOnzezZs02LFi1MmTJljJ+fnylXrpxp2bKlmT59ujlx4kShbWbOnGkaNmxogoKCTOnSpU3dunXNsGHDzMGDB89bR1GP9zfffGOaNWt2QW8KXrFihUlMTDRhYWEmMDDQVK1a1XTv3t1s2rTJNebMm4LhfQ5jvHBFFgCAi8A1KwCA9QgrAID1CCsAgPUIKwCA9QgrAID1CCsAgPV4U7D++KywgwcPqnTp0h7/+B4AwNkZY3T06FHFxMSc8zMYCStJBw8eVKVKlbxdBgD8bR04cOCcn25PWOn/vuLgwIEDCg0N9XI1APD3kZ2drUqVKp33o74IK/3fp2OHhoYSVgDgBee7BMMNFgAA6xFWAADrEVYAAOsRVgAA6xFWAADrEVYAAOsRVgAA63k1rFavXq127dopJiZGDodDH3/8sVu/MUYjRoxQdHS0goKClJCQoF27drmNOXLkiLp166bQ0FCFh4erV69eysnJuYxHAQAoaV4Nq2PHjumGG27Q1KlTi+x/7rnnNHnyZE2fPl3r169XcHCwEhMTlZub6xrTrVs3fffdd1q2bJkWLlyo1atXq0+fPpfrEAAAl4OxhCTz0UcfudYLCgpMVFSUef75511tmZmZxul0mnfeeccYY8z3339vJJmNGze6xixZssQ4HA7zyy+/XPC+s7KyjCSTlZV16QcCALhgF/r719prVnv37lVaWpoSEhJcbWFhYWrcuLHWrl0rSVq7dq3Cw8N10003ucYkJCTIx8dH69evP+vceXl5ys7OdlsAAPay9rMB09LSJEmRkZFu7ZGRka6+tLQ0RUREuPX7+fmpTJkyrjFFGT9+vEaNGuXhiqWGQ9/0+Jy4um1+/kFvl+DC8xcX63I+f609sypJycnJysrKci0HDhzwdkkAgHOwNqyioqIkSenp6W7t6enprr6oqChlZGS49Z8+fVpHjhxxjSmK0+l0fcI6n7QOAPazNqzi4uIUFRWl1NRUV1t2drbWr1+v+Ph4SVJ8fLwyMzO1efNm15jly5eroKBAjRs3vuw1AwBKhlevWeXk5Gj37t2u9b1792rr1q0qU6aMKleurIEDB2rs2LGqXr264uLiNHz4cMXExKhDhw6SpFq1aqlVq1bq3bu3pk+frlOnTql///7q2rWrYmJivHRUAABP82pYbdq0SbfffrtrffDgwZKkpKQkzZkzR8OGDdOxY8fUp08fZWZmqmnTplq6dKkCAwNd28ybN0/9+/dXy5Yt5ePjo44dO2ry5MmX/VgAACXHq2HVvHlzGWPO2u9wODR69GiNHj36rGPKlCmjt99+uyTKAwBYwtprVgAAnEFYAQCsR1gBAKxHWAEArEdYAQCsR1gBAKxHWAEArEdYAQCsR1gBAKxHWAEArEdYAQCsR1gBAKxHWAEArEdYAQCsR1gBAKxHWAEArEdYAQCsR1gBAKxHWAEArEdYAQCsR1gBAKxHWAEArEdYAQCsR1gBAKxHWAEArEdYAQCsR1gBAKxHWAEArEdYAQCsR1gBAKxHWAEArEdYAQCsR1gBAKxHWAEArEdYAQCsR1gBAKxHWAEArEdYAQCsR1gBAKxHWAEArEdYAQCsR1gBAKxHWAEArEdYAQCsR1gBAKxHWAEArEdYAQCsR1gBAKxndVjl5+dr+PDhiouLU1BQkKpWraoxY8bIGOMaY4zRiBEjFB0draCgICUkJGjXrl1erBoA4GlWh9WECRM0bdo0vfLKK9qxY4cmTJig5557TlOmTHGNee655zR58mRNnz5d69evV3BwsBITE5Wbm+vFygEAnuTn7QLO5auvvlL79u3Vpk0bSVKVKlX0zjvvaMOGDZL+OKuaNGmSnn76abVv316S9OabbyoyMlIff/yxunbt6rXaAQCeY/WZ1S233KLU1FT9+OOPkqRt27bpyy+/VOvWrSVJe/fuVVpamhISElzbhIWFqXHjxlq7du1Z583Ly1N2drbbAgCwl9VnVk8++aSys7NVs2ZN+fr6Kj8/X88++6y6desmSUpLS5MkRUZGum0XGRnp6ivK+PHjNWrUqJIrHADgUVafWb333nuaN2+e3n77bX399dd644039MILL+iNN964pHmTk5OVlZXlWg4cOOChigEAJcHqM6uhQ4fqySefdF17qlu3rn7++WeNHz9eSUlJioqKkiSlp6crOjratV16erpuvPHGs87rdDrldDpLtHYAgOdYfWZ1/Phx+fi4l+jr66uCggJJUlxcnKKiopSamurqz87O1vr16xUfH39ZawUAlByrz6zatWunZ599VpUrV9b111+vLVu26KWXXlLPnj0lSQ6HQwMHDtTYsWNVvXp1xcXFafjw4YqJiVGHDh28WzwAwGOsDqspU6Zo+PDh6tu3rzIyMhQTE6OHH35YI0aMcI0ZNmyYjh07pj59+igzM1NNmzbV0qVLFRgY6MXKAQCe5DB//jiIv6ns7GyFhYUpKytLoaGhxZ6n4dA3PVgV/g42P/+gt0tw4fmLi+WJ5++F/v61+poVAAASYQUAuAIQVgAA6xFWAADrEVYAAOsRVgAA6xFWAADrEVYAAOsRVgAA6xFWAADrEVYAAOsRVgAA6xFWAADrEVYAAOsRVgAA6xFWAADrEVYAAOsRVgAA6xFWAADrEVYAAOsRVgAA6xFWAADrEVYAAOsRVgAA6xFWAADrEVYAAOsRVgAA6xFWAADrEVYAAOsRVgAA6xFWAADrEVYAAOsRVgAA6xFWAADrEVYAAOsRVgAA6xFWAADrEVYAAOsRVgAA6xFWAADrEVYAAOsRVgAA6xFWAADrEVYAAOsRVgAA6xFWAADrEVYAAOsRVgAA61kfVr/88ovuv/9+lS1bVkFBQapbt642bdrk6jfGaMSIEYqOjlZQUJASEhK0a9cuL1YMAPA0q8Pq999/V5MmTeTv768lS5bo+++/14svvqhrrrnGNea5557T5MmTNX36dK1fv17BwcFKTExUbm6uFysHAHiSn7cLOJcJEyaoUqVKmj17tqstLi7O9bMxRpMmTdLTTz+t9u3bS5LefPNNRUZG6uOPP1bXrl0ve80AAM+z+szqk08+0U033aTOnTsrIiJC9evX16xZs1z9e/fuVVpamhISElxtYWFhaty4sdauXXvWefPy8pSdne22AADsZXVY/fTTT5o2bZqqV6+uzz77TI888ogee+wxvfHGG5KktLQ0SVJkZKTbdpGRka6+oowfP15hYWGupVKlSiV3EACAS2Z1WBUUFKhBgwYaN26c6tevrz59+qh3796aPn36Jc2bnJysrKws13LgwAEPVQwAKAlWh1V0dLRq167t1larVi3t379fkhQVFSVJSk9PdxuTnp7u6iuK0+lUaGio2wIAsJfVYdWkSRPt3LnTre3HH39UbGyspD9utoiKilJqaqqrPzs7W+vXr1d8fPxlrRUAUHKsvhtw0KBBuuWWWzRu3Dh16dJFGzZs0MyZMzVz5kxJksPh0MCBAzV27FhVr15dcXFxGj58uGJiYtShQwfvFg8A8JhinVm1aNFCmZmZhdqzs7PVokWLS63JpVGjRvroo4/0zjvvqE6dOhozZowmTZqkbt26ucYMGzZMjz76qPr06aNGjRopJydHS5cuVWBgoMfqAAB4V7HOrFauXKmTJ08Was/NzdUXX3xxyUX9Wdu2bdW2bduz9jscDo0ePVqjR4/26H4BAPa4qLD65ptvXD9///33breH5+fna+nSpapQoYLnqgMAQBcZVjfeeKMcDoccDkeRL/cFBQVpypQpHisOAADpIsNq7969Msbo2muv1YYNG1S+fHlXX0BAgCIiIuTr6+vxIgEAf28XFVZnbhkvKCgokWIAAChKsW9d37Vrl1asWKGMjIxC4TVixIhLLgwA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romOjnatSzJPP/20a33t2rVGknnttddcbe+8844JDAw8Zw3XX3+9mTJlims9NjbWTJw40RhjzBdffGFCQ0NNbm6u2zZVq1Y1M2bMuOjj/Tu6Kj5uCZdX+fLl1aZNG82ZM0fGGLVp00blypVzG7Nr1y6NGDFC69ev1+HDh11nVPv371edOnUKzblt2zatWLFCISEhhfr27NmjGjVqlMzB4Kpx++23a9q0aa714OBg1atXT2vWrHE7k8rPz1dubq6OHz+uUqVKSZLq1avn6j/zMW1169Z1a8vNzVV2drZCQ0OVk5OjZ555RosWLdKvv/6q06dP68SJE2c9s9q2bZtycnJUtmxZt/YTJ06c9+Vx/IGwQrH07NnT9bLI1KlTC/W3a9dOsbGxmjVrlmJiYlRQUKA6dero5MmTRc6Xk5Ojdu3aacKECYX6oqOjPVs8rkrBwcGqVq2aW1tOTo5GjRqle++9t9D4wMBA18/+/v6un898p11RbWf+6Hr88ce1bNkyvfDCC6pWrZqCgoLUqVOncz6/o6OjtXLlykJ9fD3RhSGsUCytWrXSyZMn5XA4lJiY6Nb322+/aefOnZo1a5ZuvfVWSdKXX355zvkaNGig//znP6pSpYr8/HhawjMaNGignTt3FgqxS7VmzRp1795d99xzj6Q/wmjfvn3nrCMtLU1+fn6qUqWKR2v5u+AGCxSLr6+vduzYoe+//16+vr5ufddcc43Kli2rmTNnavfu3Vq+fLnbNzMXpV+/fjpy5Ijuu+8+bdy4UXv27NFnn32mHj16KD8/vyQPBVexESNG6M0339SoUaP03XffaceOHZo/f76efvrpS5q3evXq+vDDD7V161Zt27ZN//rXv85685AkJSQkKD4+Xh06dFBKSor27dunr776Sk899ZQ2bdp0SbX8XRBWKLazfXOqj4+P5s+fr82bN6tOnToaNGiQnn/++XPOFRMTozVr1ig/P1933nmn6tatq4EDByo8PFw+PjxNUTyJiYlauHChUlJS1KhRI918882aOHGiYmNjL2nel156Sddcc41uueUWtWvXTomJiWrQoMFZxzscDi1evFi33XabevTooRo1aqhr1676+eef+SqjC8RXhAAArMefrAAA6xFWAADrEVYAAOsRVgAA6xFWAADrEVYAAOsRVgAA6xFWAADrEVbA30Dz5s01cOBAb5cBFBthBVwmaWlpGjBggKpVq6bAwEBFRkaqSZMmmjZtmo4fP+7t8gCr8fHWwGXw008/qUmTJgoPD9e4ceNUt25dOZ1Offvtt5o5c6YqVKigu+++29tlnlV+fr4cDgef0wiv4ZkHXAZ9+/aVn5+fNm3apC5duqhWrVq69tpr1b59ey1atEjt2rWTJGVmZuqhhx5S+fLlFRoaqhYtWmjbtm2ueZ555hndeOONmjt3rqpUqaKwsDB17dpVR48edY05duyYHnzwQYWEhCg6OlovvvhioXry8vL0+OOPq0KFCgoODlbjxo3dvmtpzpw5Cg8P1yeffKLatWvL6XSe8yvbgZJGWAEl7LffflNKSor69eun4ODgIsec+XK/zp07KyMjQ0uWLNHmzZvVoEEDtWzZUkeOHHGN3bNnjz7++GMtXLhQCxcu1KpVq/Tvf//b1T906FCtWrVKCxYsUEpKilauXKmvv/7abX/9+/fX2rVrNX/+fH3zzTfq3LmzWrVqpV27drnGHD9+XBMmTND//u//6rvvvlNERIQnHxbg4pz3i+8BXJJ169YZSebDDz90ay9btqwJDg42wcHBZtiwYeaLL74woaGhJjc3121c1apVzYwZM4wxxowcOdKUKlXKZGdnu/qHDh1qGjdubIwx5ujRoyYgIMC89957rv7ffvvNBAUFmQEDBhhjjPn555+Nr6+v+eWXX9z207JlS5OcnGyMMWb27NlGktm6datnHgTgEnHNCvCSDRs2qKCgQN26dVNeXp62bdumnJwclS1b1m3ciRMntGfPHtd6lSpVVLp0add6dHS0MjIyJP1x1nXy5Ek1btzY1V+mTBldd911rvVvv/1W+fn5qlGjhtt+8vLy3PYdEBCgevXqeeZggUtEWAElrFq1anI4HNq5c6db+7XXXitJCgoKkvTHV6NHR0e7XTs6Izw83PWzv7+/W5/D4Tjnt9T+VU5Ojnx9fbV58+ZC3/IcEhLi+jkoKMj18iTgbYQVUMLKli2rO+64Q6+88ooeffTRs163atCggdLS0uTn56cqVaoUa19Vq1aVv7+/1q9fr8qVK0uSfv/9d/34449q1qyZJKl+/frKz89XRkaGbr311mLtB7jcuMECuAxeffVVnT59WjfddJPeffdd7dixQzt37tRbb72lH374Qb6+vkpISFB8fLw6dOiglJQU7du3T1999ZWeeuopbdq06YL2ExISol69emno0KFavny5tm/fru7du7vdcl6jRg1169ZNDz74oD788EPt3btXGzZs0Pjx47Vo0aKSegiAS8KZFXAZVK1aVVu2bNG4ceOUnJys//73v3I6napdu7Yef/xx9e3bVw6HQ4sXL9ZTTz2lHj166NChQ4qKitJtt92myMjIC97X888/r5ycHLVr106lS5fWkCFDlJWV5TZm9uzZGjt2rIYMGaJffvlF5cqV080336y2bdt6+tABj3AYY4y3iwAA4Fx4GRAAYD3CCgBgPcIKAGA9wgoAYD3CCgBgPcIKAGA9wgoAYD3CCgBgPcIKAGA9wgoAYD3CCgBgvf8Pm8aqvOxBlssAAAAASUVORK5CYII=\n" + }, + "metadata": {} + } + ] + }, + { + "cell_type": "code", + "source": [ + "# Plot the distribution of Preference\n", + "plt.subplot(1, 2, 2)\n", + "sns.countplot(data=df, x='Preference')\n", + "plt.title('Distribution of Preference')\n", + "plt.tight_layout()\n", + "plt.show()" + ], + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 487 + }, + "id": "_S_i8CjPls3C", + "outputId": "9d1faedf-cf47-4966-a901-4ae94402d3da" + }, + "execution_count": 8, + "outputs": [ + { + "output_type": "display_data", + "data": { + "text/plain": [ + "
" + ], + "image/png": "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\n" + }, + "metadata": {} + } + ] + }, + { + "cell_type": "code", + "source": [ + "# Create a contingency table\n", + "contingency_table = pd.crosstab(df['Gender'], df['Preference'])" + ], + "metadata": { + "id": "0cixiOUClOcv" + }, + "execution_count": 9, + "outputs": [] + }, + { + "cell_type": "code", + "source": [ + "# Plot the heatmap of the contingency table\n", + "plt.figure(figsize=(8, 6))\n", + "sns.heatmap(contingency_table, annot=True, fmt='d', cmap='YlGnBu')\n", + "plt.title('Contingency Table Heatmap')\n", + "plt.show()\n" + ], + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 564 + }, + "id": "6DqnM9_Rl4KT", + "outputId": "128ad09f-a0a1-4883-fcdf-85940bd9be80" + }, + "execution_count": 10, + "outputs": [ + { + "output_type": "display_data", + "data": { + "text/plain": [ + "
" + ], + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAo0AAAIjCAYAAABmuyHTAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAABauklEQVR4nO3deVxV1f7/8fcB5IAg4ICgqSiSOJvDlSy9WmpqZmqmxXVAMyuHcog0rBwryrLMLKfK4V7LtMyfZWlqpjlmTmGaCmqkgRMhgooK+/dHD8+3E+gG9HiOnNfzPvbjwVl777U/Z4v5uZ+19toWwzAMAQAAANfg4ewAAAAA4PpIGgEAAGCKpBEAAACmSBoBAABgiqQRAAAApkgaAQAAYIqkEQAAAKZIGgEAAGCKpBEAAACmSBoBJ2rVqpVatWrl7DCKrb59+8rf379Ax1osFo0bN86xAQHALYykEW4jKSlJTz75pMLDw+Xj46OAgADdfffdeuedd3T+/HmHXXfv3r0aN26cjhw54rBrFCetWrWSxWIx3Vw9watataoeeOCBfPd9//33slgs+uyzzxx2/XPnzmncuHH6/vvvHXYNAO7Fy9kBADfD8uXL1b17d1mtVvXp00d169bVxYsXtWHDBj333HP65ZdfNGvWLIdce+/evRo/frxatWqlqlWr2u379ttvHXLNW9kLL7ygxx9/3PZ527Ztmjp1qkaPHq1atWrZ2uvXr++M8G4Z586d0/jx4yWJajaAG4KkEcXe4cOH9eijjyosLEzfffedKlSoYNs3ePBgJSYmavny5U6Jzdvb2ynXdWVt27a1++zj46OpU6eqbdu2JD8A4EQMT6PYmzRpkjIzM/Xhhx/aJYxXREREaOjQobbPly9f1sSJE1W9enVZrVZVrVpVo0ePVnZ2tt15V4YfN2zYoKZNm8rHx0fh4eGaP3++7Zi5c+eqe/fukqR77rnHNrR6Zcjwn3MarwxbLlq0SK+88ooqVaokHx8ftW7dWomJiXlif++99xQeHi5fX181bdpUP/zwQ77zJLOzszV27FhFRETIarWqcuXKGjlyZJ7vZLFYNGTIEC1dulR169aV1WpVnTp1tGLFijzXPnbsmPr376+KFSvKarWqWrVqGjhwoC5evKhDhw7JYrHo7bffznPepk2bZLFY9Mknn+TZV1A//PCDunfvripVqti+z/Dhw686zeDQoUNq166d/Pz8VLFiRU2YMEGGYZhe59ixY3rssccUEhJiuxcfffRRkeO+Ede7ePGixowZo8aNGyswMFB+fn5q0aKF1q5dazvmyJEjCg4OliSNHz8+z5D+lbmeycnJeuCBB+Tv76/bbrtN7733niQpISFB9957r/z8/BQWFqaPP/7YLoa0tDTFxsaqXr168vf3V0BAgDp06KDdu3fbHXfl9/nTTz/V6NGjFRoaKj8/Pz344IP6/fffb/TtA+BgVBpR7H355ZcKDw/XXXfdVaDjH3/8cc2bN08PP/ywnn32WW3dulXx8fHat2+fvvjiC7tjExMT9fDDD6t///6KiYnRRx99pL59+6px48aqU6eO/v3vf+uZZ57JM7z692HW/Lz22mvy8PBQbGyszpw5o0mTJqlnz57aunWr7Zjp06dryJAhatGihYYPH64jR46oS5cuKl26tCpVqmQ7Ljc3Vw8++KA2bNigJ554QrVq1VJCQoLefvttHThwQEuXLrW79oYNG7RkyRINGjRIpUqV0tSpU9WtWzclJyerbNmykqQ//vhDTZs2VXp6up544gnVrFlTx44d02effaZz584pPDxcd999txYsWKDhw4fb9b9gwQKVKlVKnTt3LtCfR34WL16sc+fOaeDAgSpbtqx+/PFHvfvuuzp69KgWL15sd2xOTo7at2+vO++8U5MmTdKKFSs0duxYXb58WRMmTLjqNY4fP64777zTlkgHBwfrm2++Uf/+/ZWRkaFhw4aZxnnp0iWdOnUqT/uZM2eKfL2MjAx98MEHio6O1oABA3T27Fl9+OGHateunX788UfdcccdCg4O1vTp0zVw4EB17dpVDz30kCT7If2cnBx16NBB//73vzVp0iQtWLBAQ4YMkZ+fn1544QX17NlTDz30kGbMmKE+ffqoWbNmqlatmqS/kvClS5eqe/fuqlatmo4fP66ZM2eqZcuW2rt3rypWrGj33V555RVZLBaNGjVKJ06c0JQpU9SmTRvt2rVLvr6+pvcRgIswgGLszJkzhiSjc+fOBTp+165dhiTj8ccft2uPjY01JBnfffedrS0sLMyQZKxfv97WduLECcNqtRrPPvusrW3x4sWGJGPt2rV5rteyZUujZcuWts9r1641JBm1atUysrOzbe3vvPOOIclISEgwDMMwsrOzjbJlyxr/+te/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HR2tQYMG6ZtvvrH19+yzzyolJUUxMTHy8PDQY489pq5du+rMmTNFjjEgIEBffvmlBg4cqDvuuEP16tXTmDFj9J///MduniOAvPz9/RUVFaW3335bSUlJunTpkipXrqwBAwbY/m5L0vjx47Vw4UINGjRIFSpU0CeffKLatWtLkkqWLKmVK1dq6NCh+te//qWSJUuqW7dueuutt0yvP2HCBD355JOqXr26srOzZRiGcnJyNHjwYB09elQBAQFq37693n77bYfdA6A4sxjGPxa2A2BnwYIF6tevn86cOSNfX19nhwPc0iwWi7744gu7130CuDVQaQT+Yf78+QoPD9dtt92m3bt3a9SoUerRowcJIwDArZE0Av+QmpqqMWPGKDU1VRUqVFD37t31yiuvODssAACciuFpAAAAmOLpaQAAAJgiaQQAAIApkkYAAACYImkEAACAKZJGAAAAmCJpBOAU48aNU0hIiCwWi5YuXerscAAAJkgaAVxT3759ZbFYZLFY5O3trYiICE2YMEGXL18ucp/79u3T+PHjNXPmTKWkpKhDhw43MGIAgCOwuDcAU+3bt9ecOXOUnZ2tr7/+WoMHD1aJEiUUFxdnd9zFixfl7e1t2l9SUpIkqXPnzrJYLEWO69KlSypRokSRzwcAFByVRgCmrFarQkNDFRYWpoEDB6pNmzZatmyZ+vbtqy5duuiVV15RxYoVFRkZKUn6/fff1aNHDwUFBalMmTLq3Lmzjhw5IumvYelOnTpJkjw8POySxg8++EC1atWSj4+Patasqffff9+278iRI7JYLPr000/VsmVL+fj4aMGCBQU+b8mSJbrnnntUsmRJNWjQQJs3b7b7jhs3blSrVq1UsmRJlS5dWu3atdOff/4pScrNzVV8fLyqVasmX19fNWjQQJ999tmNv9EA4MKoNAIoNF9fX50+fVqStGbNGgUEBGjVqlWS/qr+tWvXTs2aNdMPP/wgLy8vvfzyy2rfvr1+/vlnxcbGqmrVqurXr59SUlJsfS5YsEBjxozRtGnT1LBhQ+3cuVMDBgyQn5+fYmJibMc9//zzmjx5sho2bGhLHAty3gsvvKA333xTt99+u1544QVFR0crMTFRXl5e2rVrl1q3bq3HHntM77zzjry8vLR27Vrl5ORIkuLj4/W///1PM2bM0O23367169erV69eCg4OVsuWLW/GLQcA5zMA4BpiYmKMzp07G4ZhGLm5ucaqVasMq9VqxMbGGjExMUZISIiRnZ1tO/6///2vERkZaeTm5trasrOzDV9fX2PlypWGYRjGF198YfzzPz/Vq1c3Pv74Y7u2iRMnGs2aNTMMwzAOHz5sSDKmTJlSpPM++OAD2/5ffvnFkGTs27fPMAzDiI6ONu6+++58v/+FCxeMkiVLGps2bbJr79+/vxEdHZ3vOQBQHFFpBGDqq6++kr+/vy5duqTc3Fz95z//0bhx4zR48GDVq1fPbh7j7t27lZiYqFKlStn1ceHCBdtcxn/KyspSUlKS+vfvrwEDBtjaL1++rMDAQLtjmzRpUqTz6tevb/u5QoUKkqQTJ06oZs2a2rVrl7p3755vbImJiTp37pzatm1r137x4kU1bNgw33MAoDgiaQRg6p577tH06dPl7e2tihUrysvr//7T4efnZ3dsZmamGjdubJtv+HfBwcH59p+ZmSlJmj17tqKiouz2eXp62n3++/UKc97fH5i5Mo8yNzdX0l/D7Vdz5RrLly/XbbfdZrfParVe9TwAKG5IGgGY8vPzU0RERIGObdSokT799FOVL19eAQEBBTonJCREFStW1KFDh9SzZ88Cx1XU8/6pfv36WrNmjcaPH59nX+3atWW1WpWcnMz8RQBujaQRwA3Vs2dPvfHGG+rcubMmTJigSpUq6bffftOSJUs0cuRIVapUKd/zxo8fr2eeeUaBgYFq3769srOz9dNPP+nPP//UiBEjrnq9op73d3FxcapXr54GDRqkp556St7e3lq7dq26d++ucuXKKTY2VsOHD1dubq6aN2+uM2fOaOPGjQoICLB72AYAijOSRgA3VMmSJbV+/XqNGjVKDz30kM6ePavbbrtNrVu3vmbl8fHHH1fJkiX1xhtv6LnnnpOfn5/q1aunYcOGXfN6RT3v72rUqKFvv/1Wo0ePVtOmTeXr66uoqChFR0dLkiZOnKjg4GDFx8fr0KFDCgoKUqNGjTR69OgCXwMAbnUWwzAMZwcBAAAA18bi3gAAADBF0ggAAABTJI0AAAAwRdIIAAAAUySNAAAAMEXSCAAAAFMkjQAAADBF0ggAAABTJI0AAAAwRdIIAAAAUySNAAAAMPX/Aa5o6PHHAW4xAAAAAElFTkSuQmCC\n" + }, + "metadata": {} + } + ] + }, + { + "cell_type": "code", + "source": [ + "# Step 3: Apply the Chi-Square Test for Independence\n", + "\n", + "# Perform the Chi-Square Test for Independence\n", + "chi2, p, dof, expected = chi2_contingency(contingency_table)\n" + ], + "metadata": { + "id": "8FqBbK7tl9F2" + }, + "execution_count": 11, + "outputs": [] + }, + { + "cell_type": "code", + "source": [ + "print(f\"Chi-Square Statistic: {chi2}\")\n", + "print(f\"P-Value: {p}\")\n", + "print(f\"Degrees of Freedom: {dof}\")\n", + "print(\"Expected Frequencies:\")\n", + "print(expected)" + ], + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "cXYsusIil9I1", + "outputId": "4c9b4a1f-8e90-4e54-ea58-61d8cfa649d4" + }, + "execution_count": 12, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "Chi-Square Statistic: 0.08000800080008001\n", + "P-Value: 0.7772865686501679\n", + "Degrees of Freedom: 1\n", + "Expected Frequencies:\n", + "[[50.5 49.5]\n", + " [50.5 49.5]]\n" + ] + } + ] + }, + { + "cell_type": "code", + "source": [ + "# Interpret the p-value\n", + "alpha = 0.05\n", + "if p < alpha:\n", + " print(\"There is a significant association between Gender and Preference.\")\n", + "else:\n", + " print(\"There is no significant association between Gender and Preference.\")" + ], + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "WWOQYrVvl9Lm", + "outputId": "2244df14-24ee-4dca-f87b-a314d03b90b8" + }, + "execution_count": 13, + "outputs": [ + { + "output_type": "stream", + "name": "stdout", + "text": [ + "There is no significant association between Gender and Preference.\n" + ] + } + ] + }, + { + "cell_type": "code", + "source": [], + "metadata": { + "id": "b0mEsXGul9OU" + }, + "execution_count": null, + "outputs": [] + }, + { + "cell_type": "code", + "source": [], + "metadata": { + "id": "BCmH41zPl9Rn" + }, + "execution_count": null, + "outputs": [] + }, + { + "cell_type": "code", + "source": [], + "metadata": { + "id": "uJBwT45nl9VG" + }, + "execution_count": null, + "outputs": [] + } + ] +} \ No newline at end of file diff --git a/Chi-Square Test/dataset.csv b/Chi-Square Test/dataset.csv new file mode 100644 index 0000000000..c650285842 --- /dev/null +++ b/Chi-Square Test/dataset.csv @@ -0,0 +1,201 @@ +Gender,Preference +Male,Sports +Female,Reading +Male,Sports +Male,Sports +Male,Reading +Female,Sports +Male,Reading +Male,Reading +Male,Reading +Female,Sports +Male,Sports +Male,Sports +Male,Sports +Male,Sports +Female,Sports +Male,Sports +Female,Reading +Female,Sports +Female,Reading +Male,Sports +Female,Sports +Male,Sports +Female,Reading +Female,Reading +Female,Reading +Female,Reading +Female,Sports +Female,Reading +Female,Sports +Female,Sports +Male,Reading +Male,Reading +Female,Reading +Female,Reading +Female,Reading +Male,Reading +Female,Reading +Male,Reading +Male,Sports +Male,Reading +Male,Reading +Male,Sports +Female,Reading +Female,Sports +Female,Sports +Female,Reading +Female,Sports +Male,Sports +Female,Sports +Female,Sports +Male,Reading +Female,Sports +Male,Reading +Female,Sports +Male,Sports +Female,Sports +Female,Sports +Male,Reading +Male,Reading +Male,Sports +Male,Sports +Male,Reading +Male,Sports +Male,Sports +Male,Sports +Female,Reading +Female,Reading +Male,Reading +Female,Sports +Female,Sports +Female,Reading +Female,Reading +Male,Reading +Female,Reading +Male,Sports +Female,Reading +Female,Sports +Female,Reading +Male,Sports +Female,Reading +Male,Reading +Female,Reading +Male,Reading +Female,Sports +Male,Reading +Male,Sports +Female,Sports +Male,Sports +Female,Sports +Female,Reading +Female,Sports +Female,Sports +Female,Sports +Female,Reading +Female,Reading +Female,Reading +Female,Reading +Female,Sports +Female,Sports +Male,Reading +Male,Sports +Female,Sports +Female,Sports +Female,Reading +Female,Reading +Female,Sports +Female,Reading +Female,Reading +Female,Reading +Male,Reading +Female,Reading +Male,Sports +Female,Reading +Female,Sports +Male,Sports +Female,Reading +Male,Sports +Female,Sports +Female,Sports +Male,Reading +Female,Reading +Male,Sports +Female,Reading +Male,Reading +Male,Reading +Female,Reading +Female,Sports +Male,Sports +Female,Reading +Female,Reading +Female,Sports +Male,Sports +Male,Reading +Male,Sports +Male,Reading +Male,Reading +Male,Sports +Male,Sports +Male,Reading +Male,Reading +Female,Sports +Male,Reading +Female,Sports +Female,Reading +Female,Sports +Male,Sports +Male,Sports +Male,Reading +Male,Reading +Female,Sports +Male,Reading +Male,Sports +Male,Sports +Male,Reading +Male,Reading +Female,Sports +Male,Reading +Female,Reading +Male,Sports +Female,Sports +Male,Reading +Male,Sports +Female,Sports +Female,Reading +Female,Sports +Male,Sports +Female,Reading +Male,Reading +Male,Sports +Female,Sports +Female,Reading +Male,Reading +Male,Reading +Female,Reading +Female,Sports +Female,Reading +Male,Reading +Male,Sports +Male,Reading +Male,Sports +Male,Reading +Male,Reading +Female,Reading +Male,Sports +Male,Sports +Male,Reading +Female,Sports +Male,Sports +Male,Sports +Female,Sports +Male,Sports +Male,Sports +Male,Reading +Male,Reading +Male,Sports +Female,Reading +Female,Reading +Female,Reading +Male,Reading +Male,Sports diff --git a/Chi-Square Test/readme.md b/Chi-Square Test/readme.md new file mode 100644 index 0000000000..fed69302ed --- /dev/null +++ b/Chi-Square Test/readme.md @@ -0,0 +1,99 @@ +# Chi-Square Test for Independence + +## Overview +The Chi-Square Test for Independence is a statistical test used to determine whether there is a significant association between two categorical variables. It is based on the comparison of observed frequencies in the data with the frequencies that would be expected if the variables were independent. + +## Mathematical Logic +The Chi-Square statistic (χ²) is calculated using the following formula: + +$$ +χ² = Σ((O_i - E_i)² / E_i) +$$ + +Where: +- **O_i**: Observed frequency for the i-th category +- **E_i**: Expected frequency for the i-th category + +The expected frequency (E_i) for each category is calculated under the assumption of independence between the variables, using: + +$$ +E_i = \frac{(Row \, Total \, * \, Column \, Total)}{Grand \, Total} +$$ + +## Steps to Perform Chi-Square Test +1. **Create a Contingency Table**: Summarize the frequencies of the two categorical variables in a matrix format. +2. **Calculate Expected Frequencies**: Compute the expected frequencies for each cell of the table assuming the variables are independent. +3. **Compute the Chi-Square Statistic**: Use the formula to calculate the χ² value. +4. **Determine the Degrees of Freedom (df)**: Calculated as (number of rows - 1) * (number of columns - 1). +5. **Find the P-Value**: Compare the χ² value with the Chi-Square distribution table to find the p-value. +6. **Interpret the Result**: If the p-value is less than the significance level (typically 0.05), reject the null hypothesis of independence. + +## Example Calculation +Consider a dataset with two variables: Gender (Male, Female) and Preference (Sports, Reading). Suppose we have the following observed frequencies in a contingency table: + +| | Sports | Reading | Row Total | +|-------------|--------|---------|-----------| +| Male | 30 | 20 | 50 | +| Female | 20 | 30 | 50 | +| Column Total| 50 | 50 | 100 | + +1. **Expected Frequencies**: + - E(Male, Sports) = (50 * 50) / 100 = 25 + - E(Male, Reading) = (50 * 50) / 100 = 25 + - E(Female, Sports) = (50 * 50) / 100 = 25 + - E(Female, Reading) = (50 * 50) / 100 = 25 + +2. **Chi-Square Statistic**: +$$ +χ² = Σ((O_i - E_i)² / E_i) = ((30 - 25)² / 25) + ((20 - 25)² / 25) + ((20 - 25)² / 25) + ((30 - 25)² / 25) +$$ + +$$ +χ² = (5² / 25) + ((-5)² / 25) + ((-5)² / 25) + (5² / 25) = 4 +$$ + +3. **Degrees of Freedom**: + - df = (2-1)(2-1) = 1 + +4. **P-Value**: Using the Chi-Square distribution table or a calculator, find the p-value corresponding to χ² = 4 and df = 1. + +## Uses of Chi-Square Test +The Chi-Square Test for Independence is widely used in various fields, including: +1. **Biology**: To determine if there is an association between different genetic traits. +2. **Social Sciences**: To analyze survey data and examine relationships between demographic variables. +3. **Market Research**: To evaluate consumer preferences and behaviors based on categorical variables like gender, age group, etc. +4. **Medical Research**: To investigate the relationship between risk factors and health outcomes. + +## Interpretation +- **P-Value < 0.05**: Reject the null hypothesis; there is a significant association between the variables. +- **P-Value ≥ 0.05**: Fail to reject the null hypothesis; no significant association exists between the variables. + +This test allows researchers and analysts to make informed decisions based on the relationships between categorical variables in their data. + +## Coding Implementation +### 1. Generate Dataset +First, we generate a dataset with 200 samples, each having two categorical variables: Gender and Preference. The dataset is saved to a CSV file for further analysis. + +```python +import pandas as pd +import numpy as np + +# Seed for reproducibility +np.random.seed(42) + +# Generate sample data +n_samples = 200 +genders = np.random.choice(['Male', 'Female'], size=n_samples) +preferences = np.random.choice(['Sports', 'Reading'], size=n_samples) + +# Create a DataFrame +data = { + 'Gender': genders, + 'Preference': preferences +} +df = pd.DataFrame(data) + +# Save DataFrame to CSV in the current environment +csv_file_path = 'large_sample_data.csv' +df.to_csv(csv_file_path, index=False) +print(f"CSV file created at: {csv_file_path}") diff --git a/Chi-Square Test/requirement.txt b/Chi-Square Test/requirement.txt new file mode 100644 index 0000000000..d17de6685c --- /dev/null +++ b/Chi-Square Test/requirement.txt @@ -0,0 +1,5 @@ +pandas==1.5.3 +numpy==1.24.2 +scipy==1.10.0 +matplotlib==3.7.1 +seaborn==0.12.2