From 3b44f209e5518f86cfb36879a726f55fd77d72e3 Mon Sep 17 00:00:00 2001
From: am2-liyanaarac <akash2.liyanaarachchi@live.uwe.ac.uk>
Date: Sun, 16 Apr 2023 15:32:07 +0100
Subject: [PATCH] FR 11-13 done with explanation

---
 ..._Programming_With_Libraries_Template.ipynb | 222 ++++++++++++++----
 1 file changed, 173 insertions(+), 49 deletions(-)

diff --git a/UFCFVQ-15-M_Python_Programming_With_Libraries_Template.ipynb b/UFCFVQ-15-M_Python_Programming_With_Libraries_Template.ipynb
index f18f253..ced66f4 100644
--- a/UFCFVQ-15-M_Python_Programming_With_Libraries_Template.ipynb
+++ b/UFCFVQ-15-M_Python_Programming_With_Libraries_Template.ipynb
@@ -23,7 +23,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 21,
+   "execution_count": 3,
    "metadata": {
     "deletable": false
    },
@@ -80,6 +80,7 @@
     "import matplotlib.pyplot as plt\n",
     "import seaborn as sns\n",
     "from scipy import stats\n",
+    "from scipy.stats import ks_2samp\n",
     "\n",
     "# Reading the csv files and passing them to dataframes\n",
     "df_students = pd.read_csv('task2a.csv')\n",
@@ -112,7 +113,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 2,
+   "execution_count": 4,
    "metadata": {
     "deletable": false
    },
@@ -169,7 +170,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 3,
+   "execution_count": 5,
    "metadata": {
     "deletable": false
    },
@@ -226,7 +227,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 11,
+   "execution_count": 15,
    "metadata": {
     "deletable": false
    },
@@ -243,19 +244,25 @@
      "name": "stdout",
      "output_type": "stream",
      "text": [
-      "Correlation Coefficient between Click Events and Score: 0.28\n"
+      "Correlation Coefficient between Click Events and Score: 0.28 \n",
+      "\n",
+      "Explanation  of findings: \n",
+      " \n",
+      "    It was difficult to discern a clear pattern in the data when I attempted to visualise the relationship between click events and scores using various types of plots due to the high density of data points. However, I utilised a scatter plot with each dot's transparency set to 0.2. Because of this, I can observe the Visualization's density as well as the data's distribution.\n",
+      "    \n",
+      "    As can be seen in the graph, there is a high density between 0 and 5000 click events, and the students earned more than 60% of marks on their exams. This visualisation illustrates a weakly positive correlation between click events and scores. This indicates that as students' engagement (as measured by click events) increases, their achievement (as measured by scores) tends to increase as well, though not significantly.\n",
+      "    \n",
+      "    According to the plot, many students have superior grades (>60) despite having a small number of click events. Nonetheless, there are a few students with greater click events who scored above 80%.\n",
+      "    \n",
+      "    According to the calculated correlation coefficient of 0.28, a positive but faint correlation exists between click events and scores.\n",
+      "    \n",
+      "    In conclusion, the weak positive correlation between click events and scores indicates that there may be a weak relationship between engagement and achievement.\n",
+      "\n"
      ]
