├── Tutorial_EDIT.pdf ├── GCT PRESENTATION.pptx ├── day3twoassg.py ├── gct project report.pdf ├── day5.py ├── day1.py ├── day5conditional.py ├── day4coesmatic.py ├── day3.py ├── day5nesteddic.py ├── day4.py ├── day2.py ├── day3lst.py ├── LICENSE ├── .gitignore ├── README.md └── ml from gct.ipynb /Tutorial_EDIT.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FarhaKousar1601/Online_Shopping_Sentiment_Analaysis_Flipkart/main/Tutorial_EDIT.pdf -------------------------------------------------------------------------------- /GCT PRESENTATION.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FarhaKousar1601/Online_Shopping_Sentiment_Analaysis_Flipkart/main/GCT PRESENTATION.pptx -------------------------------------------------------------------------------- /day3twoassg.py: -------------------------------------------------------------------------------- 1 | email = input("Enter your email address: ") 2 | res = email[email.index('@')+1:] 3 | print("Domain name: " + res) 4 | -------------------------------------------------------------------------------- /gct project report.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FarhaKousar1601/Online_Shopping_Sentiment_Analaysis_Flipkart/main/gct project report.pdf -------------------------------------------------------------------------------- /day5.py: -------------------------------------------------------------------------------- 1 | #dictionary enter th student details 2 | st1 = {"name":"farha","USN":"1KN21Ai010","branch":"AIML"} 3 | st1["name"]= "Divya" 4 | print(st1) 5 | 6 | -------------------------------------------------------------------------------- /day1.py: -------------------------------------------------------------------------------- 1 | # Day1 GCT intern 2 | print("Hello") 3 | 4 | # check the keyword in python 5 | import keyword 6 | print(keyword.kwlist) 7 | print(len(keyword.kwlist)) 8 | -------------------------------------------------------------------------------- /day5conditional.py: -------------------------------------------------------------------------------- 1 | a = 12 2 | b = 10 3 | 4 | if a>b: 5 | 6 | print("a is greater than b") 7 | else: 8 | print("b is less than a") 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /day4coesmatic.py: -------------------------------------------------------------------------------- 1 | #Assigment is dictionary cosematics thing of girl (key:value) 2 | cosmetic_thing = {"lip":"lipstick", "Eyeslash":"Mascara", "Skin tone":"Foundation"} 3 | key = input("Enter the key: ") 4 | value = cosmetic_thing.get(key) 5 | print(f"The value for the key '{key}' is: {value}") 6 | -------------------------------------------------------------------------------- /day3.py: -------------------------------------------------------------------------------- 1 | #Arithematic operation 2 | a = 12 3 | b = 24 4 | c = 4 5 | print(a + b) 6 | print(a - b) 7 | print(a * b) 8 | print(a / c) 9 | print(a // c) 10 | print(a % b) 11 | 12 | #Logical 13 | a+b 14 | a = 12 15 | 16 | 17 | #Assigment 18 | a += 2 19 | b+=1 20 | #Membership 21 | b=["days","three"] 22 | print("three in a") 23 | 24 | 25 | print(a) 26 | print(b) 27 | 28 | #Bitwise 29 | print(6&2) 30 | print(12^2) 31 | 32 | -------------------------------------------------------------------------------- /day5nesteddic.py: -------------------------------------------------------------------------------- 1 | #dictionary Nested 2 | Number = { 3 | 'one':1, 4 | 'two':2, 5 | 'three':3, 6 | 'four':4, 7 | 8 | } 9 | 10 | for value in Number.values(): 11 | print(value) 12 | 13 | #remove the value and add:pop,pop.item,clear,del dict 14 | Number.pop("two") 15 | print(Number) 16 | 17 | Number.clear() 18 | print("Dictionary after using clear:", Number) 19 | 20 | -------------------------------------------------------------------------------- /day4.py: -------------------------------------------------------------------------------- 1 | '''day-4 class 2 | List is mutable,duplicate value 3 | TUPLE is unchangable,immutable 4 | Dictionary is collection of item(key:value)''' 5 | #Input of student details in list,tuple,dictionary 6 | 7 | a = [] 8 | b = () 9 | c = {} 10 | 11 | name = input("Enter the name: ").title() 12 | usn = input("Enter the USN: ").upper() 13 | branch = input("Enter the branch: ") 14 | sem = input("Enter the semester: ") 15 | 16 | a.extend([name, usn, branch, sem]) 17 | 18 | b = (name, usn, branch, sem) 19 | 20 | c["Name"] = name 21 | c["USN"] = usn 22 | c["Branch"] = branch 23 | c["Semester"] = sem 24 | 25 | 26 | print(a) 27 | print(b) 28 | print(c) 29 | 30 | 31 | print(type(a)) 32 | print(type(b)) 33 | print(type(c)) 34 | -------------------------------------------------------------------------------- /day2.py: -------------------------------------------------------------------------------- 1 | # input data type 2 | #a = input("Enter the number:") 3 | #b = input("Enter the number:") #concation/append the input 4 | #c = a + b 5 | #print(c) 6 | 7 | 8 | #d = int(input("Enter the number:")) 9 | #e = int(input("Enter the number:")) #add the integer 10 | #f = d + e 11 | #print(f) 12 | 13 | #a = float(input("Enter the number:")) 14 | #b = float(input("Enter the number:")) #add the float 15 | #c = a+b 16 | #print(c) 17 | 18 | #string = input("Enter the string:") 19 | #print(string) 20 | #print(string[::-1]) #slicing 21 | 22 | # display the sentence intern 23 | sentence = "Iam an Intern in GCT" 24 | print(sentence[7:13]) 25 | print( sentence[12:6:-1]) 26 | print( sentence[7]) 27 | print( sentence[12]) 28 | 29 | 30 | 31 | 32 | -------------------------------------------------------------------------------- /day3lst.py: -------------------------------------------------------------------------------- 1 | list1 =[1,2,3,4,5,6,7,8,9] 2 | list2 = ["Zubida","Ismail","Zainba","Muhammed","Almas","Ayesha","Misba","Farha"] 3 | print(list1) 4 | print(list2) #print list1&list2 5 | 6 | print(len(list1)) 7 | print(len(list2)) #length of list 1 and list2 8 | 9 | print(list1[-1]) 10 | print(list2[-1]) #last element of list1 & list2 11 | 12 | print(list1[0]) 13 | print(list2[0]) #Access the first element of list1 & list2 14 | 15 | print(list2[-5:-4]) #negative indexing middle word of the list2 16 | 17 | list2[3] = "uppa" 18 | print(list2) #change the middle value of the list2 19 | 20 | list1.insert(5,12) 21 | list2.insert(5,"Syed") 22 | print("Updated list1:", list1) 23 | print("Updated list2:", list2) #Insert value at the 5th index of the lists 24 | 25 | 26 | list1.append(14) 27 | list2.append("Family") 28 | print(list1) 29 | print(list2) #Append function add value at end of lists 30 | 31 | list1.remove(6) 32 | list2.remove("Syed") 33 | print(list1) 34 | print(list2) #remove functionof any value 35 | 36 | 37 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2023 Farha Kousar 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Byte-compiled / optimized / DLL files 2 | __pycache__/ 3 | *.py[cod] 4 | *$py.class 5 | 6 | # C extensions 7 | *.so 8 | 9 | # Distribution / packaging 10 | .Python 11 | build/ 12 | develop-eggs/ 13 | dist/ 14 | downloads/ 15 | eggs/ 16 | .eggs/ 17 | lib/ 18 | lib64/ 19 | parts/ 20 | sdist/ 21 | var/ 22 | wheels/ 23 | share/python-wheels/ 24 | *.egg-info/ 25 | .installed.cfg 26 | *.egg 27 | MANIFEST 28 | 29 | # PyInstaller 30 | # Usually these files are written by a python script from a template 31 | # before PyInstaller builds the exe, so as to inject date/other infos into it. 32 | *.manifest 33 | *.spec 34 | 35 | # Installer logs 36 | pip-log.txt 37 | pip-delete-this-directory.txt 38 | 39 | # Unit test / coverage reports 40 | htmlcov/ 41 | .tox/ 42 | .nox/ 43 | .coverage 44 | .coverage.* 45 | .cache 46 | nosetests.xml 47 | coverage.xml 48 | *.cover 49 | *.py,cover 50 | .hypothesis/ 51 | .pytest_cache/ 52 | cover/ 53 | 54 | # Translations 55 | *.mo 56 | *.pot 57 | 58 | # Django stuff: 59 | *.log 60 | local_settings.py 61 | db.sqlite3 62 | db.sqlite3-journal 63 | 64 | # Flask stuff: 65 | instance/ 66 | .webassets-cache 67 | 68 | # Scrapy stuff: 69 | .scrapy 70 | 71 | # Sphinx documentation 72 | docs/_build/ 73 | 74 | # PyBuilder 75 | .pybuilder/ 76 | target/ 77 | 78 | # Jupyter Notebook 79 | .ipynb_checkpoints 80 | 81 | # IPython 82 | profile_default/ 83 | ipython_config.py 84 | 85 | # pyenv 86 | # For a library or package, you might want to ignore these files since the code is 87 | # intended to run in multiple environments; otherwise, check them in: 88 | # .python-version 89 | 90 | # pipenv 91 | # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control. 92 | # However, in case of collaboration, if having platform-specific dependencies or dependencies 93 | # having no cross-platform support, pipenv may install dependencies that don't work, or not 94 | # install all needed dependencies. 95 | #Pipfile.lock 96 | 97 | # poetry 98 | # Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control. 99 | # This is especially recommended for binary packages to ensure reproducibility, and is more 100 | # commonly ignored for libraries. 101 | # https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control 102 | #poetry.lock 103 | 104 | # pdm 105 | # Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control. 106 | #pdm.lock 107 | # pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it 108 | # in version control. 109 | # https://pdm.fming.dev/#use-with-ide 110 | .pdm.toml 111 | 112 | # PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm 113 | __pypackages__/ 114 | 115 | # Celery stuff 116 | celerybeat-schedule 117 | celerybeat.pid 118 | 119 | # SageMath parsed files 120 | *.sage.py 121 | 122 | # Environments 123 | .env 124 | .venv 125 | env/ 126 | venv/ 127 | ENV/ 128 | env.bak/ 129 | venv.bak/ 130 | 131 | # Spyder project settings 132 | .spyderproject 133 | .spyproject 134 | 135 | # Rope project settings 136 | .ropeproject 137 | 138 | # mkdocs documentation 139 | /site 140 | 141 | # mypy 142 | .mypy_cache/ 143 | .dmypy.json 144 | dmypy.json 145 | 146 | # Pyre type checker 147 | .pyre/ 148 | 149 | # pytype static type analyzer 150 | .pytype/ 151 | 152 | # Cython debug symbols 153 | cython_debug/ 154 | 155 | # PyCharm 156 | # JetBrains specific template is maintained in a separate JetBrains.gitignore that can 157 | # be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore 158 | # and can be added to the global gitignore or merged into this file. For a more nuclear 159 | # option (not recommended) you can uncomment the following to ignore the entire idea folder. 160 | #.idea/ 161 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Global Core Tech Internship - Data Science with Python 2 | 3 | Welcome to the Global Core Tech Internship on Data Science with Python! This four-week internship program, from October 26th to November 24th, is designed to equip you with the essential skills and knowledge in data science using Python, with a focus on libraries such as NumPy, Pandas, Matplotlib, and exploratory data analysis (EDA). 4 | 5 | ## Table of Contents 6 | 7 | 1. [**Prerequisites**](#prerequisites) 8 | - [Python 3.7 Installation](#python-370-installation) 9 | - [Setting up the Environment](#setting-up-the-environment) 10 | 2. [**Getting Started**](#getting-started) 11 | - [Verifying Python Installation](#verifying-python-installation) 12 | - [Installing Libraries](#installing-libraries) 13 | 3. [**Exploratory Data Analysis (EDA)**](#exploratory-data-analysis-eda) 14 | 4. [**Learning Resources**](#learning-resources) 15 | 5. [**Projects**](#projects) 16 | 17 | ## Prerequisites 18 | 19 | ### Python 3.7 Installation 20 | 21 | We'll start by setting up Python 3.7, which is the version we'll be using for this internship. 22 | 23 | 1. Download Python 3.7 from [python.org](https://www.python.org/downloads/windows/). 24 | 2. Run the Windows x86-64 executable installer. 25 | 3. During installation, make sure to: 26 | - Add Python 3.7 to your system PATH by ticking the corresponding option. 27 | - Select "Install launcher for all users" and "Add Python 3.7 to PATH". 28 | 4. Complete the installation process, and ensure that Python 3.7 is installed by opening a command prompt (Win+R, type `cmd`, press Enter) and running: 29 | ``` 30 | python --version 31 | ``` 32 | 33 | ### Setting up the Environment 34 | 35 | To ensure the correct environment configuration, follow these steps: 36 | 37 | 1. Open a command prompt and execute the following command to set the PATH: 38 | ``` 39 | set PATH=%PATH%;C:\Program Files\Python3 40 | ``` 41 | 2. Edit your system variables by adding `C:\Program Files\Python3` to the `PATH` variable. 42 | 3. Verify the Python version again by running: 43 | ``` 44 | python --version 45 | ``` 46 | 47 | ## Getting Started 48 | 49 | ### Verifying Python Installation 50 | 51 | Make sure Python 3.7 is installed by running the following command in the command prompt: 52 | 53 | ```bash 54 | python --version 55 | ``` 56 | 57 | ### Installing Libraries 58 | 59 | Install the required Python libraries (NumPy, Pandas, Matplotlib, Seaborn, and Plotly) using pip: 60 | 61 | ```bash 62 | pip install numpy pandas matplotlib seaborn plotly 63 | ``` 64 | 65 | After installation, close the command prompt. 66 | 67 | ### Verifying Library Installation 68 | 69 | To verify that the libraries are installed correctly, open the Python IDLE for Python 3.7.0 and run the following commands: 70 | 71 | ```python 72 | import pip 73 | import numpy 74 | import pandas 75 | import matplotlib 76 | import seaborn 77 | import plotly 78 | ``` 79 | 80 | ## Exploratory Data Analysis (EDA) 81 | 82 | Explore and analyze data by using the libraries you've just installed. Perform data analysis, visualization, and gain insights from your datasets. 83 | 84 | ## Learning Resources 85 | 86 | As you progress through the internship, you can enhance your knowledge and skills through various online platforms and resources, including: 87 | 88 | - [Jovian](https://jovian.ai/) 89 | - [Kaggle](https://www.kaggle.com/) 90 | - [Codecademy](https://www.codecademy.com/) 91 | - [HackerRank](https://www.hackerrank.com/) 92 | - [InterviewBit](https://www.interviewbit.com/) 93 | - [Coding Ninjas](https://www.codingninjas.com/) 94 | - [W3Schools](https://www.w3schools.com/) 95 | - [LeetCode](https://leetcode.com/) 96 | - [Codechef](https://www.codechef.com/) 97 | - [Scaler](https://www.scaler.com/) 98 | - [GitHub](https://github.com/) 99 | 100 | You can also refer to the book "Tutorial 3.7: Python from Beginner to Advanced" to deepen your Python knowledge. 101 | 102 | 103 | ## Projects 104 | 105 | During this internship, you will have the opportunity to execute and work on data science projects in Jupyter Notebook using Python 3.7.0. One of the projects you'll be working on is the **Online Shopping Sentiment Analysis Project: Flipkart**. 106 | 107 | ### Online Shopping Sentiment Analysis Project: Flipkart 108 | 109 | - **Project Description**: In this project, you will delve into the world of sentiment analysis in the context of online shopping reviews on Flipkart, a popular e-commerce platform. You will analyze and classify customer reviews into positive, negative, or neutral sentiments, providing valuable insights for both consumers and businesses. 110 | 111 | - **Project Goals**: 112 | - Collect and preprocess data from Flipkart reviews. 113 | - Perform text analysis and sentiment classification using Python and data science libraries. 114 | - Create visualizations to present your findings effectively. 115 | - Draw conclusions and make recommendations based on the sentiment analysis results. 116 | 117 | This project is an excellent opportunity to apply the knowledge and skills you've gained during the internship to a real-world data science scenario. It will also give you a chance to showcase your abilities as a data scientist. 118 | 119 | Feel free to reach out to mentors and fellow interns for guidance and support as you work on the **Online Shopping Sentiment Analysis Project: Flipkart** during your internship. 120 | 121 | -------------------------------------------------------------------------------- /ml from gct.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "code", 5 | "execution_count": 4, 6 | "id": "a22d1b4b", 7 | "metadata": {}, 8 | "outputs": [ 9 | { 10 | "data": { 11 | "image/png": "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", 12 | "text/plain": [ 13 | "
" 14 | ] 15 | }, 16 | "metadata": {}, 17 | "output_type": "display_data" 18 | } 19 | ], 20 | "source": [ 21 | "import matplotlib.pyplot as plt\n", 22 | "\n", 23 | "x = [1,2,3,4,5,6,7,8,9]\n", 24 | "y = [1,2,3,4,5,6,7,8,9]\n", 25 | "\n", 26 | "plt.scatter(x,y)\n", 27 | "plt.show()" 28 | ] 29 | }, 30 | { 31 | "cell_type": "code", 32 | "execution_count": 5, 33 | "id": "97ea2d30", 34 | "metadata": {}, 35 | "outputs": [ 36 | { 37 | "name": "stdout", 38 | "output_type": "stream", 39 | "text": [ 40 | "Requirement already satisfied: scipy in f:\\anaconda311\\lib\\site-packages (1.11.3)\n", 41 | "Requirement already satisfied: numpy<1.28.0,>=1.21.6 in f:\\anaconda311\\lib\\site-packages (from scipy) (1.24.3)\n" 42 | ] 43 | } 44 | ], 45 | "source": [ 46 | "! pip install scipy" 47 | ] 48 | }, 49 | { 50 | "cell_type": "code", 51 | "execution_count": 6, 52 | "id": "44f74528", 53 | "metadata": {}, 54 | "outputs": [ 55 | { 56 | "name": "stdout", 57 | "output_type": "stream", 58 | "text": [ 59 | "Name: scipy\n", 60 | "Version: 1.11.3\n", 61 | "Summary: SciPy: Scientific Library for Python\n", 62 | "Home-page: https://www.scipy.org\n", 63 | "Author: \n", 64 | "Author-email: \n", 65 | "License: BSD\n", 66 | "Location: F:\\anaconda311\\Lib\\site-packages\n", 67 | "Requires: numpy\n", 68 | "Required-by: datashader, gensim, imbalanced-learn, scikit-image, scikit-learn, statsmodels\n" 69 | ] 70 | } 71 | ], 72 | "source": [ 73 | "! pip show scipy" 74 | ] 75 | }, 76 | { 77 | "cell_type": "code", 78 | "execution_count": 8, 79 | "id": "df26b472", 80 | "metadata": {}, 81 | "outputs": [ 82 | { 83 | "name": "stdout", 84 | "output_type": "stream", 85 | "text": [ 86 | " x y\n", 87 | "0 1 1\n", 88 | "1 2 2\n", 89 | "2 3 3\n", 90 | "3 4 4\n", 91 | "4 5 5\n", 92 | "5 6 6\n", 93 | "6 7 7\n", 94 | "7 8 8\n", 95 | "8 9 9\n" 96 | ] 97 | }, 98 | { 99 | "data": { 100 | "image/png": "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nhYsWGB3rDpz+PBhZWRk6Kabbgr4j8faZeDAgfrwww/13XffSZI2b96sTz/9VMOHD7c5WWAcPXpU5eXlcrlclc6HhITo008/rfc8LP00YZZl6Z577tHAgQOVmJhod5yA2bJli/r376/S0lK1atVKy5YtU0JCgt2xAub1119XTk6ObevFde2CCy7QK6+8ou7du+vHH3/Uo48+qgEDBujrr79W27Zt7Y532rZt26b09HTdc889uv/++5WVlaW77rpLTqdTf/rTn+yOF3DvvPOO9u/fr3HjxtkdJWCmTp0qr9erHj16KDg4WOXl5Zo1a5ZGjRpld7SACA0NVf/+/fXII4/o7LPPVocOHbRkyRJ98cUX6tatW/0Hqvc5nAZEjXzp5/bbb7diY2OtgoICu6MEVFlZmbV161YrOzvbuu+++6x27dpZX3/9td2xAmLnzp1WRESEtWnTJv+5xrb082sHDhywOnToYD311FN2RwmI5s2bW/3796907s4777QuvPBCmxLVraFDh1ojR460O0ZALVmyxOrYsaO1ZMkS61//+pf1yiuvWOHh4dbLL79sd7SA+f77762LL77YkmQFBwdb/fr1s2688Ubr7LPPrvcsFJXf0JiLyh133GF17NjR2rZtm91R6tzll19u3XbbbXbHCIhly5b5/4vj+CHJcjgcVnBwsHX06FG7I9aJwYMHWxMmTLA7RkB06tTJuvnmmyudmzt3rhUdHW1Torqzfft2KygoyHrnnXfsjhJQHTt2tJ5//vlK5x555BErPj7epkR158CBA9aePXssy7Ks6667zho+fHi9Z2Dpp4mxLEt33nmnli1bprVr1youLs7uSHXOsiyVlZXZHSMgLr/8cm3ZsqXSufHjx6tHjx6aOnVqo/p2zHFlZWX65ptv9Lvf/c7uKAFx0UUXVbklwHfffafY2FibEtWdhQsXKiIiQiNGjLA7SkAdOnRIQUGVt3gGBwc3qq8nH9eyZUu1bNlS+/bt0+rVq/X444/XewaKyq8cOHBA33//vf9xfn6+Nm3apPDwcHXq1MnGZIExadIkvfbaa3r33XcVGhqqwsJCSZLb7VZISIjN6U7f/fffr+TkZMXExKikpESvv/661q5dq8zMTLujBURoaGiV/UQtW7ZU27ZtG80+oz//+c9KSUlRp06dVFRUpEcffVQ+n09jx461O1pA3H333RowYIAee+wxXXfddcrKytL8+fM1f/58u6MFVEVFhRYuXKixY8eqWbPG9VGTkpKiWbNmqVOnTurZs6e++uorPf3007rpppvsjhYwq1evlmVZio+P1/fff697771X8fHxGj9+fP2Hqfc5HMN9/PHHlqQqx9ixY+2OFhDVXZska+HChXZHC4ibbrrJio2NtVq0aGG1b9/euvzyy63333/f7lh1qrHtUfnjH/9oRUVFWc2bN7eio6Otq666qtHsMTpuxYoVVmJiouV0Oq0ePXpY8+fPtztSwK1evdqSZH377bd2Rwk4n89nTZ482erUqZPlcrmss846y3rggQessrIyu6MFzBtvvGGdddZZVosWLazIyEhr0qRJ1v79+23J4rAsy6r/egQAAHBy3EcFAAAYi6ICAACMRVEBAADGoqgAAABjUVQAAICxKCoAAMBYFBUAAGAsigqABm/QoEGaMmWK3TEA1AFu+AagwSsuLlbz5s0VGhpqdxQAAUZRAQAAxmLpB0DA7N27V5GRkXrsscf857744gu1aNFC77//frWvyc7O1pAhQ9SuXTu53W5dcsklysnJ8T+/du1atWjRQp988on/3FNPPaV27drJ4/FIqrr0M3fuXHXr1k0ul0sdOnTQNddcE+ArBVBfKCoAAqZ9+/b6+9//rhkzZmjjxo06cOCARo8erdtvv11Dhw6t9jUlJSUaO3asPvnkE23YsEHdunXT8OHDVVJSIun/l5AxY8bI6/Vq8+bNeuCBB7RgwQJFRUVVeb+NGzfqrrvu0sMPP6xvv/1WmZmZuvjii+v0ugHUHZZ+AATcpEmT9MEHH6hfv37avHmzsrOz5XK5Tum15eXlatOmjV577TWNHDlSknT48GFdeOGF6tatm77++mv1799fCxYs8L9m0KBB6t27t+bMmaOlS5dq/Pjx2rVrF3tWgEaAGRUAAffkk0/q6NGjevPNN/Xqq6/K5XJp586datWqlf84vjxUVFSkCRMmqHv37nK73XK73Tpw4IB27tzpf78WLVooIyNDb7/9tn7++WfNmTPnhH97yJAhio2N1VlnnaUxY8bo1Vdf1aFDh+r6kgHUkWZ2BwDQ+Gzbtk179uxRRUWFduzYoV69eik6OlqbNm3yjwkPD5ckjRs3Tnv37tWcOXMUGxsrp9Op/v376/Dhw5Xe87PPPpN07Bs+xcXFatmyZbV/OzQ0VDk5OVq7dq3ef/99PfTQQ5oxY4ays7PVunXrOrleAHWHpR8AAXX48GElJSWpd+/e6tGjh55++mlt2bJFHTp0qHZ8aGio5s6dqzFjxkiSCgoK1KlTJz3zzDP+DbI//PCDevfureeee05vvvmmSktL9eGHHyoo6Nik8C+Xfn7t4MGDat26td544w1dddVVdXLNAOoOMyoAAuqBBx6Q1+vVc889p1atWmnVqlW6+eabtXLlymrHd+3aVYsXL1bfvn3l8/l07733KiQkxP98eXm5xowZo6FDh2r8+PFKTk7WOeeco6eeekr33ntvlfdbuXKltm3bposvvlht2rTRP//5T1VUVCg+Pr7OrhlA3WGPCoCAWbt2rebMmaPFixcrLCxMQUFBWrx4sT799FOlp6dX+5q///3v2rdvn8477zyNGTNGd911lyIiIvzPz5o1S9u3b9f8+fMlSZGRkXrxxRf14IMPVlpKOq5169ZaunSpLrvsMp199tmaN2+elixZop49e9bJNQOoWyz9AAAAYzGjAgAAjEVRAQAAxqKoAAAAY1FUAACAsSgqAADAWBQVAABgLIoKAAAwFkUFAAAYi6ICAACMRVEBAADGoqgAAABjUVQAAICx/h8pk/eq69ufXgAAAABJRU5ErkJggg==", 101 | "text/plain": [ 102 | "
" 103 | ] 104 | }, 105 | "metadata": {}, 106 | "output_type": "display_data" 107 | } 108 | ], 109 | "source": [ 110 | "import pandas as pd\n", 111 | "import matplotlib.pyplot as plt\n", 112 | "\n", 113 | "x = [1,2,3,4,5,6,7,8,9]\n", 114 | "y = [1,2,3,4,5,6,7,8,9]\n", 115 | "\n", 116 | "data = {'x':x, 'y':y}\n", 117 | "df = pd.DataFrame(data)\n", 118 | "print(df)\n", 119 | "\n", 120 | "plt.scatter(df['x'],df['y'])\n", 121 | "plt.xlabel('x-axis')\n", 122 | "plt.ylabel('y-axis')\n", 123 | "plt.title('scatter Plot')\n", 124 | "plt.show()\n" 125 | ] 126 | }, 127 | { 128 | "cell_type": "code", 129 | "execution_count": 29, 130 | "id": "0d65f043", 131 | "metadata": {}, 132 | "outputs": [ 133 | { 134 | "data": { 135 | "image/png": "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srIyk5MAAICm+ulzuymbt/t0ESkvL5ckJSUlmZwEAAA0V3l5uex2e6NzfPpZM263W/v27VN0dLQslpZ9KF1ZWZmSkpJUWFjIc2zOAO9jy+B9bBm8jy2D97FlBPP7aBiGysvL1alTJ4WENH4ViE+fEQkJCWnw5N6WFhMTE3R/QDyB97Fl8D62DN7HlsH72DKC9X083ZmQn3CxKgAAMA1FBAAAmCZoi4jNZtO0adNks9nMjuLXeB9bBu9jy+B9bBm8jy2D97FpfPpiVQAAENiC9owIAAAwH0UEAACYhiICAABMQxEBAACmCfoismvXLt11111KTk5WZGSkunfvrmnTpqm6utrsaD7v1VdfVXJysiIiIjRw4EB99dVXZkfyK1lZWTrnnHMUHR2tuLg4XXfdddqyZYvZsfxeVlaWLBaL7rvvPrOj+J29e/fqtttuU/v27dWqVSsNGDBAa9euNTuWX6mtrdWjjz5a95nSrVs3Pfnkk3K73WZH81k+vbOqN2zevFlut1uvvfaaevTooby8PN19992qrKzUzJkzzY7ns5YuXar77rtPr776qoYOHarXXntNV1xxhfLz89W5c2ez4/mFL774QpmZmTrnnHNUW1urRx55RCNGjFB+fr6ioqLMjueXVq9erXnz5qlfv35mR/E7hw8f1tChQzV8+HB99NFHiouL044dO9SmTRuzo/mVGTNm6C9/+YsWLFigPn36aM2aNbrjjjtkt9s1adIks+P5JG7fPYnnnntOc+fO1c6dO82O4rPOPfdcZWRkaO7cuXVjvXv31nXXXaesrCwTk/mvAwcOKC4uTl988YUuvPBCs+P4nYqKCmVkZOjVV1/V008/rQEDBujFF180O5bfmDJlir755hvObJ6hq6++Wh07dtQbb7xRN3bjjTeqVatW+vvf/25iMt8V9EszJ+NwONSuXTuzY/is6upqrV27ViNGjKg3PmLECH377bcmpfJ/DodDkviz9wtlZmbqqquu0qWXXmp2FL+0bNkyDRo0SKNHj1ZcXJzS09P1+uuvmx3L7wwbNkyfffaZtm7dKklav369vv76a1155ZUmJ/NdQb80c6IdO3Zo9uzZev75582O4rMOHjwol8uljh071hvv2LGjiouLTUrl3wzD0OTJkzVs2DClpaWZHcfvLFmyRDk5OVq9erXZUfzWzp07NXfuXE2ePFkPP/ywsrOzNXHiRNlsNv361782O57feOihh+RwOJSSkiKr1SqXy6VnnnlGY8eONTuazwrYMyJPPPGELBZLo681a9bU+559+/Zp5MiRGj16tH73u9+ZlNx/WCyWel8bhtFgDE0zfvx4bdiwQYsXLzY7it8pLCzUpEmTtHDhQkVERJgdx2+53W5lZGTo2WefVXp6un7/+9/r7rvvrrf8itNbunSpFi5cqEWLFiknJ0cLFizQzJkztWDBArOj+ayAPSMyfvx4jRkzptE5Xbt2rfvnffv2afjw4RoyZIjmzZvn4XT+LTY2VlartcHZj5KSkgZnSXB6EyZM0LJly/Tll18qMTHR7Dh+Z+3atSopKdHAgQPrxlwul7788kvNmTNHTqdTVqvVxIT+ISEhQampqfXGevfurXfffdekRP7pwQcf1JQpU+o+f/r27avdu3crKytLv/nNb0xO55sCtojExsYqNja2SXP37t2r4cOHa+DAgZo/f75CQgL2RFGLCA8P18CBA7Vy5Updf/31deMrV67Utddea2Iy/2IYhiZMmKD3339fq1atUnJystmR/NIll1yijRs31hu74447lJKSooceeogS0kRDhw5tcPv41q1b1aVLF5MS+aejR482+AyxWq3cvtuIgC0iTbVv3z5dfPHF6ty5s2bOnKkDBw7U/Vp8fLyJyXzb5MmTdfvtt2vQoEF1Z5H27Nmje+65x+xofiMzM1OLFi3SBx98oOjo6LozTHa7XZGRkSan8x/R0dENrquJiopS+/btud6mGe6//36df/75evbZZ3XzzTcrOztb8+bN4wxxM40aNUrPPPOMOnfurD59+ig3N1ezZs3SnXfeaXY032UEufnz5xuSTvpC41555RWjS5cuRnh4uJGRkWF88cUXZkfyK6f6czd//nyzo/m9iy66yJg0aZLZMfzO8uXLjbS0NMNmsxkpKSnGvHnzzI7kd8rKyoxJkyYZnTt3NiIiIoxu3boZjzzyiOF0Os2O5rPYRwQAAJiGiyEAAIBpKCIAAMA0FBEAAGAaiggAADANRQQAAJiGIgIAAExDEQEAAKahiAAAANNQRAAAgGkoIgAAwDQUEQAAYBqKCAAAMM3/D77xtr8ZF4JqAAAAAElFTkSuQmCC", 136 | "text/plain": [ 137 | "
" 138 | ] 139 | }, 140 | "metadata": {}, 141 | "output_type": "display_data" 142 | } 143 | ], 144 | "source": [ 145 | "import matplotlib.pyplot as plt\n", 146 | "from scipy import stats\n", 147 | "\n", 148 | "x = [-1,-2,1,2,3,4,5,6,7,8,9]\n", 149 | "y = [-1,-2,1,2,3,4,5,6,7,8,9]\n", 150 | "\n", 151 | "\n", 152 | "slope,intercept,r,p,std_err = stats.linregress(x,y)\n", 153 | "\n", 154 | "def myfunc(x):\n", 155 | " return slope * x + intercept\n", 156 | "\n", 157 | "mymodel = list(map(myfunc,x))\n", 158 | "\n", 159 | "plt.scatter(x,y)\n", 160 | "plt.plot(x, mymodel)\n", 161 | "plt.show()" 162 | ] 163 | }, 164 | { 165 | "cell_type": "code", 166 | "execution_count": 30, 167 | "id": "6d355a78", 168 | "metadata": {}, 169 | "outputs": [ 170 | { 171 | "name": "stdout", 172 | "output_type": "stream", 173 | "text": [ 174 | " x y\n", 175 | "0 -1 -1\n", 176 | "1 -2 -2\n", 177 | "2 1 1\n", 178 | "3 2 2\n", 179 | "4 3 3\n", 180 | "5 4 4\n", 181 | "6 5 5\n", 182 | "7 6 6\n", 183 | "8 7 7\n", 184 | "9 8 8\n", 185 | "10 9 9\n" 186 | ] 187 | }, 188 | { 189 | "data": { 190 | "image/png": "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srIyk5MAAICm+ulzuymbt/t0ESkvL5ckJSUlmZwEAAA0V3l5uex2e6NzfPpZM263W/v27VN0dLQslpZ9KF1ZWZmSkpJUWFjIc2zOAO9jy+B9bBm8jy2D97FlBPP7aBiGysvL1alTJ4WENH4ViE+fEQkJCWnw5N6WFhMTE3R/QDyB97Fl8D62DN7HlsH72DKC9X083ZmQn3CxKgAAMA1FBAAAmCZoi4jNZtO0adNks9nMjuLXeB9bBu9jy+B9bBm8jy2D97FpfPpiVQAAENiC9owIAAAwH0UEAACYhiICAABMQxEBAACmCfoismvXLt11111KTk5WZGSkunfvrmnTpqm6utrsaD7v1VdfVXJysiIiIjRw4EB99dVXZkfyK1lZWTrnnHMUHR2tuLg4XXfdddqyZYvZsfxeVlaWLBaL7rvvPrOj+J29e/fqtttuU/v27dWqVSsNGDBAa9euNTuWX6mtrdWjjz5a95nSrVs3Pfnkk3K73WZH81k+vbOqN2zevFlut1uvvfaaevTooby8PN19992qrKzUzJkzzY7ns5YuXar77rtPr776qoYOHarXXntNV1xxhfLz89W5c2ez4/mFL774QpmZmTrnnHNUW1urRx55RCNGjFB+fr6ioqLMjueXVq9erXnz5qlfv35mR/E7hw8f1tChQzV8+HB99NFHiouL044dO9SmTRuzo/mVGTNm6C9/+YsWLFigPn36aM2aNbrjjjtkt9s1adIks+P5JG7fPYnnnntOc+fO1c6dO82O4rPOPfdcZWRkaO7cuXVjvXv31nXXXaesrCwTk/mvAwcOKC4uTl988YUuvPBCs+P4nYqKCmVkZOjVV1/V008/rQEDBujFF180O5bfmDJlir755hvObJ6hq6++Wh07dtQbb7xRN3bjjTeqVatW+vvf/25iMt8V9EszJ+NwONSuXTuzY/is6upqrV27ViNGjKg3PmLECH377bcmpfJ/DodDkviz9wtlZmbqqquu0qWXXmp2FL+0bNkyDRo0SKNHj1ZcXJzS09P1+uuvmx3L7wwbNkyfffaZtm7dKklav369vv76a1155ZUmJ/NdQb80c6IdO3Zo9uzZev75582O4rMOHjwol8uljh071hvv2LGjiouLTUrl3wzD0OTJkzVs2DClpaWZHcfvLFmyRDk5OVq9erXZUfzWzp07NXfuXE2ePFkPP/ywsrOzNXHiRNlsNv361782O57feOihh+RwOJSSkiKr1SqXy6VnnnlGY8eONTuazwrYMyJPPPGELBZLo681a9bU+559+/Zp5MiRGj16tH73u9+ZlNx/WCyWel8bhtFgDE0zfvx4bdiwQYsXLzY7it8pLCzUpEmTtHDhQkVERJgdx2+53W5lZGTo2WefVXp6un7/+9/r7rvvrrf8itNbunSpFi5cqEWLFiknJ0cLFizQzJkztWDBArOj+ayAPSMyfvx4jRkzptE5Xbt2rfvnffv2afjw4RoyZIjmzZvn4XT+LTY2VlartcHZj5KSkgZnSXB6EyZM0LJly/Tll18qMTHR7Dh+Z+3atSopKdHAgQPrxlwul7788kvNmTNHTqdTVqvVxIT+ISEhQampqfXGevfurXfffdekRP7pwQcf1JQpU+o+f/r27avdu3crKytLv/nNb0xO55sCtojExsYqNja2SXP37t2r4cOHa+DAgZo/f75CQgL2RFGLCA8P18CBA7Vy5Updf/31deMrV67Utddea2Iy/2IYhiZMmKD3339fq1atUnJystmR/NIll1yijRs31hu74447lJKSooceeogS0kRDhw5tcPv41q1b1aVLF5MS+aejR482+AyxWq3cvtuIgC0iTbVv3z5dfPHF6ty5s2bOnKkDBw7U/Vp8fLyJyXzb5MmTdfvtt2vQoEF1Z5H27Nmje+65x+xofiMzM1OLFi3SBx98oOjo6LozTHa7XZGRkSan8x/R0dENrquJiopS+/btud6mGe6//36df/75evbZZ3XzzTcrOztb8+bN4wxxM40aNUrPPPOMOnfurD59+ig3N1ezZs3SnXfeaXY032UEufnz5xuSTvpC41555RWjS5cuRnh4uJGRkWF88cUXZkfyK6f6czd//nyzo/m9iy66yJg0aZLZMfzO8uXLjbS0NMNmsxkpKSnGvHnzzI7kd8rKyoxJkyYZnTt3NiIiIoxu3boZjzzyiOF0Os2O5rPYRwQAAJiGiyEAAIBpKCIAAMA0FBEAAGAaiggAADANRQQAAJiGIgIAAExDEQEAAKahiAAAANNQRAAAgGkoIgAAwDQUEQAAYBqKCAAAMM3/D77xtr8ZF4JqAAAAAElFTkSuQmCC", 191 | "text/plain": [ 192 | "
" 193 | ] 194 | }, 195 | "metadata": {}, 196 | "output_type": "display_data" 197 | } 198 | ], 199 | "source": [ 200 | "import pandas as pd\n", 201 | "import matplotlib.pyplot as plt\n", 202 | "from scipy import stats\n", 203 | "\n", 204 | "x = [-1,-2,1,2,3,4,5,6,7,8,9]\n", 205 | "y = [-1,-2,1,2,3,4,5,6,7,8,9]\n", 206 | "\n", 207 | "data = {'x':x, 'y':y}\n", 208 | "df = pd.DataFrame(data)\n", 209 | "print(df)\n", 210 | "\n", 211 | "slope,intercept,r,p,std_err = stats.linregress(x,y)\n", 212 | "\n", 213 | "def myfunc(x):\n", 214 | " return slope * x + intercept\n", 215 | "\n", 216 | "mymodel = list(map(myfunc,x))\n", 217 | "\n", 218 | "plt.scatter(x,y)\n", 219 | "plt.plot(x, mymodel)\n", 220 | "plt.show()" 221 | ] 222 | }, 223 | { 224 | "cell_type": "code", 225 | "execution_count": null, 226 | "id": "b53b0b87", 227 | "metadata": {}, 228 | "outputs": [], 229 | "source": [] 230 | } 231 | ], 232 | "metadata": { 233 | "kernelspec": { 234 | "display_name": "Python 3 (ipykernel)", 235 | "language": "python", 236 | "name": "python3" 237 | }, 238 | "language_info": { 239 | "codemirror_mode": { 240 | "name": "ipython", 241 | "version": 3 242 | }, 243 | "file_extension": ".py", 244 | "mimetype": "text/x-python", 245 | "name": "python", 246 | "nbconvert_exporter": "python", 247 | "pygments_lexer": "ipython3", 248 | "version": "3.11.5" 249 | } 250 | }, 251 | "nbformat": 4, 252 | "nbformat_minor": 5 253 | } 254 | --------------------------------------------------------------------------------