From a88bf04263ff0426b724e6c8976710991f78eee6 Mon Sep 17 00:00:00 2001
From: Mo-techie <104419673+Mo-techie@users.noreply.github.com>
Date: Tue, 11 Oct 2022 21:18:57 +0100
Subject: [PATCH 1/9] UPDATED ASSIGNMENT
---
DEBORAH.O (1).py | 192 +++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 192 insertions(+)
create mode 100644 DEBORAH.O (1).py
diff --git a/DEBORAH.O (1).py b/DEBORAH.O (1).py
new file mode 100644
index 0000000..dfd3662
--- /dev/null
+++ b/DEBORAH.O (1).py
@@ -0,0 +1,192 @@
+#!/usr/bin/env python
+# coding: utf-8
+
+# # print all elements of a list using for loop
+
+# In[1]:
+
+
+myList = ['James', 'Otobong', 'Temitayo', 'Blessing', 'Benard', 'Anthony', 'Isangha', 'Hilary', 'Opeoluwa', 'Victory']
+
+for student in myList:
+ print(student)
+
+
+# # using range(1,101), make two list, one containing all even numbers and other containing all odd numbers
+#
+#
+
+# In[21]:
+
+
+lowerRange = 1
+upperRange = 101
+i = 2
+
+print("Even numbers between", lowerRange, "and", upperRange, "are:")
+
+for Z in range(lowerRange, upperRange + 1):
+ if Z > 1:
+ if (Z % i) == 0:
+ print(Z)
+
+
+# In[20]:
+
+
+lowerRange = 1
+upperRange = 101
+i = 2
+
+print("Odd numbers between", lowerRange, "and", upperRange, "are:")
+
+for Z in range(lowerRange, upperRange + 1):
+ if Z >= 1:
+ if (Z % i) != 0:
+ print(Z)
+
+
+# # A company decided to give bonus of 5% to employee if his/her year of service is more than 5 years. Ask user for their salary and year of service and print the net bonus amount
+
+# In[41]:
+
+
+target = 5
+def bonusCalc(sal,year):
+ if year > target:
+ netBonus = sal*0.05
+ print('Your net bonus is: ', netBonus)
+ return netBonus
+ else:
+ print('Sorry, but at this time, you are not qualified for bonus')
+
+
+
+# In[42]:
+
+
+salary = input('How much is your salary')
+Year = input('how long is your year of service in this organization')
+
+bonusCalc(int(salary),int(Year))
+
+
+# # Take Input of age 3 people by user and determine oldest and youngest among them
+
+# In[52]:
+
+
+def ageRange(age1,age2,age3):
+ if (age1 > age2) & (age1 > age3):
+ print('the oldest is the first person')
+ if age2 < age3:
+ print('the youngest is the second person')
+ else:
+ print('the youngest is the third person')
+
+ elif (age2 > age1) & (age2 > age3):
+ print('the oldest pesron is the second person')
+ if age1 < age3:
+ print('the youngest is the first person')
+ else:
+ print('the youngest is the third person')
+ else:
+ print('the oldest is the third person')
+ if age1 < age2:
+ print('the youngest is the first person')
+ else:
+ print('the youngest is the second person')
+
+
+
+
+# In[72]:
+
+
+firstPerson = input('how old are you? ')
+secondPerson = input('how old are you? ')
+thirdPerson = input('how old are you? ')
+
+ageRange(int(firstPerson), int(secondPerson), int(thirdPerson))
+
+
+# # A school has following rules for grading system:
+# Below 25 -F
+# 25 to 45 -E
+# 45 to 50 -D
+# 50 to 60 -C
+# 60 to 80 -B
+# Above 80 -A
+
+# In[33]:
+
+
+def scoreGrade(score):
+ if score > 80:
+ print("your grade is 'A'")
+ elif score >60 and score <=80:
+ print("your grade is 'B'")
+ elif score >50 and score <=60:
+ print("your grade is 'C'")
+ elif score >45 and score <=50:
+ print("your grade is 'D'")
+ elif score >25 and score <=45:
+ print("your grade is 'E'")
+
+ else:
+ print("your grade is 'F'")
+#return grd
+
+
+# In[34]:
+
+
+score = input('what was your score')
+scoreGrade(int(score))
+
+
+# # Write a Python script to merge two python dictionaries
+
+# In[57]:
+
+
+
+dict2 = {'CAD':1.52, 'EUR':1.14, 'Tola':4, 'Temmy':40}
+
+dict1.update(dict2)
+print(dict1)dict1 = {'NGN':470, 'GBP':0.99, 'MXN':20.1, 'ZAR':17.99, 'ZMK':15830, 'GHS':10.5, 'DEM':1.99, 'USD':1}
+
+
+# # Write a Python program to remove a key from a dictionary
+
+# In[64]:
+
+
+mergedDict = {'NGN': 470, 'GBP': 0.99, 'MXN': 20.1, 'ZAR': 17.99, 'ZMK': 15830, 'GHS': 10.5, 'DEM': 1.99,
+ 'USD': 1, 'CAD': 1.52, 'EUR': 1.14, 'Tola': 4, 'Temmy': 40}
+
+mergedDict.pop("Temmy")
+print(mergedDict)
+
+
+# # Write a Python program to get the largest number from a list
+
+# In[71]:
+
+
+listEsden = [90, 28, 31, 23, 25, 59, 65]
+
+def largestNum(listEsden):
+ max = listEsden[0]
+ for a in listEsden:
+ if a > max:
+ max = a
+ return max
+print(largestNum(listEsden))
+
+
+# In[ ]:
+
+
+
+
From 4d56a4354b3faea9aa8c1902338f5fdce14f475f Mon Sep 17 00:00:00 2001
From: Mo-techie <104419673+Mo-techie@users.noreply.github.com>
Date: Tue, 11 Oct 2022 21:38:50 +0100
Subject: [PATCH 2/9] Add files via upload
From b556c12977c74de78795cabe3a70e4fe2352927c Mon Sep 17 00:00:00 2001
From: Mo-techie <104419673+Mo-techie@users.noreply.github.com>
Date: Wed, 12 Oct 2022 10:03:18 +0100
Subject: [PATCH 3/9] Add files via upload
---
DEBORAH.O.ipynb | 511 ++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 511 insertions(+)
create mode 100644 DEBORAH.O.ipynb
diff --git a/DEBORAH.O.ipynb b/DEBORAH.O.ipynb
new file mode 100644
index 0000000..7efb04d
--- /dev/null
+++ b/DEBORAH.O.ipynb
@@ -0,0 +1,511 @@
+{
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "id": "d54d45ce",
+ "metadata": {},
+ "source": [
+ "# print all elements of a list using for loop"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 1,
+ "id": "6f35a4b6",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "James\n",
+ "Otobong\n",
+ "Temitayo\n",
+ "Blessing\n",
+ "Benard\n",
+ "Anthony\n",
+ "Isangha\n",
+ "Hilary\n",
+ "Opeoluwa\n",
+ "Victory\n"
+ ]
+ }
+ ],
+ "source": [
+ "myList = ['James', 'Otobong', 'Temitayo', 'Blessing', 'Benard', 'Anthony', 'Isangha', 'Hilary', 'Opeoluwa', 'Victory']\n",
+ "\n",
+ "for student in myList:\n",
+ " print(student)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "5a2d5b07",
+ "metadata": {},
+ "source": [
+ "# using range(1,101), make two list, one containing all even numbers and other containing all odd numbers\n",
+ "\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 21,
+ "id": "5cd2c9af",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Even numbers between 1 and 101 are:\n",
+ "2\n",
+ "4\n",
+ "6\n",
+ "8\n",
+ "10\n",
+ "12\n",
+ "14\n",
+ "16\n",
+ "18\n",
+ "20\n",
+ "22\n",
+ "24\n",
+ "26\n",
+ "28\n",
+ "30\n",
+ "32\n",
+ "34\n",
+ "36\n",
+ "38\n",
+ "40\n",
+ "42\n",
+ "44\n",
+ "46\n",
+ "48\n",
+ "50\n",
+ "52\n",
+ "54\n",
+ "56\n",
+ "58\n",
+ "60\n",
+ "62\n",
+ "64\n",
+ "66\n",
+ "68\n",
+ "70\n",
+ "72\n",
+ "74\n",
+ "76\n",
+ "78\n",
+ "80\n",
+ "82\n",
+ "84\n",
+ "86\n",
+ "88\n",
+ "90\n",
+ "92\n",
+ "94\n",
+ "96\n",
+ "98\n",
+ "100\n"
+ ]
+ }
+ ],
+ "source": [
+ "lowerRange = 1\n",
+ "upperRange = 101\n",
+ "i = 2\n",
+ "\n",
+ "print(\"Even numbers between\", lowerRange, \"and\", upperRange, \"are:\")\n",
+ "\n",
+ "for Z in range(lowerRange, upperRange + 1):\n",
+ " if Z > 1:\n",
+ " if (Z % i) == 0:\n",
+ " print(Z)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 20,
+ "id": "7a4e6e34",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Odd numbers between 1 and 101 are:\n",
+ "1\n",
+ "3\n",
+ "5\n",
+ "7\n",
+ "9\n",
+ "11\n",
+ "13\n",
+ "15\n",
+ "17\n",
+ "19\n",
+ "21\n",
+ "23\n",
+ "25\n",
+ "27\n",
+ "29\n",
+ "31\n",
+ "33\n",
+ "35\n",
+ "37\n",
+ "39\n",
+ "41\n",
+ "43\n",
+ "45\n",
+ "47\n",
+ "49\n",
+ "51\n",
+ "53\n",
+ "55\n",
+ "57\n",
+ "59\n",
+ "61\n",
+ "63\n",
+ "65\n",
+ "67\n",
+ "69\n",
+ "71\n",
+ "73\n",
+ "75\n",
+ "77\n",
+ "79\n",
+ "81\n",
+ "83\n",
+ "85\n",
+ "87\n",
+ "89\n",
+ "91\n",
+ "93\n",
+ "95\n",
+ "97\n",
+ "99\n",
+ "101\n"
+ ]
+ }
+ ],
+ "source": [
+ "lowerRange = 1\n",
+ "upperRange = 101\n",
+ "i = 2\n",
+ "\n",
+ "print(\"Odd numbers between\", lowerRange, \"and\", upperRange, \"are:\")\n",
+ "\n",
+ "for Z in range(lowerRange, upperRange + 1):\n",
+ " if Z >= 1:\n",
+ " if (Z % i) != 0:\n",
+ " print(Z)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "c1ea7eda",
+ "metadata": {},
+ "source": [
+ "# A company decided to give bonus of 5% to employee if his/her year of service is more than 5 years. Ask user for their salary and year of service and print the net bonus amount"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 41,
+ "id": "48ad05e7",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "target = 5\n",
+ "def bonusCalc(sal,year):\n",
+ " if year > target:\n",
+ " netBonus = sal*0.05\n",
+ " print('Your net bonus is: ', netBonus)\n",
+ " return netBonus\n",
+ " else:\n",
+ " print('Sorry, but at this time, you are not qualified for bonus')\n",
+ " "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 42,
+ "id": "9d86d7cd",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "How much is your salary40000\n",
+ "how long is your year of service in this organization10\n",
+ "Your net bonus is: 2000.0\n"
+ ]
+ },
+ {
+ "data": {
+ "text/plain": [
+ "2000.0"
+ ]
+ },
+ "execution_count": 42,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "salary = input('How much is your salary')\n",
+ "Year = input('how long is your year of service in this organization')\n",
+ "\n",
+ "bonusCalc(int(salary),int(Year))"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "15173add",
+ "metadata": {},
+ "source": [
+ "# Take Input of age 3 people by user and determine oldest and youngest among them"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 52,
+ "id": "690d4cc0",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "def ageRange(age1,age2,age3):\n",
+ " if (age1 > age2) & (age1 > age3):\n",
+ " print('the oldest is the first person')\n",
+ " if age2 < age3:\n",
+ " print('the youngest is the second person')\n",
+ " else:\n",
+ " print('the youngest is the third person')\n",
+ " \n",
+ " elif (age2 > age1) & (age2 > age3):\n",
+ " print('the oldest pesron is the second person')\n",
+ " if age1 < age3:\n",
+ " print('the youngest is the first person')\n",
+ " else:\n",
+ " print('the youngest is the third person')\n",
+ " else:\n",
+ " print('the oldest is the third person')\n",
+ " if age1 < age2:\n",
+ " print('the youngest is the first person')\n",
+ " else:\n",
+ " print('the youngest is the second person')\n",
+ " \n",
+ " "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 72,
+ "id": "bd0d45ff",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "how old are you? 56\n",
+ "how old are you? 39\n",
+ "how old are you? 10\n",
+ "the oldest is the first person\n",
+ "the youngest is the third person\n"
+ ]
+ }
+ ],
+ "source": [
+ "firstPerson = input('how old are you? ')\n",
+ "secondPerson = input('how old are you? ')\n",
+ "thirdPerson = input('how old are you? ')\n",
+ "\n",
+ "ageRange(int(firstPerson), int(secondPerson), int(thirdPerson))"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "e959fee6",
+ "metadata": {},
+ "source": [
+ "# A school has following rules for grading system:\n",
+ " Below 25 -F\n",
+ " 25 to 45 -E\n",
+ " 45 to 50 -D\n",
+ " 50 to 60 -C\n",
+ " 60 to 80 -B\n",
+ " Above 80 -A"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 33,
+ "id": "3af90ef8",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "def scoreGrade(score):\n",
+ " if score > 80:\n",
+ " print(\"your grade is 'A'\")\n",
+ " elif score >60 and score <=80:\n",
+ " print(\"your grade is 'B'\")\n",
+ " elif score >50 and score <=60:\n",
+ " print(\"your grade is 'C'\")\n",
+ " elif score >45 and score <=50:\n",
+ " print(\"your grade is 'D'\")\n",
+ " elif score >25 and score <=45:\n",
+ " print(\"your grade is 'E'\")\n",
+ "\n",
+ " else: \n",
+ " print(\"your grade is 'F'\")\n",
+ "#return grd "
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 34,
+ "id": "1f9d1330",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "what was your score25\n",
+ "your grade is 'F'\n"
+ ]
+ }
+ ],
+ "source": [
+ "score = input('what was your score') \n",
+ "scoreGrade(int(score))"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "b793a6cb",
+ "metadata": {},
+ "source": [
+ "# Write a Python script to merge two python dictionaries"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 57,
+ "id": "f84cdeb7",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "{'NGN': 470, 'GBP': 0.99, 'MXN': 20.1, 'ZAR': 17.99, 'ZMK': 15830, 'GHS': 10.5, 'DEM': 1.99, 'USD': 1, 'CAD': 1.52, 'EUR': 1.14, 'Tola': 4, 'Temmy': 40}\n"
+ ]
+ }
+ ],
+ "source": [
+ "\n",
+ "dict2 = {'CAD':1.52, 'EUR':1.14, 'Tola':4, 'Temmy':40}\n",
+ "\n",
+ "dict1.update(dict2)\n",
+ "print(dict1)dict1 = {'NGN':470, 'GBP':0.99, 'MXN':20.1, 'ZAR':17.99, 'ZMK':15830, 'GHS':10.5, 'DEM':1.99, 'USD':1}"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "1417b3e7",
+ "metadata": {},
+ "source": [
+ "# Write a Python program to remove a key from a dictionary"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 64,
+ "id": "64b1b50d",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "{'NGN': 470, 'GBP': 0.99, 'MXN': 20.1, 'ZAR': 17.99, 'ZMK': 15830, 'GHS': 10.5, 'DEM': 1.99, 'USD': 1, 'CAD': 1.52, 'EUR': 1.14, 'Tola': 4}\n"
+ ]
+ }
+ ],
+ "source": [
+ "mergedDict = {'NGN': 470, 'GBP': 0.99, 'MXN': 20.1, 'ZAR': 17.99, 'ZMK': 15830, 'GHS': 10.5, 'DEM': 1.99, \n",
+ " 'USD': 1, 'CAD': 1.52, 'EUR': 1.14, 'Tola': 4, 'Temmy': 40}\n",
+ "\n",
+ "mergedDict.pop(\"Temmy\")\n",
+ "print(mergedDict)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "67f563b9",
+ "metadata": {},
+ "source": [
+ "# Write a Python program to get the largest number from a list"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 71,
+ "id": "d9f665f7",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "90\n"
+ ]
+ }
+ ],
+ "source": [
+ "listEsden = [90, 28, 31, 23, 25, 59, 65]\n",
+ "\n",
+ "def largestNum(listEsden):\n",
+ " max = listEsden[0]\n",
+ " for a in listEsden:\n",
+ " if a > max:\n",
+ " max = a \n",
+ " return max\n",
+ "print(largestNum(listEsden))"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "03d0c431",
+ "metadata": {},
+ "outputs": [],
+ "source": []
+ }
+ ],
+ "metadata": {
+ "kernelspec": {
+ "display_name": "Python 3 (ipykernel)",
+ "language": "python",
+ "name": "python3"
+ },
+ "language_info": {
+ "codemirror_mode": {
+ "name": "ipython",
+ "version": 3
+ },
+ "file_extension": ".py",
+ "mimetype": "text/x-python",
+ "name": "python",
+ "nbconvert_exporter": "python",
+ "pygments_lexer": "ipython3",
+ "version": "3.9.7"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 5
+}
From 7be1054466dbfa4c4a1451841a896f601088e272 Mon Sep 17 00:00:00 2001
From: Mo-techie <104419673+Mo-techie@users.noreply.github.com>
Date: Sun, 16 Oct 2022 17:43:09 +0100
Subject: [PATCH 4/9] Add files via upload
---
ASSESSMENT.ipynb | 2729 ++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 2729 insertions(+)
create mode 100644 ASSESSMENT.ipynb
diff --git a/ASSESSMENT.ipynb b/ASSESSMENT.ipynb
new file mode 100644
index 0000000..e9c47e3
--- /dev/null
+++ b/ASSESSMENT.ipynb
@@ -0,0 +1,2729 @@
+{
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "id": "dc1eda95",
+ "metadata": {},
+ "source": [
+ " METHODS IN NUMPY\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 4,
+ "id": "56a12866",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "import numpy as np"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 7,
+ "id": "84d4f8fe",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([[0., 0., 0.],\n",
+ " [0., 0., 0.],\n",
+ " [0., 0., 0.]])"
+ ]
+ },
+ "execution_count": 7,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "#zeros\n",
+ "np.zeros((3,3))"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 10,
+ "id": "3204dba3",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([[1., 1., 1., 1., 1.]])"
+ ]
+ },
+ "execution_count": 10,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "#ones\n",
+ "np.ones((1,5))"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 12,
+ "id": "1931d6d1",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([1, 2, 3, 4])"
+ ]
+ },
+ "execution_count": 12,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "#arange\n",
+ "np.arange(1,5)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 13,
+ "id": "7f72ed8c",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([2. , 2.25, 2.5 , 2.75, 3. ])"
+ ]
+ },
+ "execution_count": 13,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "#linspace()\n",
+ "np.linspace(2.0, 3.0, num=5)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 14,
+ "id": "230c7125",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([[0, 1],\n",
+ " [2, 3],\n",
+ " [4, 5]])"
+ ]
+ },
+ "execution_count": 14,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "#reshape()\n",
+ "a = np.arange(6).reshape((3, 2))\n",
+ "a"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 16,
+ "id": "b6a81a45",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([0. , 0.5 , 0.70710678, 0.8660254 , 1. ])"
+ ]
+ },
+ "execution_count": 16,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "#sin()\n",
+ "np.sin(np.array((0., 30., 45., 60., 90.)) * np.pi / 180. )"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 19,
+ "id": "f364f0ab",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([1. , 2.71828183, 7.3890561 ])"
+ ]
+ },
+ "execution_count": 19,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "#exp()\n",
+ "B = np.arange(3)\n",
+ "np.exp(B)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 21,
+ "id": "53fc41ef",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "10"
+ ]
+ },
+ "execution_count": 21,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "#min()\n",
+ "a = [10,30,26,90,19]\n",
+ "np.min(a)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 22,
+ "id": "8b1bdc24",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "90"
+ ]
+ },
+ "execution_count": 22,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "#max()\n",
+ "np.max(a)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 23,
+ "id": "64015bab",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([[ 1, 2, 5, 7],\n",
+ " [ 7, 9, 10, 6]])"
+ ]
+ },
+ "execution_count": 23,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "#vstack\n",
+ "a = [[1,2,5,7], [7,9,10,6]]\n",
+ "np.vstack(a)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 24,
+ "id": "04c98215",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([ 1, 2, 5, 7, 7, 9, 10, 6])"
+ ]
+ },
+ "execution_count": 24,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "#hstack\n",
+ "np.hstack(a)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 32,
+ "id": "792a976f",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "[45 2 3 4 6]\n",
+ "[1 2 3 4 6]\n"
+ ]
+ }
+ ],
+ "source": [
+ "#copy()\n",
+ "arr = np.array([1,2,3,4,6])\n",
+ "x = arr.copy()\n",
+ "arr[0] = 45\n",
+ "print(arr)\n",
+ "print(x)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 33,
+ "id": "b8c7251f",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "[45 26 3 4 6]\n",
+ "[45 26 3 4 6]\n"
+ ]
+ }
+ ],
+ "source": [
+ "#view()\n",
+ "y= arr.view()\n",
+ "arr[1]= 26\n",
+ "print(arr)\n",
+ "print(y)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 34,
+ "id": "34389cce",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "None\n",
+ "[ 3 5 7 9 11]\n"
+ ]
+ }
+ ],
+ "source": [
+ "arr = np.array([3,5,7,9,11])\n",
+ "\n",
+ "x = arr.copy()\n",
+ "y = arr.view()\n",
+ "\n",
+ "print(x.base)\n",
+ "print(y.base) #base() to check if the copy owns the data"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 35,
+ "id": "44fbd9a6",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "[10 30 50 6 5 4]\n"
+ ]
+ }
+ ],
+ "source": [
+ "#concatenate\n",
+ "arr1 = np.array([10,30,50])\n",
+ "arr2 = ([6,5,4])\n",
+ "\n",
+ "arr = np.concatenate((arr1, arr2))\n",
+ "print(arr)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 36,
+ "id": "6c693e1a",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "[ 2 5 8 100]\n"
+ ]
+ }
+ ],
+ "source": [
+ "#sort\n",
+ "arr = np.array([2,8,5,100])\n",
+ "print(np.sort(arr))"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 38,
+ "id": "04432d13",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "[array([1, 3]), array([5, 7]), array([ 9, 11])]\n"
+ ]
+ }
+ ],
+ "source": [
+ "#array_split()\n",
+ "data = np.array([1,3,5,7,9,11])\n",
+ "newdata = np.array_split(data, 3)\n",
+ "print(newdata)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 39,
+ "id": "6c306807",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "(array([3, 5, 6], dtype=int64),)\n"
+ ]
+ }
+ ],
+ "source": [
+ "#where()\n",
+ "arr = np.array([1,2,3,4,5,4,4])\n",
+ "x = np.where(arr ==4)\n",
+ "print(x)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 40,
+ "id": "8e5a2cf5",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "1\n"
+ ]
+ }
+ ],
+ "source": [
+ "#searchsorted()\n",
+ "arr = np.array([6,7,8,9])\n",
+ "x = np.searchsorted(arr, 7)\n",
+ "print(x)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 42,
+ "id": "ee032f6b",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "[[7 5 7 7 7]\n",
+ " [5 7 7 5 7]\n",
+ " [7 3 3 7 5]]\n"
+ ]
+ }
+ ],
+ "source": [
+ "#choice()\n",
+ "from numpy import random\n",
+ "x = random.choice([3,5,7,9], p=[0.1, 0.3, 0.6, 0.0], size =(3,5))\n",
+ "print(x)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 43,
+ "id": "73ecc1f3",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "[1 2 3]\n",
+ "int32\n"
+ ]
+ }
+ ],
+ "source": [
+ "#astype()\n",
+ "arr = np.array([1.1, 2.1, 3.1])\n",
+ "newarr =arr.astype('i')\n",
+ "print(newarr)\n",
+ "print(newarr.dtype)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "552316b2",
+ "metadata": {},
+ "source": [
+ "### METHODS IN PANDAS"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 44,
+ "id": "980e52d2",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "import pandas as pd"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 45,
+ "id": "ee71935e",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "fileName = 'WorldHappiness_Corruption.csv'\n",
+ "filePath = 'C:\\Kaggle dataset'"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 46,
+ "id": "bf0281f0",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "#read_csv()\n",
+ "filePathDir = filePath + '/' + fileName\n",
+ "df = pd.read_csv(filePathDir)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 47,
+ "id": "fc2fdeb8",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "
\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " Country \n",
+ " happiness_score \n",
+ " gdp_per_capita \n",
+ " family \n",
+ " health \n",
+ " freedom \n",
+ " generosity \n",
+ " government_trust \n",
+ " dystopia_residual \n",
+ " continent \n",
+ " Year \n",
+ " social_support \n",
+ " cpi_score \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0 \n",
+ " Norway \n",
+ " 7.5370 \n",
+ " 1.616463 \n",
+ " 1.533524 \n",
+ " 0.796667 \n",
+ " 0.635423 \n",
+ " 0.362012 \n",
+ " 0.315964 \n",
+ " 2.277027 \n",
+ " Europe \n",
+ " 2015 \n",
+ " 0.000000 \n",
+ " 88 \n",
+ " \n",
+ " \n",
+ " 1 \n",
+ " Denmark \n",
+ " 7.5220 \n",
+ " 1.482383 \n",
+ " 1.551122 \n",
+ " 0.792566 \n",
+ " 0.626007 \n",
+ " 0.355280 \n",
+ " 0.400770 \n",
+ " 2.313707 \n",
+ " Europe \n",
+ " 2015 \n",
+ " 0.000000 \n",
+ " 91 \n",
+ " \n",
+ " \n",
+ " 2 \n",
+ " Iceland \n",
+ " 7.5040 \n",
+ " 1.480633 \n",
+ " 1.610574 \n",
+ " 0.833552 \n",
+ " 0.627163 \n",
+ " 0.475540 \n",
+ " 0.153527 \n",
+ " 2.322715 \n",
+ " Europe \n",
+ " 2015 \n",
+ " 0.000000 \n",
+ " 79 \n",
+ " \n",
+ " \n",
+ " 3 \n",
+ " Switzerland \n",
+ " 7.4940 \n",
+ " 1.564980 \n",
+ " 1.516912 \n",
+ " 0.858131 \n",
+ " 0.620071 \n",
+ " 0.290549 \n",
+ " 0.367007 \n",
+ " 2.276716 \n",
+ " Europe \n",
+ " 2015 \n",
+ " 0.000000 \n",
+ " 86 \n",
+ " \n",
+ " \n",
+ " 4 \n",
+ " Finland \n",
+ " 7.4690 \n",
+ " 1.443572 \n",
+ " 1.540247 \n",
+ " 0.809158 \n",
+ " 0.617951 \n",
+ " 0.245483 \n",
+ " 0.382612 \n",
+ " 2.430182 \n",
+ " Europe \n",
+ " 2015 \n",
+ " 0.000000 \n",
+ " 90 \n",
+ " \n",
+ " \n",
+ " ... \n",
+ " ... \n",
+ " ... \n",
+ " ... \n",
+ " ... \n",
+ " ... \n",
+ " ... \n",
+ " ... \n",
+ " ... \n",
+ " ... \n",
+ " ... \n",
+ " ... \n",
+ " ... \n",
+ " ... \n",
+ " \n",
+ " \n",
+ " 787 \n",
+ " Botswana \n",
+ " 3.4789 \n",
+ " 0.997549 \n",
+ " 0.000000 \n",
+ " 0.494102 \n",
+ " 0.509089 \n",
+ " 0.033407 \n",
+ " 0.101786 \n",
+ " 0.257241 \n",
+ " Africa \n",
+ " 2020 \n",
+ " 1.085695 \n",
+ " 60 \n",
+ " \n",
+ " \n",
+ " 788 \n",
+ " Tanzania \n",
+ " 3.4762 \n",
+ " 0.457163 \n",
+ " 0.000000 \n",
+ " 0.442678 \n",
+ " 0.509343 \n",
+ " 0.271541 \n",
+ " 0.203881 \n",
+ " 0.718963 \n",
+ " Africa \n",
+ " 2020 \n",
+ " 0.872675 \n",
+ " 38 \n",
+ " \n",
+ " \n",
+ " 789 \n",
+ " Rwanda \n",
+ " 3.3123 \n",
+ " 0.343243 \n",
+ " 0.000000 \n",
+ " 0.572383 \n",
+ " 0.604088 \n",
+ " 0.235705 \n",
+ " 0.485542 \n",
+ " 0.548445 \n",
+ " Africa \n",
+ " 2020 \n",
+ " 0.522876 \n",
+ " 54 \n",
+ " \n",
+ " \n",
+ " 790 \n",
+ " Zimbabwe \n",
+ " 3.2992 \n",
+ " 0.425564 \n",
+ " 0.000000 \n",
+ " 0.375038 \n",
+ " 0.377405 \n",
+ " 0.151349 \n",
+ " 0.080929 \n",
+ " 0.841031 \n",
+ " Africa \n",
+ " 2020 \n",
+ " 1.047835 \n",
+ " 24 \n",
+ " \n",
+ " \n",
+ " 791 \n",
+ " Afghanistan \n",
+ " 2.5669 \n",
+ " 0.300706 \n",
+ " 0.000000 \n",
+ " 0.266052 \n",
+ " 0.000000 \n",
+ " 0.135235 \n",
+ " 0.001226 \n",
+ " 1.507236 \n",
+ " Asia \n",
+ " 2020 \n",
+ " 0.356434 \n",
+ " 19 \n",
+ " \n",
+ " \n",
+ "
\n",
+ "
792 rows × 13 columns
\n",
+ "
"
+ ],
+ "text/plain": [
+ " Country happiness_score gdp_per_capita family health \\\n",
+ "0 Norway 7.5370 1.616463 1.533524 0.796667 \n",
+ "1 Denmark 7.5220 1.482383 1.551122 0.792566 \n",
+ "2 Iceland 7.5040 1.480633 1.610574 0.833552 \n",
+ "3 Switzerland 7.4940 1.564980 1.516912 0.858131 \n",
+ "4 Finland 7.4690 1.443572 1.540247 0.809158 \n",
+ ".. ... ... ... ... ... \n",
+ "787 Botswana 3.4789 0.997549 0.000000 0.494102 \n",
+ "788 Tanzania 3.4762 0.457163 0.000000 0.442678 \n",
+ "789 Rwanda 3.3123 0.343243 0.000000 0.572383 \n",
+ "790 Zimbabwe 3.2992 0.425564 0.000000 0.375038 \n",
+ "791 Afghanistan 2.5669 0.300706 0.000000 0.266052 \n",
+ "\n",
+ " freedom generosity government_trust dystopia_residual continent \\\n",
+ "0 0.635423 0.362012 0.315964 2.277027 Europe \n",
+ "1 0.626007 0.355280 0.400770 2.313707 Europe \n",
+ "2 0.627163 0.475540 0.153527 2.322715 Europe \n",
+ "3 0.620071 0.290549 0.367007 2.276716 Europe \n",
+ "4 0.617951 0.245483 0.382612 2.430182 Europe \n",
+ ".. ... ... ... ... ... \n",
+ "787 0.509089 0.033407 0.101786 0.257241 Africa \n",
+ "788 0.509343 0.271541 0.203881 0.718963 Africa \n",
+ "789 0.604088 0.235705 0.485542 0.548445 Africa \n",
+ "790 0.377405 0.151349 0.080929 0.841031 Africa \n",
+ "791 0.000000 0.135235 0.001226 1.507236 Asia \n",
+ "\n",
+ " Year social_support cpi_score \n",
+ "0 2015 0.000000 88 \n",
+ "1 2015 0.000000 91 \n",
+ "2 2015 0.000000 79 \n",
+ "3 2015 0.000000 86 \n",
+ "4 2015 0.000000 90 \n",
+ ".. ... ... ... \n",
+ "787 2020 1.085695 60 \n",
+ "788 2020 0.872675 38 \n",
+ "789 2020 0.522876 54 \n",
+ "790 2020 1.047835 24 \n",
+ "791 2020 0.356434 19 \n",
+ "\n",
+ "[792 rows x 13 columns]"
+ ]
+ },
+ "execution_count": 47,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 71,
+ "id": "f17fadf6",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " Country \n",
+ " happiness_score \n",
+ " gdp_per_capita \n",
+ " family \n",
+ " health \n",
+ " freedom \n",
+ " generosity \n",
+ " government_trust \n",
+ " dystopia_residual \n",
+ " continent \n",
+ " Year \n",
+ " social_support \n",
+ " cpi_score \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0 \n",
+ " Norway \n",
+ " 7.537 \n",
+ " 1.616463 \n",
+ " 1.533524 \n",
+ " 0.796667 \n",
+ " 0.635423 \n",
+ " 0.362012 \n",
+ " 0.315964 \n",
+ " 2.277027 \n",
+ " Europe \n",
+ " 2015 \n",
+ " 0.0 \n",
+ " 88 \n",
+ " \n",
+ " \n",
+ " 1 \n",
+ " Denmark \n",
+ " 7.522 \n",
+ " 1.482383 \n",
+ " 1.551122 \n",
+ " 0.792566 \n",
+ " 0.626007 \n",
+ " 0.355280 \n",
+ " 0.400770 \n",
+ " 2.313707 \n",
+ " Europe \n",
+ " 2015 \n",
+ " 0.0 \n",
+ " 91 \n",
+ " \n",
+ " \n",
+ " 2 \n",
+ " Iceland \n",
+ " 7.504 \n",
+ " 1.480633 \n",
+ " 1.610574 \n",
+ " 0.833552 \n",
+ " 0.627163 \n",
+ " 0.475540 \n",
+ " 0.153527 \n",
+ " 2.322715 \n",
+ " Europe \n",
+ " 2015 \n",
+ " 0.0 \n",
+ " 79 \n",
+ " \n",
+ " \n",
+ " 3 \n",
+ " Switzerland \n",
+ " 7.494 \n",
+ " 1.564980 \n",
+ " 1.516912 \n",
+ " 0.858131 \n",
+ " 0.620071 \n",
+ " 0.290549 \n",
+ " 0.367007 \n",
+ " 2.276716 \n",
+ " Europe \n",
+ " 2015 \n",
+ " 0.0 \n",
+ " 86 \n",
+ " \n",
+ " \n",
+ " 4 \n",
+ " Finland \n",
+ " 7.469 \n",
+ " 1.443572 \n",
+ " 1.540247 \n",
+ " 0.809158 \n",
+ " 0.617951 \n",
+ " 0.245483 \n",
+ " 0.382612 \n",
+ " 2.430182 \n",
+ " Europe \n",
+ " 2015 \n",
+ " 0.0 \n",
+ " 90 \n",
+ " \n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " Country happiness_score gdp_per_capita family health freedom \\\n",
+ "0 Norway 7.537 1.616463 1.533524 0.796667 0.635423 \n",
+ "1 Denmark 7.522 1.482383 1.551122 0.792566 0.626007 \n",
+ "2 Iceland 7.504 1.480633 1.610574 0.833552 0.627163 \n",
+ "3 Switzerland 7.494 1.564980 1.516912 0.858131 0.620071 \n",
+ "4 Finland 7.469 1.443572 1.540247 0.809158 0.617951 \n",
+ "\n",
+ " generosity government_trust dystopia_residual continent Year \\\n",
+ "0 0.362012 0.315964 2.277027 Europe 2015 \n",
+ "1 0.355280 0.400770 2.313707 Europe 2015 \n",
+ "2 0.475540 0.153527 2.322715 Europe 2015 \n",
+ "3 0.290549 0.367007 2.276716 Europe 2015 \n",
+ "4 0.245483 0.382612 2.430182 Europe 2015 \n",
+ "\n",
+ " social_support cpi_score \n",
+ "0 0.0 88 \n",
+ "1 0.0 91 \n",
+ "2 0.0 79 \n",
+ "3 0.0 86 \n",
+ "4 0.0 90 "
+ ]
+ },
+ "execution_count": 71,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "#head\n",
+ "filePathDir = filePath + '/' + fileName\n",
+ "df = pd.read_csv(filePathDir)\n",
+ "df.head()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 49,
+ "id": "aa1f2c5a",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ ""
+ ]
+ },
+ "execution_count": 49,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "#describe\n",
+ "df.describe"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 50,
+ "id": "af31bb9a",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " count \n",
+ " mean \n",
+ " std \n",
+ " min \n",
+ " 25% \n",
+ " 50% \n",
+ " 75% \n",
+ " max \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " happiness_score \n",
+ " 792.0 \n",
+ " 5.473310 \n",
+ " 1.124726 \n",
+ " 2.5669 \n",
+ " 4.590750 \n",
+ " 5.485500 \n",
+ " 6.300500 \n",
+ " 7.808700 \n",
+ " \n",
+ " \n",
+ " gdp_per_capita \n",
+ " 792.0 \n",
+ " 0.929217 \n",
+ " 0.385774 \n",
+ " 0.0000 \n",
+ " 0.644242 \n",
+ " 0.994544 \n",
+ " 1.228677 \n",
+ " 2.096000 \n",
+ " \n",
+ " \n",
+ " family \n",
+ " 792.0 \n",
+ " 0.504998 \n",
+ " 0.552736 \n",
+ " 0.0000 \n",
+ " 0.000000 \n",
+ " 0.000000 \n",
+ " 1.040410 \n",
+ " 1.610574 \n",
+ " \n",
+ " \n",
+ " health \n",
+ " 792.0 \n",
+ " 0.648691 \n",
+ " 0.232261 \n",
+ " 0.0000 \n",
+ " 0.510070 \n",
+ " 0.685397 \n",
+ " 0.815641 \n",
+ " 1.141000 \n",
+ " \n",
+ " \n",
+ " freedom \n",
+ " 792.0 \n",
+ " 0.427016 \n",
+ " 0.148003 \n",
+ " 0.0000 \n",
+ " 0.325433 \n",
+ " 0.439621 \n",
+ " 0.546280 \n",
+ " 0.724000 \n",
+ " \n",
+ " \n",
+ " generosity \n",
+ " 792.0 \n",
+ " 0.212440 \n",
+ " 0.121660 \n",
+ " 0.0000 \n",
+ " 0.125784 \n",
+ " 0.197000 \n",
+ " 0.273250 \n",
+ " 0.838075 \n",
+ " \n",
+ " \n",
+ " government_trust \n",
+ " 792.0 \n",
+ " 0.125720 \n",
+ " 0.109032 \n",
+ " 0.0000 \n",
+ " 0.052862 \n",
+ " 0.089000 \n",
+ " 0.154250 \n",
+ " 0.551910 \n",
+ " \n",
+ " \n",
+ " dystopia_residual \n",
+ " 792.0 \n",
+ " 1.379277 \n",
+ " 1.075276 \n",
+ " 0.0000 \n",
+ " 0.000000 \n",
+ " 1.731948 \n",
+ " 2.236894 \n",
+ " 3.602140 \n",
+ " \n",
+ " \n",
+ " Year \n",
+ " 792.0 \n",
+ " 2017.500000 \n",
+ " 1.708904 \n",
+ " 2015.0000 \n",
+ " 2016.000000 \n",
+ " 2017.500000 \n",
+ " 2019.000000 \n",
+ " 2020.000000 \n",
+ " \n",
+ " \n",
+ " social_support \n",
+ " 792.0 \n",
+ " 0.609302 \n",
+ " 0.640754 \n",
+ " 0.0000 \n",
+ " 0.000000 \n",
+ " 0.176214 \n",
+ " 1.268250 \n",
+ " 1.644000 \n",
+ " \n",
+ " \n",
+ " cpi_score \n",
+ " 792.0 \n",
+ " 44.327020 \n",
+ " 19.508833 \n",
+ " 11.0000 \n",
+ " 30.000000 \n",
+ " 38.000000 \n",
+ " 57.000000 \n",
+ " 91.000000 \n",
+ " \n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " count mean std min 25% \\\n",
+ "happiness_score 792.0 5.473310 1.124726 2.5669 4.590750 \n",
+ "gdp_per_capita 792.0 0.929217 0.385774 0.0000 0.644242 \n",
+ "family 792.0 0.504998 0.552736 0.0000 0.000000 \n",
+ "health 792.0 0.648691 0.232261 0.0000 0.510070 \n",
+ "freedom 792.0 0.427016 0.148003 0.0000 0.325433 \n",
+ "generosity 792.0 0.212440 0.121660 0.0000 0.125784 \n",
+ "government_trust 792.0 0.125720 0.109032 0.0000 0.052862 \n",
+ "dystopia_residual 792.0 1.379277 1.075276 0.0000 0.000000 \n",
+ "Year 792.0 2017.500000 1.708904 2015.0000 2016.000000 \n",
+ "social_support 792.0 0.609302 0.640754 0.0000 0.000000 \n",
+ "cpi_score 792.0 44.327020 19.508833 11.0000 30.000000 \n",
+ "\n",
+ " 50% 75% max \n",
+ "happiness_score 5.485500 6.300500 7.808700 \n",
+ "gdp_per_capita 0.994544 1.228677 2.096000 \n",
+ "family 0.000000 1.040410 1.610574 \n",
+ "health 0.685397 0.815641 1.141000 \n",
+ "freedom 0.439621 0.546280 0.724000 \n",
+ "generosity 0.197000 0.273250 0.838075 \n",
+ "government_trust 0.089000 0.154250 0.551910 \n",
+ "dystopia_residual 1.731948 2.236894 3.602140 \n",
+ "Year 2017.500000 2019.000000 2020.000000 \n",
+ "social_support 0.176214 1.268250 1.644000 \n",
+ "cpi_score 38.000000 57.000000 91.000000 "
+ ]
+ },
+ "execution_count": 50,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "#Transpose\n",
+ "df.describe().T"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 51,
+ "id": "4268deb1",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "Index 128\n",
+ "Country 6336\n",
+ "happiness_score 6336\n",
+ "gdp_per_capita 6336\n",
+ "family 6336\n",
+ "health 6336\n",
+ "freedom 6336\n",
+ "generosity 6336\n",
+ "government_trust 6336\n",
+ "dystopia_residual 6336\n",
+ "continent 6336\n",
+ "Year 6336\n",
+ "social_support 6336\n",
+ "cpi_score 6336\n",
+ "dtype: int64"
+ ]
+ },
+ "execution_count": 51,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "#memory_usage\n",
+ "df.memory_usage()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 52,
+ "id": "b54922d3",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "\n",
+ "RangeIndex: 792 entries, 0 to 791\n",
+ "Data columns (total 13 columns):\n",
+ " # Column Non-Null Count Dtype \n",
+ "--- ------ -------------- ----- \n",
+ " 0 Country 792 non-null object \n",
+ " 1 happiness_score 792 non-null float64\n",
+ " 2 gdp_per_capita 792 non-null float64\n",
+ " 3 family 792 non-null float64\n",
+ " 4 health 792 non-null float64\n",
+ " 5 freedom 792 non-null float64\n",
+ " 6 generosity 792 non-null float64\n",
+ " 7 government_trust 792 non-null float64\n",
+ " 8 dystopia_residual 792 non-null float64\n",
+ " 9 continent 792 non-null object \n",
+ " 10 Year 792 non-null int64 \n",
+ " 11 social_support 792 non-null float64\n",
+ " 12 cpi_score 792 non-null int64 \n",
+ "dtypes: float64(9), int64(2), object(2)\n",
+ "memory usage: 80.6+ KB\n"
+ ]
+ }
+ ],
+ "source": [
+ "#info()\n",
+ "df.info()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 56,
+ "id": "c42e6411",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "\n",
+ "RangeIndex: 792 entries, 0 to 791\n",
+ "Data columns (total 13 columns):\n",
+ " # Column Non-Null Count Dtype \n",
+ "--- ------ -------------- ----- \n",
+ " 0 Country 792 non-null object \n",
+ " 1 happiness_score 792 non-null float64\n",
+ " 2 gdp_per_capita 792 non-null float64\n",
+ " 3 family 792 non-null float64\n",
+ " 4 health 792 non-null float64\n",
+ " 5 freedom 792 non-null float64\n",
+ " 6 generosity 792 non-null float64\n",
+ " 7 government_trust 792 non-null float64\n",
+ " 8 dystopia_residual 792 non-null float64\n",
+ " 9 continent 792 non-null object \n",
+ " 10 Year 792 non-null int64 \n",
+ " 11 social_support 792 non-null int32 \n",
+ " 12 cpi_score 792 non-null int64 \n",
+ "dtypes: float64(8), int32(1), int64(2), object(2)\n",
+ "memory usage: 77.5+ KB\n",
+ "None\n"
+ ]
+ }
+ ],
+ "source": [
+ "#astype\n",
+ "df[\"social_support\"] =df['social_support'].astype(int)\n",
+ "print(df.info())"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 57,
+ "id": "3d4c64ae",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " Country \n",
+ " happiness_score \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0 \n",
+ " Norway \n",
+ " 7.537 \n",
+ " \n",
+ " \n",
+ " 1 \n",
+ " Denmark \n",
+ " 7.522 \n",
+ " \n",
+ " \n",
+ " 2 \n",
+ " Iceland \n",
+ " 7.504 \n",
+ " \n",
+ " \n",
+ " 3 \n",
+ " Switzerland \n",
+ " 7.494 \n",
+ " \n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " Country happiness_score\n",
+ "0 Norway 7.537\n",
+ "1 Denmark 7.522\n",
+ "2 Iceland 7.504\n",
+ "3 Switzerland 7.494"
+ ]
+ },
+ "execution_count": 57,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "#loc\n",
+ "df.loc[0:3, ['Country', 'happiness_score']]"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 66,
+ "id": "cd19571f",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "0 2015-02-04\n",
+ "1 2016-03-05\n",
+ "dtype: datetime64[ns]"
+ ]
+ },
+ "execution_count": 66,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "#to_datetime\n",
+ "df1 = pd.DataFrame({'year':[2015,2016], 'month': [2,3], 'day': [4,5]})\n",
+ "pd.to_datetime(df1)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 73,
+ "id": "29ac3169",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "2015 132\n",
+ "2016 132\n",
+ "2017 132\n",
+ "2018 132\n",
+ "2019 132\n",
+ "2020 132\n",
+ "Name: Year, dtype: int64"
+ ]
+ },
+ "execution_count": 73,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "#value_counts()\n",
+ "df['Year'].value_counts()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 76,
+ "id": "684f8451",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " Country \n",
+ " happiness_score \n",
+ " gdp_per_capita \n",
+ " family \n",
+ " health \n",
+ " freedom \n",
+ " generosity \n",
+ " government_trust \n",
+ " dystopia_residual \n",
+ " continent \n",
+ " Year \n",
+ " social_support \n",
+ " cpi_score \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0 \n",
+ " Norway \n",
+ " 7.5370 \n",
+ " 1.616463 \n",
+ " 1.533524 \n",
+ " 0.796667 \n",
+ " 0.635423 \n",
+ " 0.362012 \n",
+ " 0.315964 \n",
+ " 2.277027 \n",
+ " Europe \n",
+ " 2015 \n",
+ " 0.000000 \n",
+ " 88 \n",
+ " \n",
+ " \n",
+ " 1 \n",
+ " Denmark \n",
+ " 7.5220 \n",
+ " 1.482383 \n",
+ " 1.551122 \n",
+ " 0.792566 \n",
+ " 0.626007 \n",
+ " 0.355280 \n",
+ " 0.400770 \n",
+ " 2.313707 \n",
+ " Europe \n",
+ " 2015 \n",
+ " 0.000000 \n",
+ " 91 \n",
+ " \n",
+ " \n",
+ " 2 \n",
+ " Iceland \n",
+ " 7.5040 \n",
+ " 1.480633 \n",
+ " 1.610574 \n",
+ " 0.833552 \n",
+ " 0.627163 \n",
+ " 0.475540 \n",
+ " 0.153527 \n",
+ " 2.322715 \n",
+ " Europe \n",
+ " 2015 \n",
+ " 0.000000 \n",
+ " 79 \n",
+ " \n",
+ " \n",
+ " 3 \n",
+ " Switzerland \n",
+ " 7.4940 \n",
+ " 1.564980 \n",
+ " 1.516912 \n",
+ " 0.858131 \n",
+ " 0.620071 \n",
+ " 0.290549 \n",
+ " 0.367007 \n",
+ " 2.276716 \n",
+ " Europe \n",
+ " 2015 \n",
+ " 0.000000 \n",
+ " 86 \n",
+ " \n",
+ " \n",
+ " 4 \n",
+ " Finland \n",
+ " 7.4690 \n",
+ " 1.443572 \n",
+ " 1.540247 \n",
+ " 0.809158 \n",
+ " 0.617951 \n",
+ " 0.245483 \n",
+ " 0.382612 \n",
+ " 2.430182 \n",
+ " Europe \n",
+ " 2015 \n",
+ " 0.000000 \n",
+ " 90 \n",
+ " \n",
+ " \n",
+ " ... \n",
+ " ... \n",
+ " ... \n",
+ " ... \n",
+ " ... \n",
+ " ... \n",
+ " ... \n",
+ " ... \n",
+ " ... \n",
+ " ... \n",
+ " ... \n",
+ " ... \n",
+ " ... \n",
+ " ... \n",
+ " \n",
+ " \n",
+ " 787 \n",
+ " Botswana \n",
+ " 3.4789 \n",
+ " 0.997549 \n",
+ " 0.000000 \n",
+ " 0.494102 \n",
+ " 0.509089 \n",
+ " 0.033407 \n",
+ " 0.101786 \n",
+ " 0.257241 \n",
+ " Africa \n",
+ " 2020 \n",
+ " 1.085695 \n",
+ " 60 \n",
+ " \n",
+ " \n",
+ " 788 \n",
+ " Tanzania \n",
+ " 3.4762 \n",
+ " 0.457163 \n",
+ " 0.000000 \n",
+ " 0.442678 \n",
+ " 0.509343 \n",
+ " 0.271541 \n",
+ " 0.203881 \n",
+ " 0.718963 \n",
+ " Africa \n",
+ " 2020 \n",
+ " 0.872675 \n",
+ " 38 \n",
+ " \n",
+ " \n",
+ " 789 \n",
+ " Rwanda \n",
+ " 3.3123 \n",
+ " 0.343243 \n",
+ " 0.000000 \n",
+ " 0.572383 \n",
+ " 0.604088 \n",
+ " 0.235705 \n",
+ " 0.485542 \n",
+ " 0.548445 \n",
+ " Africa \n",
+ " 2020 \n",
+ " 0.522876 \n",
+ " 54 \n",
+ " \n",
+ " \n",
+ " 790 \n",
+ " Zimbabwe \n",
+ " 3.2992 \n",
+ " 0.425564 \n",
+ " 0.000000 \n",
+ " 0.375038 \n",
+ " 0.377405 \n",
+ " 0.151349 \n",
+ " 0.080929 \n",
+ " 0.841031 \n",
+ " Africa \n",
+ " 2020 \n",
+ " 1.047835 \n",
+ " 24 \n",
+ " \n",
+ " \n",
+ " 791 \n",
+ " Afghanistan \n",
+ " 2.5669 \n",
+ " 0.300706 \n",
+ " 0.000000 \n",
+ " 0.266052 \n",
+ " 0.000000 \n",
+ " 0.135235 \n",
+ " 0.001226 \n",
+ " 1.507236 \n",
+ " Asia \n",
+ " 2020 \n",
+ " 0.356434 \n",
+ " 19 \n",
+ " \n",
+ " \n",
+ "
\n",
+ "
792 rows × 13 columns
\n",
+ "
"
+ ],
+ "text/plain": [
+ " Country happiness_score gdp_per_capita family health \\\n",
+ "0 Norway 7.5370 1.616463 1.533524 0.796667 \n",
+ "1 Denmark 7.5220 1.482383 1.551122 0.792566 \n",
+ "2 Iceland 7.5040 1.480633 1.610574 0.833552 \n",
+ "3 Switzerland 7.4940 1.564980 1.516912 0.858131 \n",
+ "4 Finland 7.4690 1.443572 1.540247 0.809158 \n",
+ ".. ... ... ... ... ... \n",
+ "787 Botswana 3.4789 0.997549 0.000000 0.494102 \n",
+ "788 Tanzania 3.4762 0.457163 0.000000 0.442678 \n",
+ "789 Rwanda 3.3123 0.343243 0.000000 0.572383 \n",
+ "790 Zimbabwe 3.2992 0.425564 0.000000 0.375038 \n",
+ "791 Afghanistan 2.5669 0.300706 0.000000 0.266052 \n",
+ "\n",
+ " freedom generosity government_trust dystopia_residual continent \\\n",
+ "0 0.635423 0.362012 0.315964 2.277027 Europe \n",
+ "1 0.626007 0.355280 0.400770 2.313707 Europe \n",
+ "2 0.627163 0.475540 0.153527 2.322715 Europe \n",
+ "3 0.620071 0.290549 0.367007 2.276716 Europe \n",
+ "4 0.617951 0.245483 0.382612 2.430182 Europe \n",
+ ".. ... ... ... ... ... \n",
+ "787 0.509089 0.033407 0.101786 0.257241 Africa \n",
+ "788 0.509343 0.271541 0.203881 0.718963 Africa \n",
+ "789 0.604088 0.235705 0.485542 0.548445 Africa \n",
+ "790 0.377405 0.151349 0.080929 0.841031 Africa \n",
+ "791 0.000000 0.135235 0.001226 1.507236 Asia \n",
+ "\n",
+ " Year social_support cpi_score \n",
+ "0 2015 0.000000 88 \n",
+ "1 2015 0.000000 91 \n",
+ "2 2015 0.000000 79 \n",
+ "3 2015 0.000000 86 \n",
+ "4 2015 0.000000 90 \n",
+ ".. ... ... ... \n",
+ "787 2020 1.085695 60 \n",
+ "788 2020 0.872675 38 \n",
+ "789 2020 0.522876 54 \n",
+ "790 2020 1.047835 24 \n",
+ "791 2020 0.356434 19 \n",
+ "\n",
+ "[792 rows x 13 columns]"
+ ]
+ },
+ "execution_count": 76,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "#drop_duplicates()\n",
+ "df.drop_duplicates(inplace=True)\n",
+ "df\n",
+ "\n",
+ "#no duplicates in the dat"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 77,
+ "id": "c45e3877",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "continent\n",
+ "Africa 0.403690\n",
+ "Asia 0.471045\n",
+ "Australia 0.663723\n",
+ "Europe 0.590485\n",
+ "North America 0.580827\n",
+ "South America 0.540228\n",
+ "Name: family, dtype: float64"
+ ]
+ },
+ "execution_count": 77,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "#groupby()\n",
+ "df.groupby(by='continent').family.mean()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 80,
+ "id": "8620a24d",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " lkey \n",
+ " value_x \n",
+ " rkey \n",
+ " value_y \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0 \n",
+ " foo \n",
+ " 1 \n",
+ " foo \n",
+ " 5 \n",
+ " \n",
+ " \n",
+ " 1 \n",
+ " foo \n",
+ " 1 \n",
+ " foo \n",
+ " 8 \n",
+ " \n",
+ " \n",
+ " 2 \n",
+ " foo \n",
+ " 5 \n",
+ " foo \n",
+ " 5 \n",
+ " \n",
+ " \n",
+ " 3 \n",
+ " foo \n",
+ " 5 \n",
+ " foo \n",
+ " 8 \n",
+ " \n",
+ " \n",
+ " 4 \n",
+ " bar \n",
+ " 2 \n",
+ " bar \n",
+ " 6 \n",
+ " \n",
+ " \n",
+ " 5 \n",
+ " baz \n",
+ " 3 \n",
+ " baz \n",
+ " 7 \n",
+ " \n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " lkey value_x rkey value_y\n",
+ "0 foo 1 foo 5\n",
+ "1 foo 1 foo 8\n",
+ "2 foo 5 foo 5\n",
+ "3 foo 5 foo 8\n",
+ "4 bar 2 bar 6\n",
+ "5 baz 3 baz 7"
+ ]
+ },
+ "execution_count": 80,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "#merge()\n",
+ "table1 = pd.DataFrame({'lkey': ['foo', 'bar', 'baz', 'foo'], 'value':[1,2,3,5]})\n",
+ "table2 = pd.DataFrame({'rkey': ['foo', 'bar', 'baz', 'foo'], 'value':[5,6,7,8]})\n",
+ "table1.merge(table2, left_on='lkey', right_on='rkey')"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 86,
+ "id": "bb212a67",
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ " 395 657 519 259 \\\n",
+ "Country Afghanistan Afghanistan Afghanistan Afghanistan \n",
+ "happiness_score 3.203 3.36 3.632 3.575 \n",
+ "gdp_per_capita 0.35 0.38227 0.332 0.31982 \n",
+ "family 0.0 0.11037 0.0 0.30285 \n",
+ "health 0.361 0.17344 0.255 0.30335 \n",
+ "freedom 0.0 0.1643 0.085 0.23414 \n",
+ "generosity 0.158 0.31268 0.191 0.3651 \n",
+ "government_trust 0.025 0.07112 0.036 0.09719 \n",
+ "dystopia_residual 0.0 2.14558 0.0 1.9521 \n",
+ "continent Asia Asia Asia Asia \n",
+ "Year 2017 2019 2018 2016 \n",
+ "social_support 0.517 0.0 0.537 0.0 \n",
+ "cpi_score 15 16 16 15 \n",
+ "\n",
+ " 791 120 493 753 96 \\\n",
+ "Country Afghanistan Afghanistan Albania Albania Albania \n",
+ "happiness_score 2.5669 3.794 4.586 4.8827 4.644 \n",
+ "gdp_per_capita 0.300706 0.401477 0.916 0.906653 0.996193 \n",
+ "family 0.0 0.581543 0.0 0.0 0.803685 \n",
+ "health 0.266052 0.180747 0.79 0.84633 0.73116 \n",
+ "freedom 0.0 0.10618 0.419 0.461946 0.381499 \n",
+ "generosity 0.135235 0.311871 0.149 0.171028 0.201313 \n",
+ "government_trust 0.001226 0.061158 0.032 0.025361 0.039864 \n",
+ "dystopia_residual 1.507236 2.150801 0.0 1.640897 1.490442 \n",
+ "continent Asia Asia Europe Europe Europe \n",
+ "Year 2020 2015 2018 2020 2015 \n",
+ "social_support 0.356434 0.0 0.817 0.830484 0.0 \n",
+ "cpi_score 19 11 36 36 36 \n",
+ "\n",
+ " 620 ... 206 101 618 382 518 \\\n",
+ "Country Albania ... Zambia Zambia Zambia Zambia Zimbabwe \n",
+ "happiness_score 4.655 ... 5.129 4.514 4.795 4.107 3.692 \n",
+ "gdp_per_capita 0.9553 ... 0.47038 0.636407 0.61202 0.578 0.357 \n",
+ "family 0.50163 ... 0.91612 1.003187 0.6376 0.0 0.0 \n",
+ "health 0.73007 ... 0.29924 0.257836 0.23573 0.426 0.248 \n",
+ "freedom 0.31866 ... 0.48827 0.461603 0.42662 0.431 0.406 \n",
+ "generosity 0.1684 ... 0.19591 0.24958 0.17866 0.247 0.132 \n",
+ "government_trust 0.05301 ... 0.12468 0.078214 0.11479 0.087 0.099 \n",
+ "dystopia_residual 1.92816 ... 2.6343 1.826705 2.58991 0.0 0.0 \n",
+ "continent Europe ... Africa Africa Africa Africa Africa \n",
+ "Year 2019 ... 2016 2015 2019 2017 2018 \n",
+ "social_support 0.0 ... 0.0 0.0 0.0 1.058 1.094 \n",
+ "cpi_score 35 ... 38 38 34 37 22 \n",
+ "\n",
+ " 229 119 388 790 639 \n",
+ "Country Zimbabwe Zimbabwe Zimbabwe Zimbabwe Zimbabwe \n",
+ "happiness_score 4.61 3.875 3.663 3.2992 4.193 \n",
+ "gdp_per_capita 0.271 0.375847 0.366 0.425564 0.35041 \n",
+ "family 1.03276 1.083096 0.0 0.0 0.71478 \n",
+ "health 0.33475 0.196764 0.433 0.375038 0.1595 \n",
+ "freedom 0.25861 0.336384 0.361 0.377405 0.25429 \n",
+ "generosity 0.18987 0.189143 0.151 0.151349 0.18503 \n",
+ "government_trust 0.08079 0.095375 0.089 0.080929 0.08582 \n",
+ "dystopia_residual 2.44191 1.59797 0.0 0.841031 2.4427 \n",
+ "continent Africa Africa Africa Africa Africa \n",
+ "Year 2016 2015 2017 2020 2019 \n",
+ "social_support 0.0 0.0 1.114 1.047835 0.0 \n",
+ "cpi_score 22 21 22 24 24 \n",
+ "\n",
+ "[13 rows x 792 columns]\n"
+ ]
+ }
+ ],
+ "source": [
+ "#sort_values()\n",
+ "print(df.sort_values(by='Country', inplace=False).T)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 87,
+ "id": "fba8593f",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " Country \n",
+ " happiness_score \n",
+ " gdp_per_capita \n",
+ " family \n",
+ " health \n",
+ " freedom \n",
+ " generosity \n",
+ " government_trust \n",
+ " dystopia_residual \n",
+ " continent \n",
+ " Year \n",
+ " social_support \n",
+ " cpi_score \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 119 \n",
+ " Zimbabwe \n",
+ " 3.8750 \n",
+ " 0.375847 \n",
+ " 1.083096 \n",
+ " 0.196764 \n",
+ " 0.336384 \n",
+ " 0.189143 \n",
+ " 0.095375 \n",
+ " 1.597970 \n",
+ " Africa \n",
+ " 2015 \n",
+ " 0.000000 \n",
+ " 21 \n",
+ " \n",
+ " \n",
+ " 388 \n",
+ " Zimbabwe \n",
+ " 3.6630 \n",
+ " 0.366000 \n",
+ " 0.000000 \n",
+ " 0.433000 \n",
+ " 0.361000 \n",
+ " 0.151000 \n",
+ " 0.089000 \n",
+ " 0.000000 \n",
+ " Africa \n",
+ " 2017 \n",
+ " 1.114000 \n",
+ " 22 \n",
+ " \n",
+ " \n",
+ " 790 \n",
+ " Zimbabwe \n",
+ " 3.2992 \n",
+ " 0.425564 \n",
+ " 0.000000 \n",
+ " 0.375038 \n",
+ " 0.377405 \n",
+ " 0.151349 \n",
+ " 0.080929 \n",
+ " 0.841031 \n",
+ " Africa \n",
+ " 2020 \n",
+ " 1.047835 \n",
+ " 24 \n",
+ " \n",
+ " \n",
+ " 518 \n",
+ " Zimbabwe \n",
+ " 3.6920 \n",
+ " 0.357000 \n",
+ " 0.000000 \n",
+ " 0.248000 \n",
+ " 0.406000 \n",
+ " 0.132000 \n",
+ " 0.099000 \n",
+ " 0.000000 \n",
+ " Africa \n",
+ " 2018 \n",
+ " 1.094000 \n",
+ " 22 \n",
+ " \n",
+ " \n",
+ " 639 \n",
+ " Zimbabwe \n",
+ " 4.1930 \n",
+ " 0.350410 \n",
+ " 0.714780 \n",
+ " 0.159500 \n",
+ " 0.254290 \n",
+ " 0.185030 \n",
+ " 0.085820 \n",
+ " 2.442700 \n",
+ " Africa \n",
+ " 2019 \n",
+ " 0.000000 \n",
+ " 24 \n",
+ " \n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " Country happiness_score gdp_per_capita family health freedom \\\n",
+ "119 Zimbabwe 3.8750 0.375847 1.083096 0.196764 0.336384 \n",
+ "388 Zimbabwe 3.6630 0.366000 0.000000 0.433000 0.361000 \n",
+ "790 Zimbabwe 3.2992 0.425564 0.000000 0.375038 0.377405 \n",
+ "518 Zimbabwe 3.6920 0.357000 0.000000 0.248000 0.406000 \n",
+ "639 Zimbabwe 4.1930 0.350410 0.714780 0.159500 0.254290 \n",
+ "\n",
+ " generosity government_trust dystopia_residual continent Year \\\n",
+ "119 0.189143 0.095375 1.597970 Africa 2015 \n",
+ "388 0.151000 0.089000 0.000000 Africa 2017 \n",
+ "790 0.151349 0.080929 0.841031 Africa 2020 \n",
+ "518 0.132000 0.099000 0.000000 Africa 2018 \n",
+ "639 0.185030 0.085820 2.442700 Africa 2019 \n",
+ "\n",
+ " social_support cpi_score \n",
+ "119 0.000000 21 \n",
+ "388 1.114000 22 \n",
+ "790 1.047835 24 \n",
+ "518 1.094000 22 \n",
+ "639 0.000000 24 "
+ ]
+ },
+ "execution_count": 87,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "#tail\n",
+ "df.tail()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 89,
+ "id": "02ea1d43",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "(792, 13)"
+ ]
+ },
+ "execution_count": 89,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "#shape\n",
+ "df.shape"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 90,
+ "id": "c2d9125a",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " Country \n",
+ " happiness_score \n",
+ " gdp_per_capita \n",
+ " family \n",
+ " health \n",
+ " freedom \n",
+ " generosity \n",
+ " government_trust \n",
+ " dystopia_residual \n",
+ " continent \n",
+ " Year \n",
+ " social_support \n",
+ " cpi_score \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 340 \n",
+ " Nigeria \n",
+ " 5.2650 \n",
+ " 0.696000 \n",
+ " 0.000000 \n",
+ " 0.245000 \n",
+ " 0.426000 \n",
+ " 0.215000 \n",
+ " 0.041000 \n",
+ " 0.000000 \n",
+ " Africa \n",
+ " 2017 \n",
+ " 1.111000 \n",
+ " 27 \n",
+ " \n",
+ " \n",
+ " 31 \n",
+ " Spain \n",
+ " 6.4030 \n",
+ " 1.384398 \n",
+ " 1.532091 \n",
+ " 0.888961 \n",
+ " 0.408781 \n",
+ " 0.190134 \n",
+ " 0.070914 \n",
+ " 1.927758 \n",
+ " Europe \n",
+ " 2015 \n",
+ " 0.000000 \n",
+ " 58 \n",
+ " \n",
+ " \n",
+ " 49 \n",
+ " Moldova \n",
+ " 5.8380 \n",
+ " 0.728871 \n",
+ " 1.251826 \n",
+ " 0.589465 \n",
+ " 0.240729 \n",
+ " 0.208779 \n",
+ " 0.010091 \n",
+ " 2.807808 \n",
+ " Europe \n",
+ " 2015 \n",
+ " 0.000000 \n",
+ " 33 \n",
+ " \n",
+ " \n",
+ " 370 \n",
+ " Tunisia \n",
+ " 4.4610 \n",
+ " 0.921000 \n",
+ " 0.000000 \n",
+ " 0.815000 \n",
+ " 0.167000 \n",
+ " 0.059000 \n",
+ " 0.055000 \n",
+ " 0.000000 \n",
+ " Africa \n",
+ " 2017 \n",
+ " 1.000000 \n",
+ " 42 \n",
+ " \n",
+ " \n",
+ " 245 \n",
+ " Bulgaria \n",
+ " 4.2180 \n",
+ " 1.012160 \n",
+ " 1.106140 \n",
+ " 0.766490 \n",
+ " 0.305870 \n",
+ " 0.119210 \n",
+ " 0.008720 \n",
+ " 0.899910 \n",
+ " Europe \n",
+ " 2016 \n",
+ " 0.000000 \n",
+ " 41 \n",
+ " \n",
+ " \n",
+ " 43 \n",
+ " Italy \n",
+ " 5.9640 \n",
+ " 1.395067 \n",
+ " 1.444923 \n",
+ " 0.853144 \n",
+ " 0.256451 \n",
+ " 0.172790 \n",
+ " 0.028028 \n",
+ " 1.813312 \n",
+ " Europe \n",
+ " 2015 \n",
+ " 0.000000 \n",
+ " 44 \n",
+ " \n",
+ " \n",
+ " 781 \n",
+ " Burundi \n",
+ " 3.7753 \n",
+ " 0.000000 \n",
+ " 0.000000 \n",
+ " 0.295213 \n",
+ " 0.275399 \n",
+ " 0.187402 \n",
+ " 0.212187 \n",
+ " 2.401507 \n",
+ " Africa \n",
+ " 2020 \n",
+ " 0.403575 \n",
+ " 19 \n",
+ " \n",
+ " \n",
+ " 136 \n",
+ " Canada \n",
+ " 7.4270 \n",
+ " 1.326290 \n",
+ " 1.322610 \n",
+ " 0.905630 \n",
+ " 0.632970 \n",
+ " 0.458110 \n",
+ " 0.329570 \n",
+ " 2.451760 \n",
+ " North America \n",
+ " 2016 \n",
+ " 0.000000 \n",
+ " 82 \n",
+ " \n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " Country happiness_score gdp_per_capita family health freedom \\\n",
+ "340 Nigeria 5.2650 0.696000 0.000000 0.245000 0.426000 \n",
+ "31 Spain 6.4030 1.384398 1.532091 0.888961 0.408781 \n",
+ "49 Moldova 5.8380 0.728871 1.251826 0.589465 0.240729 \n",
+ "370 Tunisia 4.4610 0.921000 0.000000 0.815000 0.167000 \n",
+ "245 Bulgaria 4.2180 1.012160 1.106140 0.766490 0.305870 \n",
+ "43 Italy 5.9640 1.395067 1.444923 0.853144 0.256451 \n",
+ "781 Burundi 3.7753 0.000000 0.000000 0.295213 0.275399 \n",
+ "136 Canada 7.4270 1.326290 1.322610 0.905630 0.632970 \n",
+ "\n",
+ " generosity government_trust dystopia_residual continent Year \\\n",
+ "340 0.215000 0.041000 0.000000 Africa 2017 \n",
+ "31 0.190134 0.070914 1.927758 Europe 2015 \n",
+ "49 0.208779 0.010091 2.807808 Europe 2015 \n",
+ "370 0.059000 0.055000 0.000000 Africa 2017 \n",
+ "245 0.119210 0.008720 0.899910 Europe 2016 \n",
+ "43 0.172790 0.028028 1.813312 Europe 2015 \n",
+ "781 0.187402 0.212187 2.401507 Africa 2020 \n",
+ "136 0.458110 0.329570 2.451760 North America 2016 \n",
+ "\n",
+ " social_support cpi_score \n",
+ "340 1.111000 27 \n",
+ "31 0.000000 58 \n",
+ "49 0.000000 33 \n",
+ "370 1.000000 42 \n",
+ "245 0.000000 41 \n",
+ "43 0.000000 44 \n",
+ "781 0.403575 19 \n",
+ "136 0.000000 82 "
+ ]
+ },
+ "execution_count": 90,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "#sample\n",
+ "df.sample(n=8)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 91,
+ "id": "cac29f4c",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "Country 0\n",
+ "happiness_score 0\n",
+ "gdp_per_capita 0\n",
+ "family 0\n",
+ "health 0\n",
+ "freedom 0\n",
+ "generosity 0\n",
+ "government_trust 0\n",
+ "dystopia_residual 0\n",
+ "continent 0\n",
+ "Year 0\n",
+ "social_support 0\n",
+ "cpi_score 0\n",
+ "dtype: int64"
+ ]
+ },
+ "execution_count": 91,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "#df.isnull().sum()\n",
+ "df.isnull().sum()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 92,
+ "id": "7720b777",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "Country 132\n",
+ "happiness_score 747\n",
+ "gdp_per_capita 767\n",
+ "family 396\n",
+ "health 733\n",
+ "freedom 734\n",
+ "generosity 707\n",
+ "government_trust 682\n",
+ "dystopia_residual 529\n",
+ "continent 6\n",
+ "Year 6\n",
+ "social_support 360\n",
+ "cpi_score 77\n",
+ "dtype: int64"
+ ]
+ },
+ "execution_count": 92,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "#nunique()\n",
+ "df.nunique()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "14bf43dd",
+ "metadata": {},
+ "source": [
+ "METHOD 20 #Query"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 93,
+ "id": "28ff7ee7",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " Country \n",
+ " happiness_score \n",
+ " gdp_per_capita \n",
+ " family \n",
+ " health \n",
+ " freedom \n",
+ " generosity \n",
+ " government_trust \n",
+ " dystopia_residual \n",
+ " continent \n",
+ " Year \n",
+ " social_support \n",
+ " cpi_score \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 395 \n",
+ " Afghanistan \n",
+ " 3.2030 \n",
+ " 0.350000 \n",
+ " 0.000000 \n",
+ " 0.361000 \n",
+ " 0.000000 \n",
+ " 0.158000 \n",
+ " 0.025000 \n",
+ " 0.000000 \n",
+ " Asia \n",
+ " 2017 \n",
+ " 0.517000 \n",
+ " 15 \n",
+ " \n",
+ " \n",
+ " 657 \n",
+ " Afghanistan \n",
+ " 3.3600 \n",
+ " 0.382270 \n",
+ " 0.110370 \n",
+ " 0.173440 \n",
+ " 0.164300 \n",
+ " 0.312680 \n",
+ " 0.071120 \n",
+ " 2.145580 \n",
+ " Asia \n",
+ " 2019 \n",
+ " 0.000000 \n",
+ " 16 \n",
+ " \n",
+ " \n",
+ " 519 \n",
+ " Afghanistan \n",
+ " 3.6320 \n",
+ " 0.332000 \n",
+ " 0.000000 \n",
+ " 0.255000 \n",
+ " 0.085000 \n",
+ " 0.191000 \n",
+ " 0.036000 \n",
+ " 0.000000 \n",
+ " Asia \n",
+ " 2018 \n",
+ " 0.537000 \n",
+ " 16 \n",
+ " \n",
+ " \n",
+ " 259 \n",
+ " Afghanistan \n",
+ " 3.5750 \n",
+ " 0.319820 \n",
+ " 0.302850 \n",
+ " 0.303350 \n",
+ " 0.234140 \n",
+ " 0.365100 \n",
+ " 0.097190 \n",
+ " 1.952100 \n",
+ " Asia \n",
+ " 2016 \n",
+ " 0.000000 \n",
+ " 15 \n",
+ " \n",
+ " \n",
+ " 120 \n",
+ " Afghanistan \n",
+ " 3.7940 \n",
+ " 0.401477 \n",
+ " 0.581543 \n",
+ " 0.180747 \n",
+ " 0.106180 \n",
+ " 0.311871 \n",
+ " 0.061158 \n",
+ " 2.150801 \n",
+ " Asia \n",
+ " 2015 \n",
+ " 0.000000 \n",
+ " 11 \n",
+ " \n",
+ " \n",
+ " 493 \n",
+ " Albania \n",
+ " 4.5860 \n",
+ " 0.916000 \n",
+ " 0.000000 \n",
+ " 0.790000 \n",
+ " 0.419000 \n",
+ " 0.149000 \n",
+ " 0.032000 \n",
+ " 0.000000 \n",
+ " Europe \n",
+ " 2018 \n",
+ " 0.817000 \n",
+ " 36 \n",
+ " \n",
+ " \n",
+ " 753 \n",
+ " Albania \n",
+ " 4.8827 \n",
+ " 0.906653 \n",
+ " 0.000000 \n",
+ " 0.846330 \n",
+ " 0.461946 \n",
+ " 0.171028 \n",
+ " 0.025361 \n",
+ " 1.640897 \n",
+ " Europe \n",
+ " 2020 \n",
+ " 0.830484 \n",
+ " 36 \n",
+ " \n",
+ " \n",
+ " 96 \n",
+ " Albania \n",
+ " 4.6440 \n",
+ " 0.996193 \n",
+ " 0.803685 \n",
+ " 0.731160 \n",
+ " 0.381499 \n",
+ " 0.201313 \n",
+ " 0.039864 \n",
+ " 1.490442 \n",
+ " Europe \n",
+ " 2015 \n",
+ " 0.000000 \n",
+ " 36 \n",
+ " \n",
+ " \n",
+ " 620 \n",
+ " Albania \n",
+ " 4.6550 \n",
+ " 0.955300 \n",
+ " 0.501630 \n",
+ " 0.730070 \n",
+ " 0.318660 \n",
+ " 0.168400 \n",
+ " 0.053010 \n",
+ " 1.928160 \n",
+ " Europe \n",
+ " 2019 \n",
+ " 0.000000 \n",
+ " 35 \n",
+ " \n",
+ " \n",
+ " 213 \n",
+ " Albania \n",
+ " 4.9590 \n",
+ " 0.878670 \n",
+ " 0.804340 \n",
+ " 0.813250 \n",
+ " 0.357330 \n",
+ " 0.142720 \n",
+ " 0.064130 \n",
+ " 1.898940 \n",
+ " Europe \n",
+ " 2016 \n",
+ " 0.000000 \n",
+ " 39 \n",
+ " \n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " Country happiness_score gdp_per_capita family health \\\n",
+ "395 Afghanistan 3.2030 0.350000 0.000000 0.361000 \n",
+ "657 Afghanistan 3.3600 0.382270 0.110370 0.173440 \n",
+ "519 Afghanistan 3.6320 0.332000 0.000000 0.255000 \n",
+ "259 Afghanistan 3.5750 0.319820 0.302850 0.303350 \n",
+ "120 Afghanistan 3.7940 0.401477 0.581543 0.180747 \n",
+ "493 Albania 4.5860 0.916000 0.000000 0.790000 \n",
+ "753 Albania 4.8827 0.906653 0.000000 0.846330 \n",
+ "96 Albania 4.6440 0.996193 0.803685 0.731160 \n",
+ "620 Albania 4.6550 0.955300 0.501630 0.730070 \n",
+ "213 Albania 4.9590 0.878670 0.804340 0.813250 \n",
+ "\n",
+ " freedom generosity government_trust dystopia_residual continent \\\n",
+ "395 0.000000 0.158000 0.025000 0.000000 Asia \n",
+ "657 0.164300 0.312680 0.071120 2.145580 Asia \n",
+ "519 0.085000 0.191000 0.036000 0.000000 Asia \n",
+ "259 0.234140 0.365100 0.097190 1.952100 Asia \n",
+ "120 0.106180 0.311871 0.061158 2.150801 Asia \n",
+ "493 0.419000 0.149000 0.032000 0.000000 Europe \n",
+ "753 0.461946 0.171028 0.025361 1.640897 Europe \n",
+ "96 0.381499 0.201313 0.039864 1.490442 Europe \n",
+ "620 0.318660 0.168400 0.053010 1.928160 Europe \n",
+ "213 0.357330 0.142720 0.064130 1.898940 Europe \n",
+ "\n",
+ " Year social_support cpi_score \n",
+ "395 2017 0.517000 15 \n",
+ "657 2019 0.000000 16 \n",
+ "519 2018 0.537000 16 \n",
+ "259 2016 0.000000 15 \n",
+ "120 2015 0.000000 11 \n",
+ "493 2018 0.817000 36 \n",
+ "753 2020 0.830484 36 \n",
+ "96 2015 0.000000 36 \n",
+ "620 2019 0.000000 35 \n",
+ "213 2016 0.000000 39 "
+ ]
+ },
+ "execution_count": 93,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df.query('3 < happiness_score < 8')[:10]"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "cd2768ca",
+ "metadata": {},
+ "outputs": [],
+ "source": []
+ }
+ ],
+ "metadata": {
+ "kernelspec": {
+ "display_name": "Python 3 (ipykernel)",
+ "language": "python",
+ "name": "python3"
+ },
+ "language_info": {
+ "codemirror_mode": {
+ "name": "ipython",
+ "version": 3
+ },
+ "file_extension": ".py",
+ "mimetype": "text/x-python",
+ "name": "python",
+ "nbconvert_exporter": "python",
+ "pygments_lexer": "ipython3",
+ "version": "3.9.7"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 5
+}
From 629d08ee06fc4c0b51621926bb7f084398e0dc97 Mon Sep 17 00:00:00 2001
From: MOSADIJESU OYAWALE <104419673+Mo-techie@users.noreply.github.com>
Date: Sun, 16 Oct 2022 18:01:17 +0100
Subject: [PATCH 5/9] Add files via upload
From fffdeb1062fff389fa1ee0f194250abf81da268e Mon Sep 17 00:00:00 2001
From: MOSADIJESU OYAWALE <104419673+Mo-techie@users.noreply.github.com>
Date: Mon, 5 Dec 2022 01:00:30 +0100
Subject: [PATCH 6/9] Add files via upload
---
RandomForest Classifier- Deborah O..ipynb | 778 ++++++++++++++++++++++
1 file changed, 778 insertions(+)
create mode 100644 RandomForest Classifier- Deborah O..ipynb
diff --git a/RandomForest Classifier- Deborah O..ipynb b/RandomForest Classifier- Deborah O..ipynb
new file mode 100644
index 0000000..2b2f772
--- /dev/null
+++ b/RandomForest Classifier- Deborah O..ipynb
@@ -0,0 +1,778 @@
+{
+ "cells": [
+ {
+ "cell_type": "code",
+ "execution_count": 4,
+ "id": "2a423298",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "import pandas as pd\n",
+ "import matplotlib.pyplot as plt\n",
+ "from sklearn import datasets"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 6,
+ "id": "23c36ef9",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array(['setosa', 'versicolor', 'virginica'], dtype='\n",
+ "\n",
+ "\n",
+ " \n",
+ " \n",
+ " \n",
+ " 0 \n",
+ " 1 \n",
+ " 2 \n",
+ " 3 \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0 \n",
+ " 5.1 \n",
+ " 3.5 \n",
+ " 1.4 \n",
+ " 0.2 \n",
+ " \n",
+ " \n",
+ " 1 \n",
+ " 4.9 \n",
+ " 3.0 \n",
+ " 1.4 \n",
+ " 0.2 \n",
+ " \n",
+ " \n",
+ " 2 \n",
+ " 4.7 \n",
+ " 3.2 \n",
+ " 1.3 \n",
+ " 0.2 \n",
+ " \n",
+ " \n",
+ " 3 \n",
+ " 4.6 \n",
+ " 3.1 \n",
+ " 1.5 \n",
+ " 0.2 \n",
+ " \n",
+ " \n",
+ " 4 \n",
+ " 5.0 \n",
+ " 3.6 \n",
+ " 1.4 \n",
+ " 0.2 \n",
+ " \n",
+ " \n",
+ "
\n",
+ ""
+ ],
+ "text/plain": [
+ " 0 1 2 3\n",
+ "0 5.1 3.5 1.4 0.2\n",
+ "1 4.9 3.0 1.4 0.2\n",
+ "2 4.7 3.2 1.3 0.2\n",
+ "3 4.6 3.1 1.5 0.2\n",
+ "4 5.0 3.6 1.4 0.2"
+ ]
+ },
+ "execution_count": 47,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df = pd.DataFrame(iris.data)\n",
+ "df.head()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "7cfc2217",
+ "metadata": {},
+ "source": [
+ "# splitting the dataset to training and testing"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 7,
+ "id": "b31cc670",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "from sklearn.model_selection import train_test_split\n",
+ "X_train, X_test, y_train, y_test = train_test_split(X,y, test_size = 0.3)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "32dd69c3",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "train_test_split"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "6f9db476",
+ "metadata": {},
+ "source": [
+ "# Building the model"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 12,
+ "id": "2dc44869",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "RandomForestClassifier(n_estimators=50) In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook. On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org. "
+ ],
+ "text/plain": [
+ "RandomForestClassifier(n_estimators=50)"
+ ]
+ },
+ "execution_count": 12,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "from sklearn.ensemble import RandomForestClassifier\n",
+ "model = RandomForestClassifier(n_estimators= 50)\n",
+ "model.fit(X_train, y_train)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 14,
+ "id": "4f6486a8",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([1, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 2, 0, 0, 2, 0, 2, 2, 1, 1,\n",
+ " 1, 2, 2, 2, 1, 0, 1, 0, 2, 1, 1, 1, 2, 0, 1, 2, 2, 2, 2, 0, 2, 0,\n",
+ " 1])"
+ ]
+ },
+ "execution_count": 14,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "y_test"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 15,
+ "id": "0fa0752b",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([[6.4, 2.9, 4.3, 1.3],\n",
+ " [5.5, 2.6, 4.4, 1.2],\n",
+ " [5.2, 4.1, 1.5, 0.1],\n",
+ " [5.9, 3. , 4.2, 1.5],\n",
+ " [4.4, 3.2, 1.3, 0.2],\n",
+ " [5.6, 2.9, 3.6, 1.3],\n",
+ " [6. , 2.9, 4.5, 1.5],\n",
+ " [5.2, 3.4, 1.4, 0.2],\n",
+ " [5.8, 4. , 1.2, 0.2],\n",
+ " [5.5, 2.3, 4. , 1.3],\n",
+ " [5.1, 3.8, 1.5, 0.3],\n",
+ " [6. , 2.7, 5.1, 1.6],\n",
+ " [4.3, 3. , 1.1, 0.1],\n",
+ " [5.7, 2.5, 5. , 2. ],\n",
+ " [4.6, 3.2, 1.4, 0.2],\n",
+ " [5.4, 3.9, 1.7, 0.4],\n",
+ " [6.8, 3.2, 5.9, 2.3],\n",
+ " [4.6, 3.6, 1. , 0.2],\n",
+ " [5.9, 3. , 5.1, 1.8],\n",
+ " [5.8, 2.8, 5.1, 2.4],\n",
+ " [5.5, 2.4, 3.7, 1. ],\n",
+ " [6.7, 3. , 5. , 1.7],\n",
+ " [6. , 3.4, 4.5, 1.6],\n",
+ " [6.5, 3. , 5.5, 1.8],\n",
+ " [6.9, 3.2, 5.7, 2.3],\n",
+ " [7.7, 2.6, 6.9, 2.3],\n",
+ " [6. , 2.2, 4. , 1. ],\n",
+ " [4.4, 2.9, 1.4, 0.2],\n",
+ " [5.8, 2.7, 3.9, 1.2],\n",
+ " [4.8, 3.4, 1.9, 0.2],\n",
+ " [6.1, 2.6, 5.6, 1.4],\n",
+ " [6.1, 2.9, 4.7, 1.4],\n",
+ " [6.2, 2.2, 4.5, 1.5],\n",
+ " [5.8, 2.6, 4. , 1.2],\n",
+ " [6.3, 2.8, 5.1, 1.5],\n",
+ " [5.5, 4.2, 1.4, 0.2],\n",
+ " [6.1, 2.8, 4.7, 1.2],\n",
+ " [7.1, 3. , 5.9, 2.1],\n",
+ " [6.7, 3.3, 5.7, 2.5],\n",
+ " [7.6, 3. , 6.6, 2.1],\n",
+ " [6.5, 3.2, 5.1, 2. ],\n",
+ " [5.4, 3.4, 1.5, 0.4],\n",
+ " [7.7, 2.8, 6.7, 2. ],\n",
+ " [5.1, 3.8, 1.9, 0.4],\n",
+ " [6.4, 3.2, 4.5, 1.5]])"
+ ]
+ },
+ "execution_count": 15,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "X_test"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "13adb2c4",
+ "metadata": {},
+ "source": [
+ "# Checking the model accuracy"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 17,
+ "id": "01c195bb",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "0.9555555555555556"
+ ]
+ },
+ "execution_count": 17,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "model.score(X_test, y_test)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "86db2eb0",
+ "metadata": {},
+ "source": [
+ "# predicting using the model built"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 18,
+ "id": "1c83e4f5",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([1, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 2, 0, 2, 0, 0, 2, 0, 2, 2, 1, 2,\n",
+ " 1, 2, 2, 2, 1, 0, 1, 0, 2, 1, 1, 1, 2, 0, 1, 2, 2, 2, 2, 0, 2, 0,\n",
+ " 1])"
+ ]
+ },
+ "execution_count": 18,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "predicted_value = model.predict(X_test)\n",
+ "predicted_value"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "de9dafda",
+ "metadata": {},
+ "source": [
+ "# Validating the model using confusion matrix"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 20,
+ "id": "97c3542b",
+ "metadata": {
+ "scrolled": true
+ },
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([[14, 0, 0],\n",
+ " [ 0, 15, 2],\n",
+ " [ 0, 0, 14]], dtype=int64)"
+ ]
+ },
+ "execution_count": 20,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "from sklearn.metrics import confusion_matrix\n",
+ "clfx = confusion_matrix(y_test, predicted_value)\n",
+ "clfx"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 34,
+ "id": "21759dca",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "(45, 4)"
+ ]
+ },
+ "execution_count": 34,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "X_test.shape"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "3510f4b0",
+ "metadata": {},
+ "source": [
+ "# Visualising the confusion matrix"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 23,
+ "id": "af71d1a0",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "image/png": "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NX7M6drsuuuuccMNN6yRLgAAALVj1apVceWVV0b79u2jUaNG8c1vfjOuueaaqKys3anqDRpSXpt69erFRx99VFunAwCAgijWnZRvvPHGuO222+LOO++M73znOzFt2rQ488wzo7S0tFb/or7GDcIjjzyS8zpJkpg/f36MGTMmunbtWmuFAQAA/+evf/1rHHvssXHUUUdFRES7du3innvuiWnTptXqdWrcIPTt2zfndSaTiRYtWsT3vve9+MUvflFbdQEAQEEkSf6uVVFRERUVFTlrJSUlUVJSssZnDz744Ljtttti9uzZ8e1vfzteeeWVmDp1aowaNapWa6pxg1Db9zgBAMCWqry8PK6++uqctREjRsTIkSPX+Ozll18eixcvjt133z3q1asXq1evjuuuuy5OPvnkWq2p1mYQAABgc5DPGYRhw4bF0KFDc9bWlh5ERNx7773xm9/8JiZNmhTf+c53YubMmTFkyJAoKyuL/v3711pN69Ug/GfRX+Wmm27a4GIAAGBLsq7bidbm0ksvjSuuuCJOOumkiIjYe++947333ovy8vL8NwgzZsxYr5NlMsU58Q0AAOurWHdS/uKLL2KrrXJ3KahXr15hHnP61FNP1epFAQCAmunTp09cd9110bZt2/jOd74TM2bMiJtuuikGDBhQq9cxgwAAAHXA6NGj46qrrorzzjsvFi5cGGVlZXH22WfHT37yk1q9zgY1CC+99FLcd999MW/evFixYkXOew888ECtFAYAAIWQFOktRk2aNIlRo0bV+mNN/9NWX/+RXL/73e+ia9euMWvWrHjwwQdj5cqVMWvWrHjyySejtLR0U9QIAADkSY0bhOuvvz5uvvnmePTRR6Nhw4Zxyy23xOuvvx4nnHBCtG3bdlPUCAAAeZMk+TuKUY0bhDlz5mS3dy4pKYlly5ZFJpOJiy66KG6//fZaLxAAAMifGjcITZs2jX/9618REbHjjjvGa6+9FhERn3/+eXzxxRe1Wx0AAORZZZLJ21GMajykfMghh8TkyZNj7733jhNOOCEGDx4cTz75ZEyePDkOO+ywTVEjAACQJ+vdIMycOTP222+/GDNmTCxfvjwiqraGbtCgQUydOjV+8IMfxFVXXbXJCgUAgHwo1qcY5UsmSdZvPGKrrbaKDh06xFlnnRWnnHJKUT+xqH7DHQtdAmtxztn94+Kh50Sb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zJgRf/rTn+LSSy+trboAAKAgivXpQvlS4wZh8ODBa13/5S9/GdOmTdvoggAAgMKp8T4I69K7d++4//77a+t0AABQEHZSriX/8z//E02bNq2t0wEAAAVQ41uMOnTokDOknCRJLFiwID755JO49dZba7U4AADINzMINdS3b9+c11tttVW0aNEiunfvHrvvvntt1QUAABRAjRqEVatWRbt27eKII46I1q1bb6qaAACgYIp1NiBfajSDUL9+/Tj33HOjoqJiU9UDAAAUUI2HlA888MCYMWPGpqgFAAAosBrPIJx33nlx8cUXxwcffBCdOnWKxo0b57y/zz771FpxAACQb1v6LUbr3SAMGDAgRo0aFSeeeGJERFx44YXZ9zKZTCRJEplMJlavXl37VQIAAHmx3g3CnXfeGTfccEPMnTt3U9YDAAAF5TGn6ylJkoiI2HnnnTdZMQAAQGHVaAYhvUEaAABsjiq38D/y1qhB+Pa3v/21TcKnn366UQUBAACFU6MG4eqrr47S0tJNVQsAABRcpRmE9XfSSSdFy5YtN1UtAABAga13g2D+AACALUFS6AIKbL13Uv73U4wAAIDN13onCJWVW/qecgAAbAm29D/1rneCAAAAbP5qNKQMAACbu8otfPZWggAAAGRJEAAAIGVLfzSPBAEAAMiSIAAAQIqnGAEAAFTTIAAAAFluMQIAgJTKLfsppxIEAADg/0gQAAAgpTK27AhBggAAAHXEhx9+GKeddlo0a9Ysttlmm9hvv/1i+vTptXoNCQIAAKQU60Zpn332WXTt2jV69OgRjz32WLRs2TLmzJkT22+/fa1eR4MAAAB1wI033hg77bRTTJgwIbvWrl27Wr+OW4wAACClMpO/o6KiIpYsWZJzVFRUrLWuRx55JDp37hzHH398tGzZMjp06BB33HFHrf/+GgQAACiQ8vLyKC0tzTnKy8vX+tl33nknxo4dG7vuums8/vjjcc4558SFF14Yd911V63WlEmSpFhvs9pg9RvuWOgSoE768qNnC10C1Eld9u5f6BKgzpk2v3j/mzNxx9Pydq2T3/n1GolBSUlJlJSUrPHZhg0bRufOneP555/Prl144YXx0ksvxV//+tdaq8kMAgAAFMi6moG1adOmTey55545a3vssUfcf//9tVqTBgEAAFKK9faarl27xptvvpmzNnv27Nh5551r9TpmEAAAoA646KKL4oUXXojrr78+3n777Zg0aVLcfvvtMWjQoFq9jgQBAABSKot0I+X9998/HnzwwRg2bFhcc8010b59+xg1alSceuqptXodDQIAANQRRx99dBx99NGb9BoaBAAASKksdAEFZgYBAADIkiAAAECKBAEAAKCaBAEAAFKSIn2KUb5IEAAAgCwNAgAAkOUWIwAASDGkDAAAUE2CAAAAKRIEAACAahIEAABISQpdQIFJEAAAgCwJAgAApFTaKA0AAKCKBAEAAFI8xQgAAKCaBAEAAFIkCAAAANUkCAAAkGIfBAAAgGoSBAAASLEPAgAAQDUJAgAApHiKEQAAQDUNAgAAkOUWIwAASPGYUwAAgGoSBAAASKncwjMEDQKQ1ajskEKXAHXSsmnjC10CQK3RIAAAQIrHnAIAAFSTIAAAQMqWPYEgQQAAAFIkCAAAkGIGAQAAoJoEAQAAUiozha6gsCQIAABAlgQBAABStvSdlCUIAABAlgQBAABStuz8QIIAAACkSBAAACDFPggAAADVJAgAAJDiKUYAAADVNAgAAECWW4wAACBly77BSIIAAACkSBAAACDFY04BAACqSRAAACDFY04BAACqSRAAACBly84PJAgAAECKBAEAAFI8xQgAAKCaBAEAAFKSLXwKQYIAAABkSRAAACDFDAIAAEA1DQIAAKRURpK3Y0OVl5dHJpOJIUOG1N4vXk2DAAAAdchLL70Ut99+e+yzzz6b5PwaBAAASEnyeNTU0qVL49RTT4077rgjdthhhw38Db+aBgEAAAqkoqIilixZknNUVFSs8/ODBg2Ko446Knr27LnJatIgAABAgZSXl0dpaWnOUV5evtbP/u53v4vp06ev8/3a4jGnAACQsjHDwzU1bNiwGDp0aM5aSUnJGp97//33Y/DgwfHnP/85tt56601akwYBAAAKpKSkZK0NwX+aPn16LFy4MDp16pRdW716dTzzzDMxZsyYqKioiHr16tVKTRoEAABIKcaN0g477LD4+9//nrN25plnxu677x6XX355rTUHERoEAAAoek2aNIm99torZ61x48bRrFmzNdY3lgYBAABSkjzOIBQjDQIAANRBTz/99CY5rwYBAABSinEGIZ/sgwAAAGRJEAAAIGVLn0GQIAAAAFkSBAAASDGDAAAAUE2CAAAAKZWJGQQAAICIkCAA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Yt99940xY8YUuhSoU6ZMmRKDBg2KF154ISZPnhyrVq2KXr16xbJlywpdGtQJHnNKXhx44IHRsWPHGDt2bHZtjz32iL59+0Z5eXkBK4O6IZPJxIMPPhh9+/YtdClQ53zyySfRsmXLmDJlSnTr1q3Q5UDRkyCwya1YsSKmT58evXr1ylnv1atXPP/88wWqCoAtxeLFiyMiomnTpgWuBOoGDQKb3KJFi2L16tXRqlWrnPVWrVrFggULClQVAFuCJEli6NChcfDBB8dee+1V6HKgTqhf6ALYcmQymZzXSZKssQYAten888+PV199NaZOnVroUqDO0CCwyTVv3jzq1au3RlqwcOHCNVIFAKgtF1xwQTzyyCPxzDPPxDe+8Y1ClwN1hluM2OQaNmwYnTp1ismTJ+esT548OQ466KACVQXA5ipJkjj//PPjgQceiCeffDLat29f6JKgTpEgkBdDhw6Nfv36RefOnaNLly5x++23x7x58+Kcc84pdGlQtJYuXRpvv/129vXcuXNj5syZ0bRp02jbtm0BK4PiNmjQoJg0aVI8/PDD0aRJk2yCXVpaGo0aNSpwdVD8POaUvLn11lvjZz/7WcyfPz/22muvuPnmmz1uDr7C008/HT169FhjvX///jFx4sT8FwR1xLrm2yZMmBBnnHFGfouBOkiDAAAAZJlBAAAAsjQIAABAlgYBAADI0iAAAABZGgQAACBLgwAAAGRpEAAAgCwNAsBGGDlyZOy3337Z12eccUb07ds373W8++67kclkYubMmZv0Ou3atYtRo0Zt0msAUFgaBGCzc8YZZ0Qmk4lMJhMNGjSIb37zm3HJJZfEsmXLNvm1b7nllvXe5Thff6iPiNh7773jrLPOWut799xzTzRo0CA+/vjjTV4HAMVPgwBslr7//e/H/Pnz45133olrr702br311rjkkkvW+tmVK1fW2nVLS0tj++23r7Xz1ZaBAwfG73//+/jiiy/WeG/8+PFx9NFHR6tWrQpQGQDFRoMAbJZKSkqidevWsdNOO8Upp5wSp556ajz00EMR8X+3BY0fPz6++c1vRklJSSRJEosXL44f//jH0bJly9huu+3ie9/7Xrzyyis5573hhhuiVatW0aRJkxg4cGAsX7485/3/vMWosrIybrzxxthll12ipKQk2rZtG9ddd11ERLRv3z4iIjp06BCZTCa6d++e/bkJEybEHnvsEVtvvXXsvvvuceutt+Zc58UXX4wOHTrE1ltvHZ07d44ZM2Z85T+Pfv36RUVFRdx333056/PmzYsnn3wyBg4cGHPmzIljjz02WrVqFdtuu23sv//+8cQTT6zznGtLQD7//PPIZDLx9NNPZ9dmzZoVRx55ZGy77bbRqlWr6NevXyxatOgr6wWgcDQIwBahUaNGOUnB22+/Hb///e/j/vvvz/4B96ijjooFCxbEH//4x5g+fXp07NgxDjvssPj0008jIuL3v/99jBgxIq677rqYNm1atGnTZo0/uP+nYcOGxY033hhXXXVVzJo1KyZNmpT9m/oXX3wxIiKeeOKJmD9/fjzwwAMREXHHHXfE8OHD47rrrovXX389rr/++rjqqqvizjvvjIiIZcuWxdFHHx277bZbTJ8+PUaOHLnOdOTfmjVrFscee2xMmDAhZ33ChAnRqlWr6N27dyxdujSOPPLIeOKJJ2LGjBlxxBFHRJ8+fWLevHnr+U95TfPnz49DDz009ttvv5g2bVr86U9/io8//jhOOOGEDT4nAJtYArCZ6d+/f3LsscdmX//tb39LmjVrlpxwwglJkiTJiBEjkgYNGiQLFy7MfuYvf/lLst122yXLly/POde3vvWtZNy4cUmSJEmXLl2Sc845J+f9Aw88MNl3333Xeu0lS5YkJSUlyR133LHWOufOnZtERDJjxoyc9Z122imZNGlSztpPf/rTpEuXLkmSJMm4ceOSpk2bJsuWLcu+P3bs2LWeK+2xxx5LMplMMmfOnCRJkqSysjJp165dMmzYsHX+zJ577pmMHj06+3rnnXdObr755nXW/9lnnyURkTz11FNJkiTJVVddlfTq1SvnnO+//34SEcmbb765zusCUDgSBGCz9Oijj8a2224bW2+9dXTp0iW6desWo0ePzr6/8847R4sWLbKvp0+fHkuXLo1mzZrFtttumz3mzp0bc+bMiYiI119/Pbp06ZJznf98nfb6669HRUVFHHbYYetd9yeffBLvv/9+DBw4MKeOa6+9NqeOfffdN7bZZpv1quPfevXqFd/4xjeyKcKTTz4Z7777bpx55pkRUZVMXHbZZbHnnnvG9ttvH9tuu2288cYbG5UgTJ8+PZ566qmc32X33XePiMj+PgAUl/qFLgBgU+jRo0eMHTs2GjRoEGVlZdGgQYOc9xs3bpzzurKyMtq0aZNz7/y/bejQcaNGjWr8M5WVlRFRdZvRgQcemPNevXr1IiIiSZINqmerrbaKM844IyZOnBhXX311TJgwIbp16xa77rprRERceuml8fjjj8fPf/7z2GWXXaJRo0bxwx/+MFasWLHO8/1nPf858F1ZWRl9+vSJG2+8cY2fb9OmzQb9HgBsWhoEYLPUuHHj2GWXXdb78x07dowFCxZE/fr1o127dmv9zB577BEvvPBCnH766dm1F154YZ3n3HXXXaNRo0bxl7/8Za2PGG3YsGFERKxevTq71qpVq9hxxx3jnXfeiVNPPXWt591zzz3j7rvvji+//DLbhHxVHWlnnnlmXHvttfHAAw/EAw88ELfddlv2vWeffTbOOOOMOO644yIiYunSpfHuu++u81z/TmDmz58fHTp0iIhY45GtHTt2jPvvvz/atWsX9ev7Tw5AXeAWI4CI6NmzZ3Tp0iX69u0bjz/+eLz77rvx/PPPx5VXXhnTpk2LiIjBgwfH+PHjY/z48TF79uwYMWJE/OMf/1jnObfeeuu4/PLL47LLLou77ror5syZEy+88EL8+te/joiIli1bRqNGjbKDu4sXL46IqqcslZeXxy233BKzZ8+Ov//97zFhwoS46aabIiLilFNOia222ioGDhwYs2bNij/+8Y/x85//fL1+z/bt28f3vve9+PGPfxwNGjSIH/7wh9n3dtlll3jggQdi5syZ8corr8Qpp5ySTTTWplGjRvHd7343brjhhpg1a1Y888wzceWVV+Z8ZtCgQfHpp5/GySefHC+++GK888478ec//zkGDBiQ0xgBUDw0CAARkclk4o9//GN069YtBgwYEN/+9rfjpJNOinfffTf71KETTzwxfvKTn8Tll18enTp1ivfeey/OPffcrzzvVVddFRdffHH85Cc/iT322CNOPPHEWLhwYURE1K9fP/77v/87xo0bF2VlZXHsscdGRMRZZ50Vv/rVr2LixImx9957x6GHHhoTJ07MPhZ12223jT/84Q8xa9as6NChQwwfPnytt/Csy8CBA+Ozzz6Lk046KWeO4eabb44ddtghDjrooOjTp08cccQR0bFjx6881/jx42PlypXRuXPnGDx4cFx77bU575eVlcVzzz0Xq1evjiOOOCL22muvGDx4cJSWlmZvUQKguGSSDb2ZFQAA2Oz46xsAACBLgwAAAGRpEAAAgCwNAgAAkKVBAAAAsjQIAABAlgYBAADI0iAAAABZGgQAACBLgwAAAGRpEAAAgCwNAgAAkPX/A9SU+YpTe16CAAAAAElFTkSuQmCC\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "%matplotlib inline \n",
+ "import matplotlib.pyplot as plt\n",
+ "import seaborn as sns\n",
+ "plt.figure(figsize = (10,7))\n",
+ "sns.heatmap(clfx, annot = True)\n",
+ "plt.xlabel(\"Predicted Value\")\n",
+ "plt.ylabel(\"True Value\")\n",
+ "plt.show()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "0697431a",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "From the confusion matrix, it can be seen that the model built predicted the values for 'setosa' correctly, predicted the values\n",
+ "for 'versicolor' correctly also, but predicted 14 values for 'virginica' correctly and 2 values for 'virginica' wrongly. It confused \n",
+ "it for 'versicolor'."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 24,
+ "id": "a3fd71ae",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "['DESCR',\n",
+ " 'data',\n",
+ " 'data_filename',\n",
+ " 'data_module',\n",
+ " 'feature_names',\n",
+ " 'frame',\n",
+ " 'target',\n",
+ " 'target_filename']"
+ ]
+ },
+ "execution_count": 24,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "diabetes = datasets.load_diabetes()\n",
+ "dir(diabetes)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 35,
+ "id": "04397e9e",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "X = diabetes.data\n",
+ "y = diabetes.target"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 36,
+ "id": "44a0b072",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "from sklearn.model_selection import train_test_split\n",
+ "X_train, X_test, y_train, y_test = train_test_split(X,y, test_size = 0.3)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 37,
+ "id": "7f2c960b",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "RandomForestClassifier(n_estimators=30) In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook. On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org. "
+ ],
+ "text/plain": [
+ "RandomForestClassifier(n_estimators=30)"
+ ]
+ },
+ "execution_count": 37,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "diab_model = RandomForestClassifier(n_estimators= 30)\n",
+ "diab_model.fit(X_train, y_train)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 39,
+ "id": "fa3f2644",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "0.0"
+ ]
+ },
+ "execution_count": 39,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "diab_model.score(X_test, y_test)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 41,
+ "id": "9be51f04",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "['age', 'sex', 'bmi', 'bp', 's1', 's2', 's3', 's4', 's5', 's6']"
+ ]
+ },
+ "execution_count": 41,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "diabetes.feature_names"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 44,
+ "id": "6e7d0de1",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "RandomForestRegressor() In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook. On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org. "
+ ],
+ "text/plain": [
+ "RandomForestRegressor()"
+ ]
+ },
+ "execution_count": 44,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "from sklearn.ensemble import RandomForestRegressor\n",
+ "model2 = RandomForestRegressor(n_estimators= 100)\n",
+ "model2.fit(X_train, y_train)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 45,
+ "id": "5745eb13",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "0.3072018707051737"
+ ]
+ },
+ "execution_count": 45,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "model2.score(X_test, y_test)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 46,
+ "id": "93eb9ab3",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " 0 \n",
+ " 1 \n",
+ " 2 \n",
+ " 3 \n",
+ " 4 \n",
+ " 5 \n",
+ " 6 \n",
+ " 7 \n",
+ " 8 \n",
+ " 9 \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0 \n",
+ " 0.038076 \n",
+ " 0.050680 \n",
+ " 0.061696 \n",
+ " 0.021872 \n",
+ " -0.044223 \n",
+ " -0.034821 \n",
+ " -0.043401 \n",
+ " -0.002592 \n",
+ " 0.019907 \n",
+ " -0.017646 \n",
+ " \n",
+ " \n",
+ " 1 \n",
+ " -0.001882 \n",
+ " -0.044642 \n",
+ " -0.051474 \n",
+ " -0.026328 \n",
+ " -0.008449 \n",
+ " -0.019163 \n",
+ " 0.074412 \n",
+ " -0.039493 \n",
+ " -0.068332 \n",
+ " -0.092204 \n",
+ " \n",
+ " \n",
+ " 2 \n",
+ " 0.085299 \n",
+ " 0.050680 \n",
+ " 0.044451 \n",
+ " -0.005670 \n",
+ " -0.045599 \n",
+ " -0.034194 \n",
+ " -0.032356 \n",
+ " -0.002592 \n",
+ " 0.002861 \n",
+ " -0.025930 \n",
+ " \n",
+ " \n",
+ " 3 \n",
+ " -0.089063 \n",
+ " -0.044642 \n",
+ " -0.011595 \n",
+ " -0.036656 \n",
+ " 0.012191 \n",
+ " 0.024991 \n",
+ " -0.036038 \n",
+ " 0.034309 \n",
+ " 0.022688 \n",
+ " -0.009362 \n",
+ " \n",
+ " \n",
+ " 4 \n",
+ " 0.005383 \n",
+ " -0.044642 \n",
+ " -0.036385 \n",
+ " 0.021872 \n",
+ " 0.003935 \n",
+ " 0.015596 \n",
+ " 0.008142 \n",
+ " -0.002592 \n",
+ " -0.031988 \n",
+ " -0.046641 \n",
+ " \n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " 0 1 2 3 4 5 6 \\\n",
+ "0 0.038076 0.050680 0.061696 0.021872 -0.044223 -0.034821 -0.043401 \n",
+ "1 -0.001882 -0.044642 -0.051474 -0.026328 -0.008449 -0.019163 0.074412 \n",
+ "2 0.085299 0.050680 0.044451 -0.005670 -0.045599 -0.034194 -0.032356 \n",
+ "3 -0.089063 -0.044642 -0.011595 -0.036656 0.012191 0.024991 -0.036038 \n",
+ "4 0.005383 -0.044642 -0.036385 0.021872 0.003935 0.015596 0.008142 \n",
+ "\n",
+ " 7 8 9 \n",
+ "0 -0.002592 0.019907 -0.017646 \n",
+ "1 -0.039493 -0.068332 -0.092204 \n",
+ "2 -0.002592 0.002861 -0.025930 \n",
+ "3 0.034309 0.022688 -0.009362 \n",
+ "4 -0.002592 -0.031988 -0.046641 "
+ ]
+ },
+ "execution_count": 46,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df = pd.DataFrame(diabetes.data)\n",
+ "df.head()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "883a01cc",
+ "metadata": {},
+ "outputs": [],
+ "source": []
+ }
+ ],
+ "metadata": {
+ "kernelspec": {
+ "display_name": "Python 3 (ipykernel)",
+ "language": "python",
+ "name": "python3"
+ },
+ "language_info": {
+ "codemirror_mode": {
+ "name": "ipython",
+ "version": 3
+ },
+ "file_extension": ".py",
+ "mimetype": "text/x-python",
+ "name": "python",
+ "nbconvert_exporter": "python",
+ "pygments_lexer": "ipython3",
+ "version": "3.9.13"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 5
+}
From 30bd282d3f9355a4dfbccb3e06b63071a3e9c147 Mon Sep 17 00:00:00 2001
From: MOSADIJESU OYAWALE <104419673+Mo-techie@users.noreply.github.com>
Date: Mon, 5 Dec 2022 09:32:07 +0100
Subject: [PATCH 7/9] Add files via upload
---
RandomForest- Deborah O..ipynb | 778 +++++++++++++++++++++++++++++++++
1 file changed, 778 insertions(+)
create mode 100644 RandomForest- Deborah O..ipynb
diff --git a/RandomForest- Deborah O..ipynb b/RandomForest- Deborah O..ipynb
new file mode 100644
index 0000000..5457bcc
--- /dev/null
+++ b/RandomForest- Deborah O..ipynb
@@ -0,0 +1,778 @@
+{
+ "cells": [
+ {
+ "cell_type": "code",
+ "execution_count": 4,
+ "id": "c6c856ea",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "import pandas as pd\n",
+ "import matplotlib.pyplot as plt\n",
+ "from sklearn import datasets"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 6,
+ "id": "2444b6a4",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array(['setosa', 'versicolor', 'virginica'], dtype='\n",
+ "\n",
+ "\n",
+ " \n",
+ " \n",
+ " \n",
+ " 0 \n",
+ " 1 \n",
+ " 2 \n",
+ " 3 \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0 \n",
+ " 5.1 \n",
+ " 3.5 \n",
+ " 1.4 \n",
+ " 0.2 \n",
+ " \n",
+ " \n",
+ " 1 \n",
+ " 4.9 \n",
+ " 3.0 \n",
+ " 1.4 \n",
+ " 0.2 \n",
+ " \n",
+ " \n",
+ " 2 \n",
+ " 4.7 \n",
+ " 3.2 \n",
+ " 1.3 \n",
+ " 0.2 \n",
+ " \n",
+ " \n",
+ " 3 \n",
+ " 4.6 \n",
+ " 3.1 \n",
+ " 1.5 \n",
+ " 0.2 \n",
+ " \n",
+ " \n",
+ " 4 \n",
+ " 5.0 \n",
+ " 3.6 \n",
+ " 1.4 \n",
+ " 0.2 \n",
+ " \n",
+ " \n",
+ "
\n",
+ ""
+ ],
+ "text/plain": [
+ " 0 1 2 3\n",
+ "0 5.1 3.5 1.4 0.2\n",
+ "1 4.9 3.0 1.4 0.2\n",
+ "2 4.7 3.2 1.3 0.2\n",
+ "3 4.6 3.1 1.5 0.2\n",
+ "4 5.0 3.6 1.4 0.2"
+ ]
+ },
+ "execution_count": 47,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df = pd.DataFrame(iris.data)\n",
+ "df.head()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "084db56a",
+ "metadata": {},
+ "source": [
+ "# splitting the dataset to training and testing"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 7,
+ "id": "86c6e0aa",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "from sklearn.model_selection import train_test_split\n",
+ "X_train, X_test, y_train, y_test = train_test_split(X,y, test_size = 0.3)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "6cadc1bc",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "train_test_split"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "e3e89d11",
+ "metadata": {},
+ "source": [
+ "# Building the model"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 12,
+ "id": "fe6ebfa1",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "RandomForestClassifier(n_estimators=50) In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook. On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org. "
+ ],
+ "text/plain": [
+ "RandomForestClassifier(n_estimators=50)"
+ ]
+ },
+ "execution_count": 12,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "from sklearn.ensemble import RandomForestClassifier\n",
+ "model = RandomForestClassifier(n_estimators= 50)\n",
+ "model.fit(X_train, y_train)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 14,
+ "id": "17dfd379",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([1, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 2, 0, 0, 2, 0, 2, 2, 1, 1,\n",
+ " 1, 2, 2, 2, 1, 0, 1, 0, 2, 1, 1, 1, 2, 0, 1, 2, 2, 2, 2, 0, 2, 0,\n",
+ " 1])"
+ ]
+ },
+ "execution_count": 14,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "y_test"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 15,
+ "id": "95e06ef6",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([[6.4, 2.9, 4.3, 1.3],\n",
+ " [5.5, 2.6, 4.4, 1.2],\n",
+ " [5.2, 4.1, 1.5, 0.1],\n",
+ " [5.9, 3. , 4.2, 1.5],\n",
+ " [4.4, 3.2, 1.3, 0.2],\n",
+ " [5.6, 2.9, 3.6, 1.3],\n",
+ " [6. , 2.9, 4.5, 1.5],\n",
+ " [5.2, 3.4, 1.4, 0.2],\n",
+ " [5.8, 4. , 1.2, 0.2],\n",
+ " [5.5, 2.3, 4. , 1.3],\n",
+ " [5.1, 3.8, 1.5, 0.3],\n",
+ " [6. , 2.7, 5.1, 1.6],\n",
+ " [4.3, 3. , 1.1, 0.1],\n",
+ " [5.7, 2.5, 5. , 2. ],\n",
+ " [4.6, 3.2, 1.4, 0.2],\n",
+ " [5.4, 3.9, 1.7, 0.4],\n",
+ " [6.8, 3.2, 5.9, 2.3],\n",
+ " [4.6, 3.6, 1. , 0.2],\n",
+ " [5.9, 3. , 5.1, 1.8],\n",
+ " [5.8, 2.8, 5.1, 2.4],\n",
+ " [5.5, 2.4, 3.7, 1. ],\n",
+ " [6.7, 3. , 5. , 1.7],\n",
+ " [6. , 3.4, 4.5, 1.6],\n",
+ " [6.5, 3. , 5.5, 1.8],\n",
+ " [6.9, 3.2, 5.7, 2.3],\n",
+ " [7.7, 2.6, 6.9, 2.3],\n",
+ " [6. , 2.2, 4. , 1. ],\n",
+ " [4.4, 2.9, 1.4, 0.2],\n",
+ " [5.8, 2.7, 3.9, 1.2],\n",
+ " [4.8, 3.4, 1.9, 0.2],\n",
+ " [6.1, 2.6, 5.6, 1.4],\n",
+ " [6.1, 2.9, 4.7, 1.4],\n",
+ " [6.2, 2.2, 4.5, 1.5],\n",
+ " [5.8, 2.6, 4. , 1.2],\n",
+ " [6.3, 2.8, 5.1, 1.5],\n",
+ " [5.5, 4.2, 1.4, 0.2],\n",
+ " [6.1, 2.8, 4.7, 1.2],\n",
+ " [7.1, 3. , 5.9, 2.1],\n",
+ " [6.7, 3.3, 5.7, 2.5],\n",
+ " [7.6, 3. , 6.6, 2.1],\n",
+ " [6.5, 3.2, 5.1, 2. ],\n",
+ " [5.4, 3.4, 1.5, 0.4],\n",
+ " [7.7, 2.8, 6.7, 2. ],\n",
+ " [5.1, 3.8, 1.9, 0.4],\n",
+ " [6.4, 3.2, 4.5, 1.5]])"
+ ]
+ },
+ "execution_count": 15,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "X_test"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "c48d3056",
+ "metadata": {},
+ "source": [
+ "# Checking the model accuracy"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 17,
+ "id": "bda0fa81",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "0.9555555555555556"
+ ]
+ },
+ "execution_count": 17,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "model.score(X_test, y_test)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "7eab165b",
+ "metadata": {},
+ "source": [
+ "# predicting using the model built"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 18,
+ "id": "d2422899",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([1, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 2, 0, 2, 0, 0, 2, 0, 2, 2, 1, 2,\n",
+ " 1, 2, 2, 2, 1, 0, 1, 0, 2, 1, 1, 1, 2, 0, 1, 2, 2, 2, 2, 0, 2, 0,\n",
+ " 1])"
+ ]
+ },
+ "execution_count": 18,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "predicted_value = model.predict(X_test)\n",
+ "predicted_value"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "28914d28",
+ "metadata": {},
+ "source": [
+ "# Validating the model using confusion matrix"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 20,
+ "id": "0062630e",
+ "metadata": {
+ "scrolled": true
+ },
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([[14, 0, 0],\n",
+ " [ 0, 15, 2],\n",
+ " [ 0, 0, 14]], dtype=int64)"
+ ]
+ },
+ "execution_count": 20,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "from sklearn.metrics import confusion_matrix\n",
+ "clfx = confusion_matrix(y_test, predicted_value)\n",
+ "clfx"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 34,
+ "id": "f479555a",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "(45, 4)"
+ ]
+ },
+ "execution_count": 34,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "X_test.shape"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "id": "ffbcd935",
+ "metadata": {},
+ "source": [
+ "# Visualising the confusion matrix"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 23,
+ "id": "c5ef3e40",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "image/png": "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NX7M6drsuuuuccMNN6yRLgAAALVj1apVceWVV0b79u2jUaNG8c1vfjOuueaaqKys3anqDRpSXpt69erFRx99VFunAwCAgijWnZRvvPHGuO222+LOO++M73znOzFt2rQ488wzo7S0tFb/or7GDcIjjzyS8zpJkpg/f36MGTMmunbtWmuFAQAA/+evf/1rHHvssXHUUUdFRES7du3innvuiWnTptXqdWrcIPTt2zfndSaTiRYtWsT3vve9+MUvflFbdQEAQEEkSf6uVVFRERUVFTlrJSUlUVJSssZnDz744Ljtttti9uzZ8e1vfzteeeWVmDp1aowaNapWa6pxg1Db9zgBAMCWqry8PK6++uqctREjRsTIkSPX+Ozll18eixcvjt133z3q1asXq1evjuuuuy5OPvnkWq2p1mYQAABgc5DPGYRhw4bF0KFDc9bWlh5ERNx7773xm9/8JiZNmhTf+c53YubMmTFkyJAoKyuL/v3711pN69Ug/GfRX+Wmm27a4GIAAGBLsq7bidbm0ksvjSuuuCJOOumkiIjYe++947333ovy8vL8NwgzZsxYr5NlMsU58Q0AAOurWHdS/uKLL2KrrXJ3KahXr15hHnP61FNP1epFAQCAmunTp09cd9110bZt2/jOd74TM2bMiJtuuikGDBhQq9cxgwAAAHXA6NGj46qrrorzzjsvFi5cGGVlZXH22WfHT37yk1q9zgY1CC+99FLcd999MW/evFixYkXOew888ECtFAYAAIWQFOktRk2aNIlRo0bV+mNN/9NWX/+RXL/73e+ia9euMWvWrHjwwQdj5cqVMWvWrHjyySejtLR0U9QIAADkSY0bhOuvvz5uvvnmePTRR6Nhw4Zxyy23xOuvvx4nnHBCtG3bdlPUCAAAeZMk+TuKUY0bhDlz5mS3dy4pKYlly5ZFJpOJiy66KG6//fZaLxAAAMifGjcITZs2jX/9618REbHjjjvGa6+9FhERn3/+eXzxxRe1Wx0AAORZZZLJ21GMajykfMghh8TkyZNj7733jhNOOCEGDx4cTz75ZEyePDkOO+ywTVEjAACQJ+vdIMycOTP222+/GDNmTCxfvjwiqraGbtCgQUydOjV+8IMfxFVXXbXJCgUAgHwo1qcY5UsmSdZvPGKrrbaKDh06xFlnnRWnnHJKUT+xqH7DHQtdAmtxztn94+Kh50Sb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zJgRf/rTn+LSSy+trboAAKAgivXpQvlS4wZh8ODBa13/5S9/GdOmTdvoggAAgMKp8T4I69K7d++4//77a+t0AABQEHZSriX/8z//E02bNq2t0wEAAAVQ41uMOnTokDOknCRJLFiwID755JO49dZba7U4AADINzMINdS3b9+c11tttVW0aNEiunfvHrvvvntt1QUAABRAjRqEVatWRbt27eKII46I1q1bb6qaAACgYIp1NiBfajSDUL9+/Tj33HOjoqJiU9UDAAAUUI2HlA888MCYMWPGpqgFAAAosBrPIJx33nlx8cUXxwcffBCdOnWKxo0b57y/zz771FpxAACQb1v6LUbr3SAMGDAgRo0aFSeeeGJERFx44YXZ9zKZTCRJEplMJlavXl37VQIAAHmx3g3CnXfeGTfccEPMnTt3U9YDAAAF5TGn6ylJkoiI2HnnnTdZMQAAQGHVaAYhvUEaAABsjiq38D/y1qhB+Pa3v/21TcKnn366UQUBAACFU6MG4eqrr47S0tJNVQsAABRcpRmE9XfSSSdFy5YtN1UtAABAga13g2D+AACALUFS6AIKbL13Uv73U4wAAIDN13onCJWVW/qecgAAbAm29D/1rneCAAAAbP5qNKQMAACbu8otfPZWggAAAGRJEAAAIGVLfzSPBAEAAMiSIAAAQIqnGAEAAFTTIAAAAFluMQIAgJTKLfsppxIEAADg/0gQAAAgpTK27AhBggAAAHXEhx9+GKeddlo0a9Ysttlmm9hvv/1i+vTptXoNCQIAAKQU60Zpn332WXTt2jV69OgRjz32WLRs2TLmzJkT22+/fa1eR4MAAAB1wI033hg77bRTTJgwIbvWrl27Wr+OW4wAACClMpO/o6KiIpYsWZJzVFRUrLWuRx55JDp37hzHH398tGzZMjp06BB33HFHrf/+GgQAACiQ8vLyKC0tzTnKy8vX+tl33nknxo4dG7vuums8/vjjcc4558SFF14Yd911V63WlEmSpFhvs9pg9RvuWOgSoE768qNnC10C1Eld9u5f6BKgzpk2v3j/mzNxx9Pydq2T3/n1GolBSUlJlJSUrPHZhg0bRufOneP555/Prl144YXx0ksvxV//+tdaq8kMAgAAFMi6moG1adOmTey55545a3vssUfcf//9tVqTBgEAAFKK9faarl27xptvvpmzNnv27Nh5551r9TpmEAAAoA646KKL4oUXXojrr78+3n777Zg0aVLcfvvtMWjQoFq9jgQBAABSKot0I+X9998/HnzwwRg2bFhcc8010b59+xg1alSceuqptXodDQIAANQRRx99dBx99NGb9BoaBAAASKksdAEFZgYBAADIkiAAAECKBAEAAKCaBAEAAFKSIn2KUb5IEAAAgCwNAgAAkOUWIwAASDGkDAAAUE2CAAAAKRIEAACAahIEAABISQpdQIFJEAAAgCwJAgAApFTaKA0AAKCKBAEAAFI8xQgAAKCaBAEAAFIkCAAAANUkCAAAkGIfBAAAgGoSBAAASLEPAgAAQDUJAgAApHiKEQAAQDUNAgAAkOUWIwAASPGYUwAAgGoSBAAASKncwjMEDQKQ1ajskEKXAHXSsmnjC10CQK3RIAAAQIrHnAIAAFSTIAAAQMqWPYEgQQAAAFIkCAAAkGIGAQAAoJoEAQAAUiozha6gsCQIAABAlgQBAABStvSdlCUIAABAlgQBAABStuz8QIIAAACkSBAAACDFPggAAADVJAgAAJDiKUYAAADVNAgAAECWW4wAACBly77BSIIAAACkSBAAACDFY04BAACqSRAAACDFY04BAACqSRAAACBly84PJAgAAECKBAEAAFI8xQgAAKCaBAEAAFKSLXwKQYIAAABkSRAAACDFDAIAAEA1DQIAAKRURpK3Y0OVl5dHJpOJIUOG1N4vXk2DAAAAdchLL70Ut99+e+yzzz6b5PwaBAAASEnyeNTU0qVL49RTT4077rgjdthhhw38Db+aBgEAAAqkoqIilixZknNUVFSs8/ODBg2Ko446Knr27LnJatIgAABAgZSXl0dpaWnOUV5evtbP/u53v4vp06ev8/3a4jGnAACQsjHDwzU1bNiwGDp0aM5aSUnJGp97//33Y/DgwfHnP/85tt56601akwYBAAAKpKSkZK0NwX+aPn16LFy4MDp16pRdW716dTzzzDMxZsyYqKioiHr16tVKTRoEAABIKcaN0g477LD4+9//nrN25plnxu677x6XX355rTUHERoEAAAoek2aNIm99torZ61x48bRrFmzNdY3lgYBAABSkjzOIBQjDQIAANRBTz/99CY5rwYBAABSinEGIZ/sgwAAAGRJEAAAIGVLn0GQIAAAAFkSBAAASDGDAAAAUE2CAAAAKZWJGQQAAICIkCAA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Yt99940xY8YUuhSoU6ZMmRKDBg2KF154ISZPnhyrVq2KXr16xbJlywpdGtQJHnNKXhx44IHRsWPHGDt2bHZtjz32iL59+0Z5eXkBK4O6IZPJxIMPPhh9+/YtdClQ53zyySfRsmXLmDJlSnTr1q3Q5UDRkyCwya1YsSKmT58evXr1ylnv1atXPP/88wWqCoAtxeLFiyMiomnTpgWuBOoGDQKb3KJFi2L16tXRqlWrnPVWrVrFggULClQVAFuCJEli6NChcfDBB8dee+1V6HKgTqhf6ALYcmQymZzXSZKssQYAten888+PV199NaZOnVroUqDO0CCwyTVv3jzq1au3RlqwcOHCNVIFAKgtF1xwQTzyyCPxzDPPxDe+8Y1ClwN1hluM2OQaNmwYnTp1ismTJ+esT548OQ466KACVQXA5ipJkjj//PPjgQceiCeffDLat29f6JKgTpEgkBdDhw6Nfv36RefOnaNLly5x++23x7x58+Kcc84pdGlQtJYuXRpvv/129vXcuXNj5syZ0bRp02jbtm0BK4PiNmjQoJg0aVI8/PDD0aRJk2yCXVpaGo0aNSpwdVD8POaUvLn11lvjZz/7WcyfPz/22muvuPnmmz1uDr7C008/HT169FhjvX///jFx4sT8FwR1xLrm2yZMmBBnnHFGfouBOkiDAAAAZJlBAAAAsjQIAABAlgYBAADI0iAAAABZGgQAACBLgwAAAGRpEAAAgCwNAsBGGDlyZOy3337Z12eccUb07ds373W8++67kclkYubMmZv0Ou3atYtRo0Zt0msAUFgaBGCzc8YZZ0Qmk4lMJhMNGjSIb37zm3HJJZfEsmXLNvm1b7nllvXe5Thff6iPiNh7773jrLPOWut799xzTzRo0CA+/vjjTV4HAMVPgwBslr7//e/H/Pnz45133olrr702br311rjkkkvW+tmVK1fW2nVLS0tj++23r7Xz1ZaBAwfG73//+/jiiy/WeG/8+PFx9NFHR6tWrQpQGQDFRoMAbJZKSkqidevWsdNOO8Upp5wSp556ajz00EMR8X+3BY0fPz6++c1vRklJSSRJEosXL44f//jH0bJly9huu+3ie9/7Xrzyyis5573hhhuiVatW0aRJkxg4cGAsX7485/3/vMWosrIybrzxxthll12ipKQk2rZtG9ddd11ERLRv3z4iIjp06BCZTCa6d++e/bkJEybEHnvsEVtvvXXsvvvuceutt+Zc58UXX4wOHTrE1ltvHZ07d44ZM2Z85T+Pfv36RUVFRdx333056/PmzYsnn3wyBg4cGHPmzIljjz02WrVqFdtuu23sv//+8cQTT6zznGtLQD7//PPIZDLx9NNPZ9dmzZoVRx55ZGy77bbRqlWr6NevXyxatOgr6wWgcDQIwBahUaNGOUnB22+/Hb///e/j/vvvz/4B96ijjooFCxbEH//4x5g+fXp07NgxDjvssPj0008jIuL3v/99jBgxIq677rqYNm1atGnTZo0/uP+nYcOGxY033hhXXXVVzJo1KyZNmpT9m/oXX3wxIiKeeOKJmD9/fjzwwAMREXHHHXfE8OHD47rrrovXX389rr/++rjqqqvizjvvjIiIZcuWxdFHHx277bZbTJ8+PUaOHLnOdOTfmjVrFscee2xMmDAhZ33ChAnRqlWr6N27dyxdujSOPPLIeOKJJ2LGjBlxxBFHRJ8+fWLevHnr+U95TfPnz49DDz009ttvv5g2bVr86U9/io8//jhOOOGEDT4nAJtYArCZ6d+/f3LsscdmX//tb39LmjVrlpxwwglJkiTJiBEjkgYNGiQLFy7MfuYvf/lLst122yXLly/POde3vvWtZNy4cUmSJEmXLl2Sc845J+f9Aw88MNl3333Xeu0lS5YkJSUlyR133LHWOufOnZtERDJjxoyc9Z122imZNGlSztpPf/rTpEuXLkmSJMm4ceOSpk2bJsuWLcu+P3bs2LWeK+2xxx5LMplMMmfOnCRJkqSysjJp165dMmzYsHX+zJ577pmMHj06+3rnnXdObr755nXW/9lnnyURkTz11FNJkiTJVVddlfTq1SvnnO+//34SEcmbb765zusCUDgSBGCz9Oijj8a2224bW2+9dXTp0iW6desWo0ePzr6/8847R4sWLbKvp0+fHkuXLo1mzZrFtttumz3mzp0bc+bMiYiI119/Pbp06ZJznf98nfb6669HRUVFHHbYYetd9yeffBLvv/9+DBw4MKeOa6+9NqeOfffdN7bZZpv1quPfevXqFd/4xjeyKcKTTz4Z7777bpx55pkRUZVMXHbZZbHnnnvG9ttvH9tuu2288cYbG5UgTJ8+PZ566qmc32X33XePiMj+PgAUl/qFLgBgU+jRo0eMHTs2GjRoEGVlZdGgQYOc9xs3bpzzurKyMtq0aZNz7/y/bejQcaNGjWr8M5WVlRFRdZvRgQcemPNevXr1IiIiSZINqmerrbaKM844IyZOnBhXX311TJgwIbp16xa77rprRERceuml8fjjj8fPf/7z2GWXXaJRo0bxwx/+MFasWLHO8/1nPf858F1ZWRl9+vSJG2+8cY2fb9OmzQb9HgBsWhoEYLPUuHHj2GWXXdb78x07dowFCxZE/fr1o127dmv9zB577BEvvPBCnH766dm1F154YZ3n3HXXXaNRo0bxl7/8Za2PGG3YsGFERKxevTq71qpVq9hxxx3jnXfeiVNPPXWt591zzz3j7rvvji+//DLbhHxVHWlnnnlmXHvttfHAAw/EAw88ELfddlv2vWeffTbOOOOMOO644yIiYunSpfHuu++u81z/TmDmz58fHTp0iIhY45GtHTt2jPvvvz/atWsX9ev7Tw5AXeAWI4CI6NmzZ3Tp0iX69u0bjz/+eLz77rvx/PPPx5VXXhnTpk2LiIjBgwfH+PHjY/z48TF79uwYMWJE/OMf/1jnObfeeuu4/PLL47LLLou77ror5syZEy+88EL8+te/joiIli1bRqNGjbKDu4sXL46IqqcslZeXxy233BKzZ8+Ov//97zFhwoS46aabIiLilFNOia222ioGDhwYs2bNij/+8Y/x85//fL1+z/bt28f3vve9+PGPfxwNGjSIH/7wh9n3dtlll3jggQdi5syZ8corr8Qpp5ySTTTWplGjRvHd7343brjhhpg1a1Y888wzceWVV+Z8ZtCgQfHpp5/GySefHC+++GK888478ec//zkGDBiQ0xgBUDw0CAARkclk4o9//GN069YtBgwYEN/+9rfjpJNOinfffTf71KETTzwxfvKTn8Tll18enTp1ivfeey/OPffcrzzvVVddFRdffHH85Cc/iT322CNOPPHEWLhwYURE1K9fP/77v/87xo0bF2VlZXHsscdGRMRZZ50Vv/rVr2LixImx9957x6GHHhoTJ07MPhZ12223jT/84Q8xa9as6NChQwwfPnytt/Csy8CBA+Ozzz6Lk046KWeO4eabb44ddtghDjrooOjTp08cccQR0bFjx6881/jx42PlypXRuXPnGDx4cFx77bU575eVlcVzzz0Xq1evjiOOOCL22muvGDx4cJSWlmZvUQKguGSSDb2ZFQAA2Oz46xsAACBLgwAAAGRpEAAAgCwNAgAAkKVBAAAAsjQIAABAlgYBAADI0iAAAABZGgQAACBLgwAAAGRpEAAAgCwNAgAAkPX/A9SU+YpTe16CAAAAAElFTkSuQmCC\n",
+ "text/plain": [
+ ""
+ ]
+ },
+ "metadata": {},
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "%matplotlib inline \n",
+ "import matplotlib.pyplot as plt\n",
+ "import seaborn as sns\n",
+ "plt.figure(figsize = (10,7))\n",
+ "sns.heatmap(clfx, annot = True)\n",
+ "plt.xlabel(\"Predicted Value\")\n",
+ "plt.ylabel(\"True Value\")\n",
+ "plt.show()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "4e610386",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "From the confusion matrix, it can be seen that the model built predicted the values for 'setosa' correctly, predicted the values\n",
+ "for 'versicolor' correctly also, but predicted 14 values for 'virginica' correctly and 2 values for 'virginica' wrongly. It confused \n",
+ "it for 'versicolor'."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 24,
+ "id": "e5679084",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "['DESCR',\n",
+ " 'data',\n",
+ " 'data_filename',\n",
+ " 'data_module',\n",
+ " 'feature_names',\n",
+ " 'frame',\n",
+ " 'target',\n",
+ " 'target_filename']"
+ ]
+ },
+ "execution_count": 24,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "diabetes = datasets.load_diabetes()\n",
+ "dir(diabetes)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 35,
+ "id": "d6cd8827",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "X = diabetes.data\n",
+ "y = diabetes.target"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 36,
+ "id": "19a23fca",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "from sklearn.model_selection import train_test_split\n",
+ "X_train, X_test, y_train, y_test = train_test_split(X,y, test_size = 0.3)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 37,
+ "id": "b007be23",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "RandomForestClassifier(n_estimators=30) In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook. On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org. "
+ ],
+ "text/plain": [
+ "RandomForestClassifier(n_estimators=30)"
+ ]
+ },
+ "execution_count": 37,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "diab_model = RandomForestClassifier(n_estimators= 30)\n",
+ "diab_model.fit(X_train, y_train)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 39,
+ "id": "22683910",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "0.0"
+ ]
+ },
+ "execution_count": 39,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "diab_model.score(X_test, y_test)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 41,
+ "id": "9eed31da",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "['age', 'sex', 'bmi', 'bp', 's1', 's2', 's3', 's4', 's5', 's6']"
+ ]
+ },
+ "execution_count": 41,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "diabetes.feature_names"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 44,
+ "id": "539dc1a3",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "RandomForestRegressor() In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook. On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org. "
+ ],
+ "text/plain": [
+ "RandomForestRegressor()"
+ ]
+ },
+ "execution_count": 44,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "from sklearn.ensemble import RandomForestRegressor\n",
+ "model2 = RandomForestRegressor(n_estimators= 100)\n",
+ "model2.fit(X_train, y_train)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 45,
+ "id": "ae5a552c",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "0.3072018707051737"
+ ]
+ },
+ "execution_count": 45,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "model2.score(X_test, y_test)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 46,
+ "id": "09fb4676",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " 0 \n",
+ " 1 \n",
+ " 2 \n",
+ " 3 \n",
+ " 4 \n",
+ " 5 \n",
+ " 6 \n",
+ " 7 \n",
+ " 8 \n",
+ " 9 \n",
+ " \n",
+ " \n",
+ " \n",
+ " \n",
+ " 0 \n",
+ " 0.038076 \n",
+ " 0.050680 \n",
+ " 0.061696 \n",
+ " 0.021872 \n",
+ " -0.044223 \n",
+ " -0.034821 \n",
+ " -0.043401 \n",
+ " -0.002592 \n",
+ " 0.019907 \n",
+ " -0.017646 \n",
+ " \n",
+ " \n",
+ " 1 \n",
+ " -0.001882 \n",
+ " -0.044642 \n",
+ " -0.051474 \n",
+ " -0.026328 \n",
+ " -0.008449 \n",
+ " -0.019163 \n",
+ " 0.074412 \n",
+ " -0.039493 \n",
+ " -0.068332 \n",
+ " -0.092204 \n",
+ " \n",
+ " \n",
+ " 2 \n",
+ " 0.085299 \n",
+ " 0.050680 \n",
+ " 0.044451 \n",
+ " -0.005670 \n",
+ " -0.045599 \n",
+ " -0.034194 \n",
+ " -0.032356 \n",
+ " -0.002592 \n",
+ " 0.002861 \n",
+ " -0.025930 \n",
+ " \n",
+ " \n",
+ " 3 \n",
+ " -0.089063 \n",
+ " -0.044642 \n",
+ " -0.011595 \n",
+ " -0.036656 \n",
+ " 0.012191 \n",
+ " 0.024991 \n",
+ " -0.036038 \n",
+ " 0.034309 \n",
+ " 0.022688 \n",
+ " -0.009362 \n",
+ " \n",
+ " \n",
+ " 4 \n",
+ " 0.005383 \n",
+ " -0.044642 \n",
+ " -0.036385 \n",
+ " 0.021872 \n",
+ " 0.003935 \n",
+ " 0.015596 \n",
+ " 0.008142 \n",
+ " -0.002592 \n",
+ " -0.031988 \n",
+ " -0.046641 \n",
+ " \n",
+ " \n",
+ "
\n",
+ "
"
+ ],
+ "text/plain": [
+ " 0 1 2 3 4 5 6 \\\n",
+ "0 0.038076 0.050680 0.061696 0.021872 -0.044223 -0.034821 -0.043401 \n",
+ "1 -0.001882 -0.044642 -0.051474 -0.026328 -0.008449 -0.019163 0.074412 \n",
+ "2 0.085299 0.050680 0.044451 -0.005670 -0.045599 -0.034194 -0.032356 \n",
+ "3 -0.089063 -0.044642 -0.011595 -0.036656 0.012191 0.024991 -0.036038 \n",
+ "4 0.005383 -0.044642 -0.036385 0.021872 0.003935 0.015596 0.008142 \n",
+ "\n",
+ " 7 8 9 \n",
+ "0 -0.002592 0.019907 -0.017646 \n",
+ "1 -0.039493 -0.068332 -0.092204 \n",
+ "2 -0.002592 0.002861 -0.025930 \n",
+ "3 0.034309 0.022688 -0.009362 \n",
+ "4 -0.002592 -0.031988 -0.046641 "
+ ]
+ },
+ "execution_count": 46,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "df = pd.DataFrame(diabetes.data)\n",
+ "df.head()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "760f6747",
+ "metadata": {},
+ "outputs": [],
+ "source": []
+ }
+ ],
+ "metadata": {
+ "kernelspec": {
+ "display_name": "Python 3 (ipykernel)",
+ "language": "python",
+ "name": "python3"
+ },
+ "language_info": {
+ "codemirror_mode": {
+ "name": "ipython",
+ "version": 3
+ },
+ "file_extension": ".py",
+ "mimetype": "text/x-python",
+ "name": "python",
+ "nbconvert_exporter": "python",
+ "pygments_lexer": "ipython3",
+ "version": "3.9.13"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 5
+}
From 00d564257c18382462aa4e16318dc1b3321a17ab Mon Sep 17 00:00:00 2001
From: MOSADIJESU OYAWALE <104419673+Mo-techie@users.noreply.github.com>
Date: Mon, 5 Dec 2022 09:44:09 +0100
Subject: [PATCH 8/9] Add files via upload
From e08f2e4c3c930573ac50722eb3466b608d3a4754 Mon Sep 17 00:00:00 2001
From: MOSADIJESU OYAWALE <104419673+Mo-techie@users.noreply.github.com>
Date: Mon, 5 Dec 2022 10:03:39 +0100
Subject: [PATCH 9/9] Add files via upload