-    },
-    {
-     "data": {
-      "text/plain": "\"\\nIt was difficult to discern a clear pattern in the data when I attempted to visualise the relationship between click events and scores using various types of plots due to the high density of data points. However, I utilised a scatter plot with each dot's transparency set to 0.2. Because of this, I can observe the Visualization's density as well as the data's distribution.\\n\\nAs can be seen in the graph, there is a high density between 0 and 5000 click events, and the students earned more than 60% of marks on their exams. This visualisation illustrates a weakly positive correlation between click events and scores. This indicates that as students' engagement (as measured by click events) increases, their achievement (as measured by scores) tends to increase as well, though not significantly.\\n\\nAccording to the plot, many students have superior grades (>60) despite having a small number of click events. Nonetheless, there are a few students with greater click events who scored above 80%.\\n\\nAccording to the calculated correlation coefficient of 0.28, a positive but faint correlation exists between click events and scores.\\n\\nIn conclusion, the weak positive correlation between click events and scores indicates that there may be a weak relationship between engagement and achievement.\\n\\n\""
-     },
-     "execution_count": 11,
-     "metadata": {},
-     "output_type": "execute_result"
     }
    ],
    "source": [
+    "# draw scatter plot for see the relationship between click events and scores\n",
     "plt.figure(figsize=(12, 8))\n",
     "sns.scatterplot(data=filtered_df, x='click_events', y='score', alpha=0.2)\n",
     "plt.xlabel('Click Events')\n",
@@ -264,21 +271,24 @@
     "plt.show()\n",
     "\n",
     "correlation = filtered_df['click_events'].corr(filtered_df['score'])\n",
-    "print(f\"Correlation Coefficient between Click Events and Score: {correlation:.2f}\")\n",
+    "print(f\"Correlation Coefficient between Click Events and Scores: {correlation:.2f} \\n\")\n",
     "\n",
     "\n",
     "#Explanation of the findings\n",
     "\n",
-    "# It was difficult to discern a clear pattern in the data when I attempted to visualise the relationship between click events and scores using various types of plots due to the high density of data points. However, I utilised a scatter plot with each dot's transparency set to 0.2. Because of this, I can observe the Visualization's density as well as the data's distribution.\n",
-    "#\n",
-    "# As can be seen in the graph, there is a high density between 0 and 5000 click events, and the students earned more than 60% of marks on their exams. This visualisation illustrates a weakly positive correlation between click events and scores. This indicates that as students' engagement (as measured by click events) increases, their achievement (as measured by scores) tends to increase as well, though not significantly.\n",
-    "#\n",
-    "# According to the plot, many students have superior grades (>60) despite having a small number of click events. Nonetheless, there are a few students with greater click events who scored above 80%.\n",
-    "#\n",
-    "# According to the calculated correlation coefficient of 0.28, a positive but faint correlation exists between click events and scores.\n",
-    "#\n",
-    "# In conclusion, the weak positive correlation between click events and scores indicates that there may be a weak relationship between engagement and achievement.\n",
-    "\n"
+    "fr10_exp = \"\"\"\n",
+    "    It was difficult to discern a clear pattern in the data when I attempted to visualise the relationship between click events and scores using various types of plots due to the high density of data points. However, I utilised a scatter plot with each dot's transparency set to 0.2. Because of this, I can observe the Visualization's density as well as the data's distribution.\n",
+    "\n",
+    "    As can be seen in the graph, there is a high density between 0 and 5000 click events, and the students earned more than 60% of marks on their exams. This visualisation illustrates a weakly positive correlation between click events and scores. This indicates that as students' engagement (as measured by click events) increases, their achievement (as measured by scores) tends to increase as well, though not significantly.\n",
+    "\n",
+    "    According to the plot, many students have superior grades (>60) despite having a small number of click events. Nonetheless, there are a few students with greater click events who scored above 80%.\n",
+    "\n",
+    "    According to the calculated correlation coefficient of 0.28, a positive but faint correlation exists between click events and scores.\n",
+    "\n",
+    "    In conclusion, the weak positive correlation between click events and scores indicates that there may be a weak relationship between engagement and achievement.\n",
+    "\"\"\"\n",
+    "\n",
+    "print(f\"Explanation  of findings: \\n {fr10_exp}\")\n"
    ]
   },
   {
@@ -302,7 +312,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 33,
+   "execution_count": 23,
    "metadata": {
     "deletable": false
    },
@@ -311,37 +321,57 @@
      "name": "stdout",
      "output_type": "stream",
      "text": [
-      "t-statistic: 40.870280915452156\n",
-      "p-value: 0.0\n"
+      "Independent Two-Sample t-test Statistic: 123.15732942753041\n",
+      "P-value:  0.0000 \n",
+      "\n",
+      "Samples are likely drawn from different distributions (reject H0 - SIGNIFICANT) \n",
+      "\n",
+      "Explanation  of findings: \n",
+      " \n",
+      "    I performed a t-test to test if there is any statistically significant relation between engagement and attainment. For the samples. According to the test, I got 0.000 as the p-value.\n",
+      "\n",
+      "    The p-value is less than chosen significant level (which means 0.05) and I can conclude that there is a statistically significant difference between the attainment levels of students with engagement (click events) which implies that engagement does have some effect on levels of attainment. This means I cannot reject the null hypothesis.\n",
+      "\n",
+      "    However, the p-value of 0.000 does not imply that the correlation between click events and the scores is strong. It means according to statistical analysis, the likelihood of detecting any correlation between click events and scores in the observed data is exceedingly low.Therefore, I have evidence to suggest that there is some correlation between the click events and scores.\n",
+      "    \n"
      ]
     }
    ],
    "source": [
     "# I am taking the hypothesis as follows\n",
     "#\n",
-    "# H0 -> Click events do not have  effect on scores\n",
-    "# HA -> Click events do have some effect on scores\n",
+    "# H0 -> Click events do not have significant effect on scores\n",
+    "# HA -> Click events do have significant effect on scores\n",
     "\n",
-    "# In order to do a hypothesis test, we need to have two group of students.\n",
-    "# We use the median value of click events as a limit or the threshold to divide the students into two groups, high and low engagement or the click events.\n",
+    "# I am taking two samples which are click events and score to do the t-test\n",
+    "click_events = filtered_df['click_events']\n",
+    "score = filtered_df['score']\n",
     "\n",
-    "# get the median of click events\n",
-    "limit = filtered_df['click_events'].median()\n",
+    "# Perform t-test for independent samples\n",
+    "t_stat, p_value = stats.ttest_ind(click_events, score, equal_var=False)\n",
     "\n",
-    "# define two group of students\n",
-    "high_click_events_group = filtered_df[filtered_df['click_events'] > limit]['score']\n",
-    "low_click_events_group = filtered_df[filtered_df['click_events'] <= limit]['score']\n",
+    "print(f\"P-value: {p_value: .4f} \\n\")\n",
     "\n",
-    "variable1 = filtered_df['click_events']\n",
-    "variable2 = filtered_df['score']\n",
+    "# Corresponding confidence level: 95%\n",
+    "alpha = 0.05\n",
     "\n",
-    "# Perform t-test for independent samples\n",
-    "t_stat, p_value = stats.ttest_ind(high_click_events_group, low_click_events_group)  # assuming unequal variances\n",
+    "# Output the results\n",
+    "if p_value > alpha:\n",
+    "    print('fail to reject H0. This means there are evidence to say that Click events do not have significant effect on scores \\n')\n",
+    "else:\n",
+    "    print('reject H0. This means there are not enough evidence to say that Click events do not have significant effect on scores\\n')\n",
     "\n",
-    "# Print the results\n",
-    "print(\"t-statistic:\", t_stat)\n",
-    "print(\"p-value:\", p_value)\n",
+    "#Explanation of the findings\n",
+    "\n",
+    "fr11_exp = \"\"\"\n",
+    "    I performed a t-test to test if there is any statistically significant relation between engagement and attainment. For the samples. According to the test, I got 0.000 as the p-value.\n",
+    "\n",
+    "    The p-value is less than chosen significant level (which means 0.05) and I can conclude that there is a statistically significant difference between the attainment levels of students with engagement (click events) which implies that engagement does have some effect on levels of attainment. This means I cannot reject the null hypothesis.\n",
     "\n",
+    "    However, the p-value of 0.000 does not imply that the correlation between click events and the scores is strong. It means according to statistical analysis, the likelihood of detecting any correlation between click events and scores in the observed data is exceedingly low.Therefore, I have evidence to suggest that there is some correlation between the click events and scores.\n",
+    "    \"\"\"\n",
+    "\n",
+    "print(f\"Explanation  of findings: \\n {fr11_exp}\")\n",
     "\n"
    ]
   },
@@ -366,13 +396,59 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 6,
+   "execution_count": 21,
    "metadata": {
     "deletable": false
    },
-   "outputs": [],
+   "outputs": [
+    {
+     "data": {
+      "text/plain": "<Figure size 800x600 with 1 Axes>",
+      "image/png": "iVBORw0KGgoAAAANSUhEUgAAArQAAAIhCAYAAAC/lSkqAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAABLbklEQVR4nO3dd3wUdf7H8fembQIJKKEIqEgxCIGEGEQOQRBCUSkaUJEiotI5LGehiOiBRkDK0Zsi7cCDgA88OUTAxgkiCOGw0hSkSAICCenJ/P7wx8KaDYRsdmeHvJ6PRx6P7Pczu/OZze7wZvY7szbDMAwBAAAAFuVndgMAAACAOwi0AAAAsDQCLQAAACyNQAsAAABLI9ACAADA0gi0AAAAsDQCLQAAACyNQAsAAABLI9ACsJQ/fxdMaftumNK2vTAHrzNYDYEW8ILevXurd+/eZrfh0Lp1aw0fPtzj6/nxxx/1wAMPqEGDBrrvvvsuu+y//vUv1a1bVwMHDnRZP3HihPr376+jR486xjZt2qSXXnrpqvuqW7eupk+fftX3M5Or7f+zr776SnXr1tVXX33lsT727NmjESNGqE2bNoqKilKTJk3Up08f/fvf//bYOl359ddfVbduXa1evdqj6/noo4/Uo0cPp3Ve+hMZGam7775br7zyik6fPu3RXi7o3bt3gT4aNGigVq1a6bXXXtPZs2cdyxbnvf7n99XBgwfVunVrnTt3rsS2AShpAWY3AODaNXPmTB07dkwzZ85UhQoVLrtsYmKiIiIi9Pnnn+v48eOqWrWqU/3LL7/UZ5995jT27rvvFquv9957TzfccEOx7msWV9vvbe+++64mTJigxo0ba+jQobrxxht19uxZbdiwQc8//7x2796tl19+2dQeS9KpU6f02muvaf78+U7jgwYNUqtWrSRJWVlZOnTokKZPn679+/frn//8p1d6q1+/vsaMGeO4nZOTo2+//VaTJ0/W999/r+XLl8tmsxXrsf/8vqpVq5batGmjcePGacKECe60DXgMgRaAx/z++++KiIhQy5YtL7vcgQMHtHv3bi1YsEDPPvus3nvvPT3zzDMe66tRo0Yee+xr1VdffaU333xTvXr1KhBa4+LidNttt2n8+PHq2LHjNfP8zp49W1FRUYqMjHQav/nmm5228c4771RgYKBGjhypffv26dZbb/V4b6GhoQWe5zvuuEPnz5/XtGnTlJSUVKJ/h/79+6tVq1bq06dPgecD8AVMOQB8yI4dO9SrVy9FR0erSZMmeumllxwfY544cUL16tXT0qVLne5z+vRpRUZGOo6q5Ofna968eWrbtq0aNGig9u3ba8mSJZdd77///W917txZUVFRatq0qZ5//nn99ttvl73PyZMnNWLECLVs2VJRUVHq1q2bNm3a5KjXrVtX27dv19dff33Fj4YTExNVvnx5NW3aVO3bt9eqVauUm5vrqK9evVojRoyQJLVp00bDhw9X7969tX37dm3fvt3pY/YffvhBQ4cOVdOmTRUZGakWLVpo3LhxyszMdOrtwpSDCx/Tb926VU888YSio6N11113aeLEicrLy3O6z/LlyzV8+HDFxsaqSZMmjscdP368mjZtqjvvvFOjRo1SVlaW435F+Xv07t1bo0aN0rx589SqVSs1bNhQ3bt31549ewrd/svZv3+/evTooYYNG6pt27ZO6xs2bJjuvvtu5efnO91n1KhRat++faGPOXPmTFWtWlUvvPCCy/pjjz2mNm3aKCMjwzGWlZWlCRMmqGXLlmrQoIE6deqkdevWOd2vdevWmjZtmsaPH69mzZopKipKTz75pH7++Wen5TZs2OB4jT744IP64YcfCvRw5swZvfLKK2rWrJkaNmyohx9+WFu3bnVapm7dupoxY4bi4+MVFRWlGTNmuNye06dPa9WqVerYsWOhz8mlypcvL0lOR0VTU1OVkJCguLg4NWzYUB07dtSqVasc9U2bNhWY/nLgwAFFRUVp5MiRRVrvnzVo0ECSdOzYMZf1K/VU2PuqUqVKatq0qebOnVusvgBPI9ACPuLrr7/W448/ruDgYE2dOlUjR47U9u3b9dhjjykzM1M33HCDmjRpog8//NDpfuvXr5dhGLr//vslSa+++qqmTZumzp07a86cOerQoYPeeOMNzZw50+V6d+7cqRdffFHt2rXT/PnzNWLECG3btk1/+9vfCu01JSVF3bp1044dO/Tss89q+vTpql69uoYMGaK1a9dK+uNj/fr166t+/fp67733HB/R/llubq7Wrl2rjh07KjAwUA8++KCSk5O1efNmxzKtWrXSoEGDJEkzZszQ4MGDNWbMGKfHj4yM1MmTJ9WzZ09lZGTozTff1Pz583X//fdryZIlWrx48WWf/+eff16xsbGaM2eOOnbsqAULFmjlypVOy0ycOFFBQUGaMWOGHnjgAS1ZskQPPPCAjh8/rrfeeku9e/fWqlWrnAJkUf8eH330kTZt2qSXX35ZkydPVkpKiv76178qLy/P5fZfTkJCgho1aqTZs2c7Av2iRYskSd26ddNvv/3mNM82MzNT69ev14MPPujy8c6ePauvv/5abdq0kd1ud7lMQECAZs2apb/85S+S/jipaMiQIVqxYoX69u2r2bNnKyYmRs8++6zef/99p/suXrxYBw8eVEJCgsaNG6e9e/c6zeHcvHmzhg0bprp162rmzJm69957CwTrrKws9enTR5s2bdKzzz6rGTNm6IYbbtBTTz1VINTOmTNHnTp10rRp0woN8Rs2bFBubq7uueeeArX8/Hzl5uYqNzdXmZmZ+uGHHzRr1iw1bdpUderUcTynPXr00AcffKCnnnpKs2bNUmxsrEaNGqU5c+ZI+uM/J507d9bcuXN14MAB5ebm6sUXX1SVKlU0atQol31dyaFDhyRJN910U4FaUXpy9b66oEOHDtq8ebPOnz9frN4AjzIAeFyvXr2MXr16XXaZRx55xOjYsaORm5vrGDt48KBRr149Y+nSpYZhGEZiYqJRt25d4+jRo45levToYTz55JOO5evWrWvMnTvX6bGnTJliNGzY0Dh9+rRhGIZxzz33GC+99JJhGIYxd+5cIyYmxsjKynIs/+mnnxrTp0838vPzXfY6YcIEIzIy0vj111+dxvv06WPcddddRl5eXpG3e9OmTUZERITxv//9zzHWrl07o2/fvk7LJSYmGhEREcaRI0ccY39+/C+++MLo2bOnkZqa6nTfjh07Gk888YTjdkREhDFt2jTDMAxj27ZtRkREhDFlyhSn+7Ru3doYMGCA030eeughx+3c3FyjUaNGRuvWrY2cnByndQ0aNMgwjKL/PXr16mVER0c79b1mzRqn58XV9v/ZhW157bXXnMYHDx5s/OUvfzHy8vKMvLw84+677zZefPFFR33t2rXGbbfdZhw/ftzl43777bdGRESE43V4QX5+vpGTk+P0c+H1u2XLFiMiIsL48MMPne7z/PPPG3fddZfjObvnnnuMe+65x+l1P336dCMiIsLx/MTHxzs994bxx+s2IiLCSExMNAzDMN577z0jIiLC2L17t1N/PXv2NOLj4x1jERERRp8+fQp9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1J4Ke62dOHFCkuf+Iwa4gyO0gJecOHHC5RcBREREOOa/9e/fX3/729/UuXNn5eXl6Z133lFSUpLTWe3+/v66//77tXTpUlWpUkV33nmno1a3bl117txZo0eP1tGjR9WgQQMdOnRIU6ZM0Y033qhbbrmlwPqbNm2qhQsXavjw4ercubNycnK0YMECXXfddWratKnLbenbt6/Wrl2rxx9/XEOHDtV1112n999/X9u2bdMbb7xRpPC1Z88e/fTTTxo9erTLetu2bVW2bFmtWLFC999/v+No58cff6y7775btWvXVrly5bRr1y5t3bpV9evXV1RUlGbNmqV58+apUaNG+uWXXzR37lxlZ2cXay6qu4rz9yiMq+0vzJIlS1S2bFnVr19fH374ob744gtNmDDBaV5l+/btNXbsWO3Zs6fQv8GlWrRoodGjRyshIUG7d+/Wgw8+qJo1ayo9PV3bt29XYmKisrKy9Nhjj0mSWrZsqTvuuEODBw/W4MGDVbt2be3Zs0fTpk1TixYtrvhFG5d67rnn1KdPHw0dOlSPPPKIDh065Dgr/4L4+HgtXbpUffv21cCBA1W1alV9+eWXmj9/vnr16nXFI55/dtddd+k///mPUlNTC3x6cPjwYe3evdtxOyUlRQsWLFBaWpqeeuopRz///Oc/NWTIEA0bNkw33nijNm/erMTERA0dOlTlypVTdna2hg8frtq1a6tfv34KDAxUr169NHfuXMXFxal+/fpX1fOVFKUnSQXeVxemauzcuVMhISGO/6gBvoRAC3jJ4cOHlZCQUGC8W7duatasmZo3b663335bM2bM0LBhwxQYGKjIyEgtXLiwwEkiXbp00aJFi9SxY8cC4TEhIUFz587VihUrdOLECYWHh+u+++7TM8884/IoVcuWLfXWW2/pnXfecZwIFhsbq8WLF+u6665zuS2VKlXS8uXLNWnSJI0bN045OTm67bbbNGvWLLVp06ZIz0diYqL8/f3VoUMHl/WQkBC1b99eq1ev1oEDB3TnnXeqWbNmmjRpkrZu3ap58+apZ8+e2rt3r/r166eEhAQNGDBAv//+uxYvXuy4bmqXLl1ks9k0d+5cnTt3zvGPtrdc7d+jMK62vzDjxo3TggULNHXqVN10002aPHlygaksdrtdTZs21cGDB11OK3GlZ8+eatKkiZYvX66FCxfqxIkT8vf3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\n"
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Explanation  of findings: \n",
+      " \n",
+      "    To find out the correlation between gender and scores, I used a box plot instead of a scatter plot. The reason for choosing box plots is that, box plots are better suited for visualizing the distribution of a continuous variable across different categories of a categorical variable, such as comparing scores across gender, because they provide a clearer and more informative view of the data distribution, handle overlapping data points more effectively, and scale well with large datasets. Box plots are designed to display the distribution of data for categorical variables, making it easy to compare medians, interquartile ranges, and potential outliers across different.\n",
+      "\n",
+      "    As you can see in the box plots, the median score of female is slightly higher than median score of male. since the medians are not significantly different, we don't have strong evidence to conclude that female students getting more score than male students.\n",
+      "\n",
+      "    On other hand, the boxes itself are almost identical and it is not indicating a big difference in score variability between genders. According to the box plot, males have more outlines than females. It indicates that there are more individual data points for males that falls outside the typical range of scores.As I can see in the boxplot, the bottom whisker for females is slightly longer than males, indicating that the range of lower scores is somewhat larger for females.\n",
+      "\n",
+      "    Overall, this observations shows that, although there are some differences between the genders in terms of score distribution, the overall patterns are quite similar. \n",
+      "\n"
+     ]
+    }
+   ],
    "source": [
-    "# replace with your code"
+    "# draw box-plot for see the relationship between gender and scores\n",
+    "plt.figure(figsize=(8, 6))\n",
+    "sns.boxplot(data=filtered_df, x='gender', y='score')\n",
+    "\n",
+    "# labeling axis and title\n",
+    "plt.xlabel('Gender')\n",
+    "plt.ylabel('Score')\n",
+    "plt.title('Levels of Attainment by Gender (Box Plot)')\n",
+    "\n",
+    "plt.show()\n",
+    "\n",
+    "fr12_exp = \"\"\"\n",
+    "    Box plots were chosen because they are better at showing the distribution of a continuous variable across different categories of a categorical variable, like comparing scores by gender. This is because box plots give a clearer and more informative picture of how the data is distributed, handle overlapping data points better, and work well with large datasets.Box plots are made to show how the data for category variables are spread out. This makes it easy to compare medians, inter quartile ranges, and possible outliers across different groups.\n",
+    "\n",
+    "    As you can see in the box plots, the median score of female is slightly higher than median score of male. since the medians are not significantly different, we don't have strong evidence to conclude that female students getting more score than male students.\n",
+    "\n",
+    "    On other hand, the boxes itself are almost identical and it is not indicating a big difference in score variability between genders. According to the box plot, males have more outlines than females. It indicates that there are more individual data points for males that falls outside the typical range of scores.As I can see in the boxplot, the bottom whisker for females is slightly longer than males, indicating that the range of lower scores is somewhat larger for females.\n",
+    "\n",
+    "    Overall, this observations shows that, although there are some differences between the genders in terms of score distribution, the overall patterns are quite similar.\n",
+    "\"\"\"\n",
+    "\n",
+    "print(f\"Explanation  of findings: \\n {fr12_exp}\")\n"
    ]
   },
   {
@@ -396,13 +472,61 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 7,
+   "execution_count": 28,
    "metadata": {
     "deletable": false
    },
-   "outputs": [],
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "P-value: 0.5073 \n",
+      "\n",
+      "fail to reject H0. This means that there are evidence to say there is no statistically significant difference between the attainment of male and female students  \n",
+      "\n",
+      "Explanation  of findings: \n",
+      " \n",
+      "    Bases on the p-value from above t-test (which is 0.5073) I cannot reject the null hypothesis that there is no significant difference between the male and female students with their scores. This p-value is greater than the typical significance level of 0.05 (which is alpha2 here), which means that there is not enough evidence to conclude that there is a statistically significant difference in the attainment levels of male and female students.\n",
+      "\n",
+      "    After analyzing the relevant data and employing statistical assessment, it appears that an individual's gender has minimal influence on their test scores. Nevertheless, it is important to realize that in not rejecting the null hypothesis, one does not necessarily prove its validity; rather, it implies a lack of conclusive proof endorsing marked differences between groups based on present findings.\n",
+      "\n"
+     ]
+    }
+   ],
    "source": [
-    "# replace with your code"
+    "# We can use independent two-sample t-test to identify that is there any statistically significant difference between the attainment of male and female students.\n",
+    "\n",
+    "# I am taking the hypothesis as follows\n",
+    "#\n",
+    "# H0 -> There is no statistically significant difference between the attainment of male and female students\n",
+    "# HA -> There is a statistically significant difference between the attainment of male and female students\n",
+    "\n",
+    "# divide dataset into two group, which means male and female with score\n",
+    "male_students = filtered_df[filtered_df['gender'] == 'M']['score']\n",
+    "female_students = filtered_df[filtered_df['gender'] == 'F']['score']\n",
+    "\n",
+    "#Perform the t-test\n",
+    "t_stat_for_gender, p_value_for_gender = stats.ttest_ind(male_students, female_students, equal_var=False)\n",
+    "print(f\"P-value: {p_value_for_gender:.4f} \\n\")\n",
+    "\n",
+    "# Corresponding confidence level: 95%\n",
+    "alpha2 = 0.05\n",
+    "\n",
+    "# Output the results\n",
+    "if p_value_for_gender > alpha2:\n",
+    "    print('fail to reject H0. This means that there are evidence to say there is no statistically significant difference between the attainment of male and female students  \\n')\n",
+    "else:\n",
+    "    print('reject H0. This means we have not enough evidence to reject the statement that  there is no statistically significant difference between the attainment of male and female students \\n')\n",
+    "\n",
+    "\n",
+    "fr13_exp = \"\"\"\n",
+    "    Bases on the p-value from above t-test (which is 0.5073) I cannot reject the null hypothesis that there is no significant difference between the male and female students with their scores. This p-value is greater than the typical significance level of 0.05 (which is alpha2 here), which means that there is not enough evidence to conclude that there is a statistically significant difference in the attainment levels of male and female students.\n",
+    "\n",
+    "    After analyzing the relevant data and employing statistical assessment, it appears that an individual's gender has minimal influence on their test scores. Nevertheless, it is important to realize that in not rejecting the null hypothesis, one does not necessarily prove its validity; rather, it implies a lack of conclusive proof endorsing marked differences between groups based on present findings.\n",
+    "\"\"\"\n",
+    "\n",
+    "print(f\"Explanation  of findings: \\n {fr13_exp}\")"
    ]
   },
   {
-- 
GitLab