diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..f0bfee4 --- /dev/null +++ b/.gitignore @@ -0,0 +1,10 @@ +*.csv.gz +*.parquet +*.jl +*.f +*.pkl +*__pycache__/ +.DS_Store +.ipynb_checkpoints/ +Studies/ +/.idea/ diff --git a/README.md b/README.md index bfb36d9..617e01e 100644 --- a/README.md +++ b/README.md @@ -1,17 +1,92 @@ -# Welcome to DS-Cheat-Sheets! +# Cheat Sheets for Data Science Learning ![example workflow](https://github.com/fralfaro/DS-Cheat-Sheets/actions/workflows/documentation.yml/badge.svg) Link a la Documentación + -This book is a central repository of cheat sheets -that are your ticket to becoming a data science expert. +This repository serves as a hub for various Cheat Sheets related to +the field of Data Science (with Python). What sets these Cheat Sheets apart is their +multi-dimensional approach to enhancing the learning experience. +Each Cheat Sheet is made available in three distinct formats: **PDF**, **Streamlit**, and **Google Colab**. + +This triad of accessibility ensures that learners can engage with the content in +a way that suits their preferences and learning style. + + +**Content** + + +| Topic | PDF | Streamlit | Google Colab | +|---------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| python | | | Open In Colab | +| numpy | | | Open In Colab | +| pandas | | | Open In Colab | +| matplotlib | | | Open In Colab | +| scikit-learn | | | Open In Colab | + +> **Note**: The PDF format cheat sheets included here are authored by other contributors and have been used as sources of inspiration for the content presented. + +## More Information + +### What is a Cheat Sheet ? + +A cheat sheet is a concise and informative reference guide that provides +quick and easy access to essential information or instructions about a specific topic. + +It's designed to help individuals quickly understand key concepts, commands, formulas, +or procedures without having to search through lengthy documentation or resources. +Cheat sheets are often used as handy reference tools for tasks that require familiarity +with specific details or steps, such as programming languages, software applications, +or academic subjects. They serve as a valuable aid for both beginners and experienced +practitioners by condensing important information into a single, easily digestible format. + +### What is Streamlit ? + + + + +[Streamlit](https://streamlit.io/) is an open-source Python library that simplifies and accelerates the +process of creating interactive web applications for data science and machine learning projects. +It allows developers, data scientists, and researchers to transform data scripts into shareable +web applications quickly and with minimal effort. + + + + +### What is Jupyter Notebook ? + + + + +[Jupyter Notebook](https://jupyter.org/) is an open-source web application that provides +an interactive and flexible environment for creating, sharing, and executing documents that contain live code, equations, visualizations, and explanatory text. It's widely used by researchers, data scientists, educators, and professionals +to develop and present code-based projects, analyses, and reports. + + + + +### What is Google Colab ? + + + + +[Google Colab](https://colab.research.google.com/), short for Google Colaboratory, is a cloud-based, +interactive development environment provided by Google +that enables users to write, execute, and share Python code in a +collaborative and convenient manner. It's particularly popular among researchers, +data scientists, and educators for its ease of use and the fact that it doesn't +require any setup or installation. + + + +## References + +* [Data Science Cheat Sheets - DataCamp](https://www.datacamp.com/cheat-sheet) +* [Cheatsheets and Handouts - Matplotlib](https://matplotlib.org/cheatsheets/) +* [Streamlit Cheat Sheet - Daniel Lewis](https://github.com/daniellewisDL/streamlit-cheat-sheet) -These cheat sheets are a path that quickly guides you through -essential data science topics, including statistics, machine learning, -and visualization. -In addition, the examples are made with **Streamlit** and **Jupyter Notebook** (Google Colab) . diff --git a/docs/examples/matplotlib/app.py b/docs/examples/matplotlib/app.py new file mode 100644 index 0000000..119c35b --- /dev/null +++ b/docs/examples/matplotlib/app.py @@ -0,0 +1,397 @@ +import streamlit as st +from pathlib import Path +import base64 +import requests + + +# Initial page config +st.set_page_config( + page_title='Matplotlib Cheat Sheet', + layout="wide", + initial_sidebar_state="expanded", +) + +def main(): + """ + Main function to set up the Streamlit app layout. + """ + cs_sidebar() + cs_body() + return None + +# Define img_to_bytes() function +def img_to_bytes(img_url): + response = requests.get(img_url) + img_bytes = response.content + encoded = base64.b64encode(img_bytes).decode() + return encoded + +# Define the cs_sidebar() function +def cs_sidebar(): + """ + Populate the sidebar with various content sections related to Matplotlib. + """ + st.sidebar.markdown( + '''[](https://streamlit.io/)'''.format( + img_to_bytes("https://raw.githubusercontent.com/fralfaro/DS-Cheat-Sheets/main/docs/examples/matplotlib/matplotlib.png")), unsafe_allow_html=True) + + st.sidebar.header('Matplotlib Cheat Sheet') + st.sidebar.markdown(''' +[Matplotlib](https://matplotlib.org/) is a Python 2D plotting library which produces publication-quality +figures in a variety of hardcopy formats and interactive environments across platforms. + ''', unsafe_allow_html=True) + + # Matplotlib installation and import + st.sidebar.markdown('__Install and import Matplotlib__') + st.sidebar.code('$ pip install matplotlib') + st.sidebar.code(''' +# Import Matplotlib convention +>>> import matplotlib.pyplot as plt +''') + + # Anatomy of a figure + st.sidebar.markdown('__Anatomy of a figure__') + st.sidebar.markdown( + '''[](https://streamlit.io/)'''.format( + img_to_bytes("https://raw.githubusercontent.com/fralfaro/DS-Cheat-Sheets/main/docs/examples/matplotlib/mlp_01.png")), unsafe_allow_html=True) + + st.sidebar.markdown(''' + In Matplotlib, a figure refers to the overall canvas or window that contains one or more individual plots or subplots. + Understanding the anatomy of a Matplotlib figure is crucial for creating and customizing your visualizations effectively. + ''', unsafe_allow_html=True) + + + # Example code for the workflow + st.sidebar.code(''' + # Workflow + import matplotlib.pyplot as plt + + # Step 1: Prepare Data + x = [1, 2, 3, 4] + y = [10, 20, 25, 30] + + # Step 2: Create Plot + fig = plt.figure() + ax = fig.add_subplot(111) + + # Step 3: Plot + ax.plot(x, y, color='lightblue', linewidth=3) + + # Step 4: Customized Plot + ax.scatter([2, 4, 6], [5, 15, 25], color='darkgreen', marker='^') + ax.set_xlim(1, 6.5) + + # Step 5: Save Plot + plt.savefig('foo.png') + + # Step 6: Show Plot + plt.show() + ''') + return None + + +# Define the cs_body() function +def cs_body(): + """ + Create content sections for the main body of the Streamlit cheat sheet with NumPy examples. + """ + col1, col2, col3 = st.columns(3) # Create columns for layout + + ####################################### + # COLUMN 1 + ####################################### + + # Prepare the Data + col1.subheader('Basic Plots ') + + ## Create a scatter plot + col1.code(''' + # Create a scatter plot + X = np.random.uniform(0, 1, 100) + Y = np.random.uniform(0, 1, 100) + plt.scatter(X, Y) + ''') + + ## Create a bar plot + col1.code(''' + # Create a bar plot + X = np.arange(10) + Y = np.random.uniform(1, 10, 10) + plt.bar(X, Y) + ''') + + ## Create an image plot using imshow + col1.code(''' + # Create an image plot using imshow + Z = np.random.uniform(0, 1, (8, 8)) + plt.imshow(Z) + ''') + + ## Create a contour plot + col1.code(''' + # Create a contour plot + Z = np.random.uniform(0, 1, (8, 8)) + plt.contourf(Z) + plt.show() + ''') + + ## Create a pie chart + col1.code(''' + # Create a pie chart + Z = np.random.uniform(0, 1, 4) + plt.pie(Z) + ''') + + ## Create a histogram + col1.code(''' + # Create a histogram + Z = np.random.normal(0, 1, 100) + plt.hist(Z) + ''') + + ## Create an error bar plot + col1.code(''' + # Create an error bar plot + X = np.arange(5) + Y = np.random.uniform(0, 1, 5) + plt.errorbar(X, Y, Y / 4) + ''') + + ## Create a box plot + col1.code(''' + # Create a box plot + Z = np.random.normal(0, 1, (100, 3)) + plt.boxplot(Z) + ''') + + # Tweak + col1.subheader('Tweak') + + ## Create a plot with a black solid line + col1.code(''' + # Create a plot with a black solid line + X = np.linspace(0, 10, 100) + Y = np.sin(X) + plt.plot(X, Y, color="black") + ''') + + ## Create a plot with a dashed line + col1.code(''' + # Create a plot with a dashed line + X = np.linspace(0, 10, 100) + Y = np.sin(X) + plt.plot(X, Y, linestyle="--") + ''') + + ## Create a plot with a thicker line + col1.code(''' + # Create a plot with a thicker line + X = np.linspace(0, 10, 100) + Y = np.sin(X) + plt.plot(X, Y, linewidth=5) + ''') + + ## Create a plot with markers + col1.code(''' + # Create a plot with markers + X = np.linspace(0, 10, 100) + Y = np.sin(X) + plt.plot(X, Y, marker="o") + ''') + + # Save + col1.subheader('Save') + col1.code(''' + # Save the figure as a PNG file with higher resolution (300 dpi) + fig.savefig("my-first-figure.png", dpi=300) + + # Save the figure as a PDF file + fig.savefig("my-first-figure.pdf") + ''') + + ####################################### + # COLUMN 2 + ####################################### + + # Markers + col2.subheader('Organize') + + ## Create a plot with two lines on the same axes + col2.code(''' + # Create a plot with two lines on the same axes + X = np.linspace(0, 10, 100) + Y1, Y2 = np.sin(X), np.cos(X) + plt.plot(X, Y1, X, Y2) + ''') + + ## Create a figure with two subplots (vertically stacked) + col2.code(''' + # Create a figure with two subplots (vertically stacked) + X = np.linspace(0, 10, 100) + Y1, Y2 = np.sin(X), np.cos(X) + fig, (ax1, ax2) = plt.subplots(2, 1) + ax1.plot(X, Y1, color="C1") + ax2.plot(X, Y2, color="C0") + ''') + + ## Create a figure with two subplots (horizontally aligned) + col2.code(''' + # Create a figure with two subplots (horizontally aligned) + X = np.linspace(0, 10, 100) + Y1, Y2 = np.sin(X), np.cos(X) + fig, (ax1, ax2) = plt.subplots(1, 2) + ax1.plot(Y1, X, color="C1") + ax2.plot(Y2, X, color="C0") + ''') + + # Label + col2.subheader('Label') + + ## Create data and plot a sine wave + col2.code(''' + # Create data and plot a sine wave + X = np.linspace(0, 10, 100) + Y = np.sin(X) + plt.plot(X, Y) + ''') + + ## Modify plot properties + col2.code(''' + # Modify plot properties + X = np.linspace(0, 10, 100) + Y = np.sin(X) + plt.plot(X, Y) + plt.title("A Sine wave") + plt.xlabel("Time") + plt.ylabel(None) + ''') + + # Figure, axes & spines + col2.subheader('Figure, axes & spines') + col2.code(''' + # Create a 3x3 grid of subplots + fig, axs = plt.subplots(3, 3) + + # Set face colors for specific subplots + axs[0, 0].set_facecolor("#ddddff") + axs[2, 2].set_facecolor("#ffffdd") + ''') + + col2.code(''' + # Create a 3x3 grid of subplots + fig, axs = plt.subplots(3, 3) + + # Add a grid specification and set face color for a specific subplot + gs = fig.add_gridspec(3, 3) + ax = fig.add_subplot(gs[0, :]) + ax.set_facecolor("#ddddff") + ''') + + col2.code(''' + # Create a figure with a single subplot + fig, ax = plt.subplots() + + # Remove top and right spines from the subplot + ax.spines["top"].set_color("None") + ax.spines["right"].set_color("None") + ''') + + # Colors + col2.subheader('Colors') + col2.code(''' + # Get a list of named colors + named_colors = plt.colormaps() + print("Colors:",named_colors) + ''') + + ####################################### + # COLUMN 3 + ####################################### + + # Ticks & labels + col3.subheader('Ticks & labels') + col3.code(''' + from matplotlib.ticker import MultipleLocator as ML + from matplotlib.ticker import ScalarFormatter as SF + + # Create a figure with a single subplot + fig, ax = plt.subplots() + + # Set minor tick locations and formatter for the x-axis + ax.xaxis.set_minor_locator(ML(0.2)) + ax.xaxis.set_minor_formatter(SF()) + + # Rotate minor tick labels on the x-axis + ax.tick_params(axis='x', which='minor', rotation=90) + ''') + + # Lines & markers + col3.subheader('Lines & markers') + col3.code(''' + # Generate data and create a plot + X = np.linspace(0.1, 10 * np.pi, 1000) + Y = np.sin(X) + plt.plot(X, Y, "C1o:", markevery=25, mec="1.0") + ''') + + # Scales & projections + col3.subheader('Scales & projections') + col3.code(''' + # Create a figure with a single subplot + fig, ax = plt.subplots() + + # Set x-axis scale to logarithmic + ax.set_xscale("log") + + # Plot data with specified formatting + ax.plot(X, Y, "C1o-", markevery=25, mec="1.0") + ''') + + # Text & ornaments + col3.subheader('Scales & projections') + col3.code(''' + # Create a figure with a single subplot + fig, ax = plt.subplots() + + # Fill the area between horizontal lines with a curve + ax.fill_betweenx([-1, 1], [0], [2*np.pi]) + + # Add a text annotation to the plot + ax.text(0, -1, r" Period $\Phi$") + ''') + + # Legend + col3.subheader('Legend') + col3.code(''' + # Create a figure with a single subplot + fig, ax = plt.subplots() + + # Plot sine and cosine curves with specified colors and labels + ax.plot(X, np.sin(X), "C0", label="Sine") + ax.plot(X, np.cos(X), "C1", label="Cosine") + + # Add a legend with customized positioning and formatting + ax.legend(bbox_to_anchor=(0, 1, 1, 0.1), ncol=2, mode="expand", loc="lower left") + ''') + + # Annotation + col3.subheader('Annotation') + col3.code(''' + # Create a figure with a single subplot + fig, ax = plt.subplots() + + ax.plot(X, Y, "C1o:", markevery=25, mec="1.0") + + # Add an annotation "A" with an arrow + ax.annotate("A", (X[250], Y[250]), (X[250], -1), + ha="center", va="center", + arrowprops={"arrowstyle": "->", "color": "C1"}) + ''') + + + + + +# Run the main function if the script is executed directly +if __name__ == '__main__': + main() diff --git a/docs/examples/matplotlib/foo.png b/docs/examples/matplotlib/foo.png new file mode 100644 index 0000000..2430cc7 Binary files /dev/null and b/docs/examples/matplotlib/foo.png differ diff --git a/docs/examples/matplotlib/matplotlib.ipynb b/docs/examples/matplotlib/matplotlib.ipynb new file mode 100644 index 0000000..576c94e --- /dev/null +++ b/docs/examples/matplotlib/matplotlib.ipynb @@ -0,0 +1,1033 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "76c6497b", + "metadata": {}, + "source": [ + "\"Open\n", + "\n", + "\n", + "# Matplotlib Cheat Sheet\n", + "\n", + "\"numpy\n", + "\n", + "[Matplotlib](https://matplotlib.org/) is a Python 2D plotting library which produces publication-quality \n", + "figures in a variety of hardcopy formats and interactive environments across platforms." + ] + }, + { + "cell_type": "markdown", + "id": "5d810b35", + "metadata": {}, + "source": [ + "## Install and import Matplotlib\n", + "\n", + "`\n", + "$ pip install matplotlib\n", + "`" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "ac095e9f", + "metadata": {}, + "outputs": [], + "source": [ + "# Import matplotlib convention\n", + "import matplotlib.pyplot as plt" + ] + }, + { + "cell_type": "markdown", + "id": "9643ef07", + "metadata": {}, + "source": [ + "## Anatomy of a figure\n", + "\n", + "\"numpy\n", + "\n", + "In Matplotlib, a figure refers to the overall canvas or window that contains one or more individual plots or subplots. \n", + " Understanding the anatomy of a Matplotlib figure is crucial for creating and customizing your visualizations effectively." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "23d419fc", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "\n", + "# Prepare Data\n", + "x = np.linspace(0, 2*np.pi, 100)\n", + "y = np.sin(x)\n", + "\n", + "# Create Plot\n", + "fig, ax = plt.subplots()\n", + "\n", + "# Plot Data\n", + "ax.plot(x, y)\n", + "\n", + "# Customize Plot\n", + "ax.set_xlabel('X-axis')\n", + "ax.set_ylabel('Y-axis')\n", + "ax.set_title('Sine Function')\n", + "ax.grid(True)\n", + "\n", + "# Save Plot\n", + "plt.savefig('sine_plot.png')\n", + "\n", + "# Show Plot\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "id": "a5979b88", + "metadata": {}, + "source": [ + "## Basic Plots" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "2bf09cd5", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Create a scatter plot\n", + "X = np.random.uniform(0, 1, 100)\n", + "Y = np.random.uniform(0, 1, 100)\n", + "plt.scatter(X, Y)\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "28e92294", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAhYAAAGdCAYAAABO2DpVAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAAATp0lEQVR4nO3df6jVhf3H8ff1Oo93cXXmdp3iNd0YmD9auqsxL7SNpBEaC0ZbYOAMxtiuqQmye7eVk6ZXxyaCbpqyNSHtBwypFTXEkc418VdGsk03onYxzMbinjK4i3vP94/te+lmVuf6vvd4j48HfP64n87xvjoIPfucc++nplQqlQIAIMGwSg8AAKqHsAAA0ggLACCNsAAA0ggLACCNsAAA0ggLACCNsAAA0gwf7G/Y09MTr776atTX10dNTc1gf3sAoB9KpVK8+eabMWHChBg27OLXJQY9LF599dVobGwc7G8LACTo6OiIiRMnXvSfD3pY1NfXR8R/h40aNWqwvz0A0A/FYjEaGxt7/zt+MYMeFv//9seoUaOEBQAMMR/2MQYf3gQA0ggLACCNsAAA0ggLACCNsAAA0ggLACCNsAAA0ggLACCNsAAA0ggLACCNsAAA0ggLACCNsAAA0ggLACDNoN82Heifya1PVXrCBV5ev6DSE4DLjCsWAEAaYQEApBEWAEAaYQEApBEWAEAaYQEApBEWAEAaYQEApBEWAEAaYQEApBEWAEAaYQEApBEWAEAaYQEApBEWAEAaYQEApBEWAEAaYQEApBEWAEAaYQEApBEWAEAaYQEApBEWAEAaYQEApBEWAEAaYQEApBEWAEAaYQEApBEWAEAaYQEApBEWAEAaYQEApBEWAEAaYQEApBEWAEAaYQEApBEWAEAaYQEApBEWAEAaYQEApBEWAEAaYQEApBEWAEAaYQEApBEWAEAaYQEApBEWAEAaYQEApBEWAEAaYQEApBlezoO7u7vjxz/+cTz00ENx9uzZmDBhQnzrW9+KH/3oR1FTUzNQGyHV5NanKj3hAi+vX1DpCQApygqLDRs2xNatW2Pnzp0xffr0OHr0aCxZsiRGjx4dy5YtG6iNAMAQUVZYPPfcc/G1r30tFiz47/9dTZ48OR5++OE4fPjwgIwDAIaWsj5jMW/evNi3b1+cPn06IiJeeOGFOHjwYNxyyy0XfU5XV1cUi8U+BwBQncq6YtHa2hrFYjGmTp0atbW10d3dHWvXro1FixZd9Dnt7e2xZs2aSx4KAFz+yrpi8dhjj8WuXbti9+7dcfz48di5c2f87Gc/i507d170OW1tbdHZ2dl7dHR0XPJoAODyVNYVi1WrVkVra2vccccdERExc+bMeOWVV6K9vT0WL178vs8pFApRKBQufSkAcNkr64rF22+/HcOG9X1KbW1t9PT0pI4CAIamsq5Y3HrrrbF27dqYNGlSTJ8+PZ5//vnYuHFj3HXXXQO1DwAYQsoKi82bN8e9994b3/ve9+LcuXMxYcKE+M53vhP33XffQO0DAIaQssKivr4+Nm3aFJs2bRqgOQDAUOZeIQBAGmEBAKQp660QeDc38wLgvVyxAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAII2wAADSCAsAIE3ZYXHmzJm48847Y+zYsVFXVxczZ86Mo0ePDsQ2AGCIGV7Og994441obm6Or3zlK/H000/Hpz71qfj73/8eY8aMGah9AMAQUlZYbNiwIRobG+PBBx/sPTdlypT0UQDA0FTWWyFPPPFENDU1xe233x4NDQ0xa9as2LFjx0BtAwCGmLLC4qWXXoqtW7fG5z73ufj9738f3/3ud2PZsmWxc+fOiz6nq6srisVinwMAqE5lvRXS09MTTU1NsW7duoiImDVrVpw8eTK2bdsWixcvft/ntLe3x5o1ay59KQBw2SvrisX48eNj2rRpfc5de+218c9//vOiz2lra4vOzs7eo6Ojo39LAYDLXllXLJqbm+PUqVN9zp0+fTquueaaiz6nUChEoVDo3zoAYEgp64rFPffcE4cOHYp169bFP/7xj9i9e3ds3749WlpaBmofADCElBUWc+bMiT179sTD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a6xcuTJ+8IMfxJEjR2LZsmUxYsSIWLx4caXnVZ3W1tYoFosxderUqK2tje7u7li7dm0sWrSo0tOuSMKCimtpaYmTJ0/GwYMHKz2lanV0dMTy5ctj7969MXLkyErPqXo9PT3R1NQU69ati4iIWbNmxcmTJ2Pbtm3CYgA89thjsWvXrti9e3dMnz49Tpw4EStWrIgJEyZ4vStAWPxPf24Jz6VbunRpPPnkk3HgwIGYOHFipedUrWPHjsW5c+di9uzZvee6u7vjwIEDsWXLlujq6ora2toKLqwu48ePj2nTpvU5d+2118Zvf/vbCi2qbqtWrYrW1ta44447IiJi5syZ8corr0R7e7uwqACfsfgft4QfXKVSKZYuXRp79uyJP/zhDzFlypRKT6pqN910U7z44otx4sSJ3qOpqSkWLVoUJ06cEBXJmpubL/jx6dOnT8c111xToUXV7e23345hw/r+56y2tjZ6enoqtOjK5orFu7gl/OBpaWmJ3bt3x+OPPx719fVx9uzZiIgYPXp01NXVVXhd9amvr7/g8ytXXXVVjB071udaBsA999wT8+bNi3Xr1sU3vvGNOHz4cGzfvj22b99e6WlV6dZbb421a9fGpEmTYvr06fH888/Hxo0b46677qr0tCtTiT42b95cmjRpUmnEiBGluXPnlg4dOlTpSVUpIt73ePDBBys97YrxpS99qbR8+fJKz6hav/vd70ozZswoFQqF0tSpU0vbt2+v9KSqVSwWS8uXLy9NmjSpNHLkyNJnPvOZ0g9/+MNSV1dXpaddkfweCwAgjc9YAABphAUAkEZYAABphAUAkEZYAABphAUAkEZYAABphAUAkEZYAABphAUAkEZYAABphAUAkOb/APcHp89OrYzJAAAAAElFTkSuQmCC", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Create a bar plot\n", + "X = np.arange(10)\n", + "Y = np.random.uniform(1, 10, 10)\n", + "plt.bar(X, Y)\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "6d117f2e", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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YAAAJggMAMAEgQEAmCAwAAATBAYAYILAAABMEBgAgAkCAwAwQWAAACYIDADABIEBAJhw9XkwvWnwubTC4ZBfl/fk1u+d8XuCJxeXTfV7gmc//3Ce3xM8md90yu8Jnmz/ld8LvGkvDNbfJf/s0t+G+j3Blcw/Puv2uTyDAQCYIDAAABMEBgBggsAAAEwQGACACQIDADBBYAAAJggMAMAEgQEAmCAwAAATBAYAYILAAABMEBgAgAkCAwAwQWAAACYIDADABIEBAJggMAAAEwQGAGDCdWDOnTunxx9/XMOHD9egQYN0zz336OjRoxbbAAABFnZz8ieffKLS0lI9+OCD2rt3r0aMGKFTp05p6NChVvsAAAHlKjA/+clPFIvFVF1dnb1v/PjxvT4KABB8rl4ie+2111RSUqLFixcrPz9f06ZN07Zt27p8TDqdVktLS6cDAND/uQrMe++9p6qqKk2cOFG1tbVauXKlnn76ab300kvXfEwikVA0Gs0esVisx6MBADc+V4HJZDKaPn261q1bp2nTpun73/++nnzySW3evPmaj6msrFQqlcoeyWSyx6MBADc+V4EpKCjQ5MmTO91399136+zZs9d8TCQS0ZAhQzodAID+z1VgSktLdfLkyU73vfPOOxo7dmyvjgIABJ+rwDzzzDOqr6/XunXrdPr0ae3cuVNbt25VPB632gcACChXgZk5c6Zqamr061//WlOnTtWPfvQjbdiwQcuWLbPaBwAIKFffByNJjzzyiB555BGLLQCAfoSfRQYAMEFgAAAmCAwAwASBAQCYIDAAABMEBgBggsAAAEwQGACACQIDADBBYAAAJggMAMAEgQEAmCAwAAATBAYAYILAAABMEBgAgAnXHzjWW86vvKKcm3P8urwnY/9HzO8JnrRMdPye4NmKwn/3e4Inazc+4fcET+Y+0eD3BE9+/3+/7vcEz+4qf9vvCa587lzRB908l2cwAAATBAYAYILAAABMEBgAgAkCAwAwQWAAACYIDADABIEBAJggMAAAEwQGAGCCwAAATBAYAIAJAgMAMEFgAAAmCAwAwASBAQCYIDAAABMEBgBgwlVgxo0bp1AodNURj8et9gEAAirs5uSGhgZ1dHRkb584cUIPP/ywFi9e3OvDAADB5iowI0aM6HR7/fr1uv3223X//ff36igAQPC5Csw/u3z5sl5++WVVVFQoFApd87x0Oq10Op293dLS4vWSAIAA8fwm/549e3Tp0iU98cQTXZ6XSCQUjUazRywW83pJAECAeA7M9u3bVVZWpsLCwi7Pq6ysVCqVyh7JZNLrJQEAAeLpJbIPPvhABw4c0O9+97vrnhuJRBSJRLxcBgAQYJ6ewVRXVys/P18LFy7s7T0AgH7CdWAymYyqq6tVXl6ucNjz1wgAAPo514E5cOCAzp49qxUrVljsAQD0E66fgsyfP1+O41hsAQD0I/wsMgCACQIDADBBYAAAJggMAMAEgQEAmCAwAAATBAYAYILAAABMEBgAgAkCAwAwQWAAACYIDADABIEBAJggMAAAEwQGAGCizz+S8ovPksl8mu7rS/fY5x3B/ByczGef+T3Bs3+0dvg9wZOOy8H8Pb/cdsXvCZ5kPg3m77ckfe4E6/f8i73d+VywkNPHnx724YcfKhaL9eUlAQC9LJlMavTo0V2e0+eByWQyOn/+vPLy8hQKhXr1125paVEsFlMymdSQIUN69de2xO6+xe6+F9Tt7L6a4zhqbW1VYWGhBgzo+l2WPn+JbMCAAdetXk8NGTIkUH8YvsDuvsXuvhfU7ezuLBqNdus83uQHAJggMAAAE/0qMJFIRGvXrlUkEvF7iivs7lvs7ntB3c7ununzN/kBAF8N/eoZDADgxkFgAAAmCAwAwASBAQCY6DeB2bRpk8aNG6eBAwdq9uzZOnLkiN+Truvw4cNatGiRCgsLFQqFtGfPHr8ndUsikdDMmTOVl5en/Px8PfbYYzp58qTfs66rqqpKRUVF2W8+mzNnjvbu3ev3LNfWr1+vUCikNWvW+D2lSy+88IJCoVCnY9KkSX7P6pZz587p8ccf1/DhwzVo0CDdc889Onr0qN+zrmvcuHFX/Z6HQiHF43Ff9vSLwOzevVsVFRVau3atjh07puLiYi1YsEDNzc1+T+tSe3u7iouLtWnTJr+nuFJXV6d4PK76+nrt379fV65c0fz589Xe3u73tC6NHj1a69evV2Njo44ePaqHHnpIjz76qN566y2/p3VbQ0ODtmzZoqKiIr+ndMuUKVP00UcfZY8///nPfk+6rk8++USlpaW66aabtHfvXr399tv66U9/qqFDh/o97boaGho6/X7v379fkrR48WJ/Bjn9wKxZs5x4PJ693dHR4RQWFjqJRMLHVe5Icmpqavye4Ulzc7Mjyamrq/N7imtDhw51fvGLX/g9o1taW1udiRMnOvv373fuv/9+Z/Xq1X5P6tLatWud4uJiv2e49txzzzn33nuv3zN6xerVq53bb7/dyWQyvlw/8M9gLl++rMbGRs2bNy9734ABAzRv3jy9+eabPi776kilUpKkYcOG+byk+zo6OrRr1y61t7drzpw5fs/plng8roULF3b6s36jO3XqlAoLCzVhwgQtW7ZMZ8+e9XvSdb322msqKSnR4sWLlZ+fr2nTpmnbtm1+z3Lt8uXLevnll7VixYpe/8HC3RX4wHz88cfq6OjQyJEjO90/cuRIXbhwwadVXx2ZTEZr1qxRaWmppk6d6vec6zp+/LhuueUWRSIRPfXUU6qpqdHkyZP9nnVdu3bt0rFjx5RIJPye0m2zZ8/Wjh07tG/fPlVVVenMmTO677771Nra6ve0Lr333nuqqqrSxIkTVVtbq5UrV+rpp5/WSy+95Pc0V/bs2aNLly7piSee8G1Dn/80ZfQv8XhcJ06cCMRr65J01113qampSalUSr/97W9VXl6uurq6GzoyyWRSq1ev1v79+zVw4EC/53RbWVlZ9r+Lioo0e/ZsjR07Vq+88oq++93v+risa5lMRiUlJVq3bp0kadq0aTpx4oQ2b96s8vJyn9d13/bt21VWVqbCwkLfNgT+Gcxtt92mnJwcXbx4sdP9Fy9e1KhRo3xa9dWwatUqvf7663rjjTfMP4Kht+Tm5uqOO+7QjBkzlEgkVFxcrI0bN/o9q0uNjY1qbm7W9OnTFQ6HFQ6HVVdXpxdffFHhcFgdHcH41M9bb71Vd955p06fPu33lC4VFBRc9Q+Ou+++OxAv733hgw8+0IEDB/S9733P1x2BD0xubq5mzJihgwcPZu/LZDI6ePBgYF5bDxrHcbRq1SrV1NToT3/6k8aPH+/3JM8ymYzS6Rv747vnzp2r48ePq6mpKXuUlJRo2bJlampqUk5Ojt8Tu6WtrU3vvvuuCgoK/J7SpdLS0qu+7P6dd97R2LFjfVrkXnV1tfLz87Vw4UJfd/SLl8gqKipUXl6ukpISzZo1Sxs2bFB7e7uWL1/u97QutbW1dfrX3JkzZ9TU1KRhw4ZpzJgxPi7rWjwe186dO/Xqq68qLy8v+15XNBrVoEGDfF53bZWVlSorK9OYMWPU2tqqnTt36tChQ6qtrfV7Wpfy8vKuen9r8ODBGj58+A39vtezzz6rRYsWaezYsTp//rzWrl2rnJwcLV261O9pXXrmmWf0jW98Q+vWrdO3v/1tHTlyRFu3btXWrVv9ntYtmUxG1dXVKi8vVzjs81/xvnztmoGf//znzpgxY5zc3Fxn1qxZTn19vd+TruuNN95wJF11lJeX+z2tS1+2WZJTXV3t97QurVixwhk7dqyTm5vrjBgxwpk7d67zxz/+0e9ZngThy5SXLFniFBQUOLm5uc7XvvY1Z8mSJc7p06f9ntUtv//9752pU6c6kUjEmTRpkrN161a/J3VbbW2tI8k5efKk31Mcflw/AMBE4N+DAQDcmAgMAMAEgQEAmCAwAAATBAYAYILAAABMEBgAgAkCAwAwQWAAACYIDADABIEBAJggMAAAE/8fXNjdAncEWVIAAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Create an image plot using imshow\n", + "Z = np.random.uniform(0, 1, (8, 8))\n", + "plt.imshow(Z)\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "9de76fb3", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Create a contour plot\n", + "Z = np.random.uniform(0, 1, (8, 8))\n", + "plt.contourf(Z)\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "f22028ed", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYUAAAGFCAYAAAASI+9IAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAAAp9klEQVR4nO3dd5hV5bk28HvtOntv9vTOVBjaSBtUmmIEpQgnUaNoEluMJnZJ1CTHnCTfsaGx5WjE2FDBKNiiYDQiSpEmRYogZWhTmAGmF6bv8v0xukQDOGXv/axy/67LCxJh5tbLmZtnvet9XyUYDAZBREQEwCIdgIiItIOlQEREKpYCERGpWApERKRiKRARkYqlQEREKpYCERGpWApERKRiKRARkYqlQEREKpYCERGpWApERKRiKRARkYqlQEREKpYCERGpWApERKRiKRARkYqlQEREKpYCERGpWApERKRiKRARkYqlQEREKpYCERGpWApERKRiKRARkYqlQEREKpYCERGpWApERKRiKRARkYqlQEREKpYCERGpWApERKRiKRARkYqlQEREKpYCERGpWApERKRiKRARkYqlQEREKpYCERGpWApERKRiKRARkYqlQEREKpYCERGpWApERKRiKRARkcomHYAo1AKBIOpaOlDT1IbqY+2oaWpHdVM76ls60OEPwOcPoiPQ+aPPH4AvEFT/P38gCJvFAqfdgiibFVF2C1x2KzxOG/pE2eB12uCNsiPOY0dqdBQS+jil/3GJQoqlQLpzrM2HoqomHKhqwsHKJhRVN+FwfUvnN/9j7ahr6YA/EIxIFofNgpRoJ9KiXUiNiUJaTJT6Y99YN/one+B28MuM9EMJBoOR+eoh6qaqY23YVlqHvRXHvimBqiZUNrZJR+syRQEy49wYlOrF4FQvBqZ0/pib6IHNyqe3pD0sBdKElnY/tpfVY2tpLbaV1mNraR3K6lqkY4WNw2pBvyQPhqRFoyArFmfmxGNwqheKokhHI5NjKZCI8roWrN5XhS0ltdhS0jkNROqRj1bFuOw4IzsOo3PjcWZuPIb1jYGd0wRFGEuBIqLN58f6AzVYWViJTwsrsbfimHQkzXPZrSjIisXo3Hj8YGASRmbGcpKgsGMpUNjsrzyGlXsq8eneSqw/UIOWDr90JF1L9jpx3pAUTMlPwfi8BDhtVulIZEAsBQqpXYcbsHhbOd7/4jBKapql4xiWx2HFOQOTMDk/BZMGJyPW7ZCORAbBUqBeK61pxqKtZVi8rRyFR/lYKNJsFgVn5MThopF98V8j0tHHyVdgqedYCtQjlY1t+NcX5Vi8rRxbSuqk49BXXHYrLhiaikvPyMC4fglcg6BuYylQlwUCQSzbXYFXPivG6n1Vpn9bSOsy4124ZFQGLj09Axlxbuk4pBMsBfpedc3teH1jKf6xvhilNcbdO2BUigKM65eAy8/MxPRhaXzNlU6JpUAn9WV5PeavLcaibWVo7QhIx6EQSI2Ows/PysHPxmQhOsouHYc0iKVA3+LzB/DBjiOYv7YIm4prpeNQmHidNlx+ZiZ+cXYu0mNd0nFIQ1gKBABo9wXwxqZS/H3FfkMfL0HfZrMomDE8Db86px9OS4+RjkMawFIwudYOPxZsKMGzKw/gSEOrdBwSNL5/Am6bNADj+idIRyFBLAWz8rUDm+ehffNrKCi9A01+Lj5SpwkDEvH7aYMxtC8nBzNiKZhNwA9sWwisfAioKwEALOp7J2btP104GGmJogAzhqXhrimDkJPokY5DEcRSMItgEPjyHWDFg0BV4bf+ls/bFyNq/sJpgf6D3argsjMyMev8AUj2RknHoQhgKZjBoU3A+3cAh7ed9JdwWqBTcdmtuPasHNx4bn++ympwLAUja20APrkX2DQXCJ56nwGnBeqKeI8Dv582CJedkckjNAyKpWBUOxcB//490Hi4y7+F0wJ11aisWNx74VAuRhsQS8Fo6g8B798FFP6727+V0wJ1h9Wi4Kqx2bhr6iCezGogLAWjCPiB9c8Ay2cD7T0/vprTAnVXWkwU7vnRaZhyWqp0FAoBloIRlG8F3rv9lAvJXcVpgXpq6mkpuPfCoUiJ5ltKesZS0LO2Y8DyB4D1zwLB0F11yWmBeirGZcfsi4dhxvA06SjUQywFvdrzIfDBXUB9acg/NKcF6q1LRmXgngtP41qDDvGrXm/8HZ1vFS24PCyFAAC2xjLMztkSlo9N5vD25kOY8eQqbC7hSbt6w0lBT+rLgDd/DhzaEPZPxWmBQsFmUXDbpAG4dVIerBbua9ADfsXrxf7lwLPnRKQQgM5p4cHczRH5XGRcvkAQf/24EJc9uw6lNc3ScagLOCloXTAIfPoosGL29+5KDjV/n3QMr32Y0wKFhNdpw0OXDOcitMbxq13LmmuA1y4Dlt8f8UIAAOuxck4LFDKNbT7c8tpmPPzhbgQC/LOoVnFS0KqyzcAb1wD1JaIxOC1QOEwanIwnfjISXh6upzn8SteijXOBF6eJFwLAaYHCY9nuClw4Zw32V/Z89z2FBycFLWlvBv71G+CLhdJJvoXTAoWLN8qGJ39SgImDk6Wj0Ff4Va4VdaXAC+drrhAATgsUPo2tPlw3byPmLN8nHYW+wklBC6r2AvMvAhoOSSc5KU4LFG4XjkzHozNHwG7lf2OS+G9f2uFtnesHGi4EgNMChd+ireW4ft4mtLSH7hwv6j6WgqTidcDLPwSaq6STdMmMuoXwWCP/aiyZx8rCSlzxwmeob+6QjmJaLAUpe5cCr1wMtNVLJ+kyTgsUCZtL6nDZs+twtKFVOoopsRQk7PgnsOCngK9FOkm3cVqgSNhztBGX/H0tiqqapKOYDksh0j6fB7x9HRDQ53hsPVaOh3J5giqF36HaFlz6zFp8Wa6fadoIWAqRtOaJzhvSBI6sCKXpdQvgsXExkMKv6lg7fvLsZ9hwsEY6immwFCLl43uApX+WThES1mPleCib0wJFRmObD9e+tAFbeDdDRLAUwi0YBP51B7D6cekkITW9fiGnBYqYpnY/fv7SRuwsb5COYngshXB7/05g01zpFCHHaYEirb6lA1fNXY99FY3SUQyNpRBOqx4zZCF8jdMCRVp1UzuueGE9Sqp5YU+4sBTCZdvrwCf3SacIK04LJOFoQxt+9sJnKK/T3yvdesBSCIcDK4BFtwAw/rFSnBZIwqHaFlz5wnpUNrZJRzEclkKoHdkBvH6VbvchdBenBZJyoKoJV81dj4ZWc3ytRQpLIZTqy4BXZwJt5npDgtMCSdl9pBG3vrYFfl7vGTIshVBprQdevRRoLJdOEnGcFkjSp4WVuOe9L6VjGAZLIRR87cDCK4CKndJJxHBaIEnz1xVj/roi6RiGwFLorWAQePcmoGiVdBJR1mPl+EsOpwWSc897O7GysFI6hu6xFHpr6Z+BHW9Jp9CEC3gmEgnyB4K49bXN3NzWSyyF3tj4ArD2SekUmmE9dhh/yeF9CySnsdWHX7y8CTVN7dJRdIul0FPlW4AP75ZOoTkX1HFtgWSV1DTjhlc2ocOv79OIpbAUeqLtGPDWdYCffxr5Lk4LpAUbi2rx6JI90jF0iaXQEx/cBdTsl06hWZwWSAueW3UAK/ZUSMfQHZZCd33xBrBtgXQKTeO0QFoQDAJ3vrGNdz13E0uhO2oOdt6NQN+L0wJpQXVTO369cCsC3PHcZSyFrvJ3dN6t3M7X3bqC0wJpxboD1fjbsn3SMXSDpdBVy+4Dyj6XTqErnBZIK55cthfrD1RLx9AFlkJX7F8GrOF+hO7itEBa4Q8EMWvhVu5f6AKWwvdpqgLeuRFmuBshHDgtkFYcaWjFH/65XTqG5rEUTiUY7CyEY0elk+gWpwXSkg+/PIIPdxyWjqFpLIVT+expYN9S6RS6x2mBtOTPi75EfQsv5jkZlsLJ1BwAPr5HOoUhWI8dxiM5XKQnbahobMPs93dJx9AslsLJfHg34Of9r6EytZbTAmnH65tKsXZflXQMTWIpnEjhR0Dhh9IpDMXadITTAmnK3e9sR2sH/6DyXSyF7/K1Ax/+t3QKQ+K0QFpSXN2Mx5cWSsfQHJbCd617iofdhQmnBdKauasP4otDddIxNIWlcLyGcuDTR6VTGBqnBdISfyCI/3lnB4JB7kP6GkvheB/9Cehokk5haJwWSGu2l9Xjrc8PScfQDJbC14rW8K7lCOG0QFrzyJI9aGrzScfQBJYCAAT8wL9/J53CNDgtkNZUNLbh6RU8SRVgKXTa9CJwdId0ClPhtEBa88Kqgyira5GOIY6l0FQNLLtfOoXpcFogrWnzBfD4R3xFlaWw7F6gtU46hSlNrV0Ir43PcUk73tlyCLsON0jHEGXuUqjYDWyeL53CtKxNR/AwT1AlDQkEgYf+vVs6hihzl8KaJ4BgQDqFqU3htEAas7KwEp+Z+JY285ZC/SFg+5vSKUyP0wJp0Zzl5n0TybylsG4OEOCZ6lrAaYG0ZtXeKtMef2HOUmiuAT6fJ52CvsJpgbTIrNOCOUthw/M8zkJjOC2Q1ny08yj2VTRKx4g485VCezOw4VnpFPQdnBZIa4JB4Onl5jsx2XylsOUVoNm8bxZoGacF0prF28pRWtMsHSOizFUKfh+w9inpFHQSnBZIa3yBIJ791FzTgrlKYcfbQH2JdAo6BU4LpDVvbjqEisZW6RgRY55SCAaBNf8nnYK+B6cF0po2XwALN5RKx4gY85TC3o+Aip3SKagLOC2Q1ry+sRSBgDluZzNPKaz+q3QC6iJOC6Q1ZXUtWFlYKR0jIsxRCoe3ASXrpFNQN0ypXcBpgTTl1fXmWI80RylsfU06AXWTtekoHuZ9C6Qhy/dU4Ei98RecjV8K/g4efKdTXFsgLfEHgnh9o/EXnI1fCoVLuFlNpzgtkNa8vrHE8AvOxi+FbQukE1AvcFogLSmvb8WKwgrpGGFl7FJoqu6cFEi3OC2Q1iww+J4FY5fC9jd5Z4IBcFogLVm5pxKNrcb9vmL8UiDd47RAWtLuD+DjXUelY4SNcUuhrgQo2ySdgkKE0wJpyQfbj0hHCBvjlsKX70onoBDitEBa8mlhJZrajPmHFAOXwjvSCSjEOC2QVrT5AvhktzHfQjJmKdQWA+U8O8doOC2QlnzwxWHpCGFhzFLY+a50AgqTKbULEc1pgTRgRWEFmtuN99+iQUthkXQCChNOC6QVrR0BLN9tvJNTjVcKLXVA+RbpFBRGk2sXcFogTVjypfHeQjJeKRSvBYIB6RQURtamCk4LpAlr9lUhGDTWWUjGK4Wi1dIJKAI4LZAWVDe1Y/eRRukYIWW8UihmKZgBpwXSirX7jXUKs7FKobUeOLJdOgVFCKcF0oK1+6qkI4SUsUqB6wmmwmmBtGDDwRr4DXTHgrFKgesJpsNpgaQ1tvmw7VCddIyQYSmQrnFaIC1YZ6B1BeOUAtcTTIvTAklbY6B1BeOUQslnQNAvnYIEcFogaZ8X16LdZ4z1TOOUQtEq6QQkaHLtAsTYOS2QjDZfAIVHjbFfwUClwPUEM7M2VeDhbF6qRHJ2lNVLRwgJY5RCawNw+AvpFCTs/NqFnBZIzJflDdIRQsIYpXBoI9cTiNMCidpRzklBO6oKpROQRnBaICm7DzciYIBNbMYohep90glIIzgtkJSWDj/2Vx6TjtFrLAUyHE4LJMUI6woGKYX90glIQzgtkBQjvIGk/1LoaAXqD0mnII3htEASOCloQc1+APpf3KHQ4rRAEoqqm6Qj9Jr+S4HrCXQSnBYo0o42tOr+uAuWAhkWpwWKtEAQKKtrkY7RKwYoBS4y08lxWqBIK61plo7QKwYoBU4KdHLWpgo8wmmBIuhQLScFWSwF+h7n1/AEVYqc0lpOCnJaaoFm49x4ROFhaa7ktEARw8dHkrieQF3EaYEihY+PJNUWSScgneC0QJFyiI+PBLXWSScgHeG0QJFQdawdPr9+9yrouxTajHH9HUUGpwWKlIZW/f7hQ+eloP9jaimyOC1QJDS0dEhH6DF9l0I7S4G6h9MCRUJDK0tBBh8fUQ9wWqBwq+ekIISlQD3AaYHCraFFv3/o0Hcp8PER9RCnBQonTgpSOClQD1maK/EopwUKE64pSOHbR9QL59UsQBynBQoDvn0khY+PqBcszZV4OHujdAwyoEbuUxDSpv/7UEnWeTULOS1QyPkC+r0iWOelwEmBeofTAoVDgKUgoKMFCPqlU5ABcFqgUAsEWQqR16Hv42lJOzgtUKj5dVwKNukAPWZ1SCcgg9ieMRybY8rxwZfPS0chg3DETQAwUjpGj+i3FOxu6QSkY0EoWJE3Hi/3cWJz/T6geSMubIxH8EiFdDQyAPfQfOkIPabfUrBYAJsL8PExEnVdu9WJxYMnYL7ShINNpUD9N3+vfkgGolkKFAKKzSodocf0WwoA4HCzFKhL6t1xWDhgHBa0laG6ufCEv2ZPtgVnRjgXGZSFpSDD7gFQLZ2CNKw0IRvzs4ZiUeNetDTsOOWvXRZ/lKVAIaFYWQoyHFxXoBPbnjEcLyX3xbK63fDXbe/S7/nceRiWxHgEqmrCnI4Mj4+PhHCxmY7zH4vHtXXd/hiN+VnwfMpSoN5R7HbpCD2m71JweKQTkAa02aKweNAEzFeOoeg7i8fdVZhtR0HoopFJ2eLipCP0mL5LgZOCqdW547FwwFgsaCtDTfOekHzMlYlVLAXqNWt8gnSEHtN3KXBNwZRKE7IxP3sYFjUUfu/icXetc5biN3GxCPbg0RPR16zxnBRk2Pn4yEy+yBiBl5PT8EndbgRqvwjL5wgqQHN+Nlxr6sLy8ckcbAmcFGRwUjC8IBQsH3AW5nkcXy0e14b9c+7LcWLYmrB/GjIwa1y8dIQe03cpcE3BsL69eFzSq8Xj7lqVVI1hkft0ZEC2BJaCDGcf6QQUYuFYPO6uVa4S3OL1ItjIO8Cp+xSXCxaXSzpGj+m7FGKypBNQiJQm5GBe9mlY3PD9O4/DzY8gWk/LgfOzrm16IzqeLV6/UwKg91KIz5VOQL3UuXicjk/qdiFQq51vwgdyXBjymXQK0iMrS0FQfD/pBNQDEovH3bU2pQ5DpEOQLnFSkORJBJzRQFuDdBLqgjZbFBYNmoBXBBaPu2u5qxjXu90INjdLRyGd4aQgLS4HOBKed9YpNOrc8VgwYCwWCi4ed1e74kd7fh7sm76UjkI6Y0vU7x4FwAilEN+PpaBRWlo87omifh4M2CSdgvTGkZMjHaFXjFEKpCnbMkfg5aQ0LKvbranF4+76LKUBA6RDkO448/KkI/SKAUqBbyBpQUCxYHneeMxz27GlYb8mF4+7a6mnCFdHRSHY2iodhfRCUeDoz1KQxUlB1DeLx42di8cGWvNvVXzoGDIAti27pKOQTtjT0mDto+8z2VgK1CN17ngsGDgOC1tLdbN43BOl/bzI3SKdgvTCMUDfUwJghFLwpgE2F+BrkU5iCiWJuZifmY/FjXvRUq/f9YKu2pDWBD6gpK7S+3oCYIRSUJTO11IrOeKH07cWj7t457ERfOQpwuV2O9DRIR2FdMCZp/9XE/RfCkDnIySWQsipi8ceB7ZodOdxuDVa2uAf3A/W7YXSUUgHOCloRUJ/6QSG8h+LxxreeRwJ5XmxyDTPcEQ9pShw5un/e5ExSiFztHQCQ6j1JGDhgDFY2HrI0IvH3bUprRmZ0iFI8+wZGbo+MvtrxiiFrHHSCXStJDEX87PysaihEK31+tt5HG4feotxsc0G+HzSUUjDjPDoCDBKKXgSgcSBQBWf+3bH1syReDkxFcvr9b3zONxqLS0IDsiBsmufdBTSMJaC1mSNYyl0Qefi8Vl42W3D1ob9QF2NdCRdODwgDul8l4FOwTWqQDpCSBinFLLHA5vnSafQrG8vHhcbaudxJGxOb0e6dAjSLqsV7jPPlE4REsYphayx0gk0qXPxeKzhdx6H24fRxfgviwUIBKSjkAZF5efD2scYd8YbpxTicgBvOtBYLp1EE0oSczEvKx+LGwrRaoKdx+FWYT0G9M8G9h6UjkIa5Bk7RjpCyFikA4RUNt9C2po5Er8umIYfRgfxRu12tPrbpCMZxtGBidIRSKPco41TCsaZFIDOxeYdb0uniLivF49fctuwjYvHYbM1owNTpUOQ9tjtcJ8+SjpFyBirFLLHSyeIqFa7C4sHTcB8NKCYi8dhtyS6FFMVBQgGpaOQhriGDYPF7ZaOETLGKoXkfCAqFmitk04SVrWeBCzIG4PX2w6hpmm3dBzTOGSrB3IzgQMl0lFIQ9xjjHWigrFKQVE630Iq/FA6SVgUJ/bD/KwhnYvHOrzz2AiqBiYjkaVAx/GMMc56AmC0hWbAkEdebM0swKxR0/Cj6AAXj4Vtz+ArqfQNxeGAq8AYm9a+ZqxJAQD6/UA6QUgEFAuWfbXzeFvDfqC2WjoSAVgSV4qJ0iFIM1wjR8LidErHCCnjlUJ6ARCXC9Tq833yVrurc+cxF4816YCtFkpmXwRLy6SjkAZ4xhlv06zxHh8BwNAfSyfothpPIuaMnIEp/fJwf9NuFDdxE55W1QxJlY5AGuGdMkU6QsgZsxRO008pFCf2w72jZmBqWhyeqd+O2naT32ijAzt4uQIBcA4aBGd//V+q813Ge3wEAKlDgaTBQKV2X9fcklmAl5NSsKKOx1brzdK4MkyQDkHiomfMkI4QFsacFABNTgsBxYKPB07AlSMm4mpbNZbV7kQgyLdZ9Ga3vQpKOh8hmV309OnSEcLCmJMCAAy9BFgxWzoFgM7F43cHTcArwXqUNBcDHdKJqLfqhqQjpvyIdAwS4hoxAo6MvtIxwsK4pZCYB6QOA47IPZqp8SRiwYAxeL2lBLXceWwouzIVGO+9E+qq6BnGnBIAI5cC0DktCJRCUVJ/zM8cjMUNhWjjsdWGtCzhKEvBrCwWeKdNk04RNsZdUwAivq6wJbMAtxdMw4VeP96s3Y427jw2rK2OI1CSeZS2GbnPPBP25GTpGGFj7EkhLhvoewZQtilsnyKgWPDJgLMwz/X1sdXceWwWjUMy0aeiSjoGRZhRF5i/ZuxSADofIYWhFLh4THuybThdOgRFlt2O6KnG27B2PGM/PgKA0y4GlND9Yx6/8/iBpt0oaT4cso9N+rIisUI6AkWYZ/w4WGNjpWOElfEnheg0IGs8ULy6Vx+mKKk/5mUOxntcPKavrHeWQYmPQ7CmVjoKRUjsxRdLRwg7408KAHDGtT3+rZszC3D7qGn4UR8f3uLiMX1HU362dASKEFt6GryTJ0vHCDtzlEL+RYA3vcu/PKBYsHTgObhixERcY6vG8tqdCIJXMNJ/2ptjl45AERJ/xZVQrFbpGGFn/MdHAGC1AaOvBz6595S/rMXhxrsDz8YrwTqUNhdx8Zi+16dJ1RghHYLCzuJ2I/aymdIxIsIckwIAnH4tYHOd8G9V90nCUyNnYEpuf8xu2o3SZh5fQF2z2lkCJSZaOgaFWcyPfwyr1ysdIyLMUwrueGD4t5u+KKk/7hk1A1NTY/Fs/XbU8dhq6qagArRwXcHYLBbEX32VdIqIMU8pAMCYmwAAm7NG4baCqVw8ppDYn3viCZSMoc/EiXBkZUnHiBhzlUJKPv4y8SZcY63CirpdXDymkFidXCMdgcIo/pqrpSNElLlKAcC5A43/njFF1sqoEih9PNIxKAyc+UPgGT1aOkZEma4UxqSNwbDEYdIxyEB8SgBt+bnSMSgM4q8215QAmLAUAOC6YddJRyCDOZjrlo5AIWZNSkSMwQ+/OxFTlsKkzEnoH2O8C7dJzroUvrlmNPFXXQ3F4ZCOEXGmLAVFUfCLYb+QjkEG8om7CIorSjoGhYgtORnxV10pHUOEKUsBAKbnTkdOdI50DDKINsWP9iFcVzCKxNtuhcVlzleNTVsKNosNd5x+h3QMMpCS/ubY8Wp0jrz+iP1xZG9t1BLTlgIATMyaiDGpY6RjkEF8ltooHYFCIPmOO01x8N3JmLoUAOC3Z/4WlhBewkPmtdRdZMqFSSNxn3EGvJMmSscQZfrvhoPiB+HC/hdKxyADaLZ0wMd1BV1L/u1d0hHEmb4UAOD2UbfDbeN75tR7h/JipCNQD3mnToVrBA9CZykASHQl4hdD+Yoq9d6G1CbpCNQTdjuS7/iNdApNYCl85ZrTrkGqJ1U6BuncR95iwGaOu6uMJG7mTDiyeQQ6wFJQRdmiMGvULOkYpHP1SisCg7iuoCcWjweJt9wsHUMzWArHmZE7g4flUa+V58VJR6BuSLz5JtgSEqRjaAZL4TiKouC3Z/5WOgbp3OfpLdIRqIuihg1D/M9/Lh1DU1gK31GQXIAZ/WZIxyAdWxJdAph485NeKHY70mc/YOqNaifCUjiBu0ffjWRXsnQM0qkqSxOCeVy01LqEm26Ec8AA6Riaw1I4gRhnDO456x7pGKRjRwbyGbWWOYcMQeKvfiUdQ5NYCidxdt+zMXPgTOkYpFNb0tukI9DJ2GxIf+B+KHx1+IRYCqdw1xl3IaNPhnQM0qElMaWAokjHoBNIuP46ROXnS8fQLJbCKbjtbjxw9gM8MI+67bC1EejPdQWtceT1R9LN3JNwKvxu9z1GpYzCNfnXSMcgHaoYmCgdgY5ntSJ99myeZPs9WApdcGvBrciLzZOOQTrzRV+fdAQ6TvzVV8M1fLh0DM1jKXSBw+rA7LNnw2bhwhR13ZLYQ9IR6CuOfv2QNOt26Ri6wFLooiEJQ3DD8BukY5COFNvqoOTwRQVpisuFjCf+D5aoKOkousBS6IZfDvslz0aibqkaxJN3paX+vz9zk1o3sBS6wWqx4tEfPIr4qHjpKKQTOzL80hFMLXbmpYi96CLpGLrCUuim9D7pePzcx7m+QF3yUXy5dATTcg4ZgpQ//lE6hu6wFHrg9JTT8Ycxf5COQTqw11YNJSNdOobpWKKjO9cRnE7pKLrDUuihmQNn4vJBl0vHIB2oHZwmHcFcLBb0fewxOLKypJPoEkuhF/579H9jdOpo6RikcTszpROYS9Jvfo0+E86WjqFbLIVesFlseOwHj/F8JDqljxOOSEcwjejp05H4y19Kx9A1lkIvxUbF4slJT8Jtc0tHIY3aYT8KJZX3c4Sbc8gQpD1wv3QM3WMphMCAuAF4cMKDUMBTMenE6odwmgwnW0oKMuc8BYvLJR1F91gKITIpaxJuGXmLdAzSqD1Z/FILF2tsLLJenAt7Ot/yCgX+lxpCN4y4AdNypknHIA1anlAhHcGQLB4PMp9/Ds7+/aWjGAZLIcRmnz0b52ScIx2DNGaTsxyWRO6EDyXF4UDGnDlwDePRM6HEUggxu9WOv577V4xPHy8dhTSmMZ/vzYeMzYa+f30cnrFjpJMYDkshDBxWB56Y+AT3MNC3FGbbpSMYg6Ig7f774D3vPOkkhsRSCJMoWxT+NulvGJU8SjoKacTKxCrpCIaQcvfdPOQujFgKYeS2u/H0+U9jeBJveyJgnbMUSlysdAxdS7z5ZsRffZV0DENjKYSZx+7BM+c/g/yEfOkoJCyoAM352dIxdCvuyiuRdPtt0jEMj6UQAV6HF89Nfg6D4gZJRyFh+3J4amdPxF52GVL+hycTRwJLIUJinDF4fsrzyIvNk45CglYlVUtH0J2Em25E2r33QFF4YkAksBQiKC4qDs9PeR65MbnSUUjIKlcJFK9XOoY+WCxI+eMfkTxrlnQSU2EpRFiiKxHzps1DQXKBdBQS4EcQrfk50jE0T7Hb0ffRRxB/5RXSUUyHpSAgLioOL0x5gUdimNTBXB7adioWtxuZzz6D6OnTpaOYEktBiMPqwMPnPIzrh10vHYUibE1KnXQEzbLGxyNr3jx4xvNEACksBUGKomDWqFn433H/C5tik45DEbLcVQzFzfs3vsvety+yX/0HXMOGSkcxNZaCBlwy8BLMOX8O+tj7SEehCGhX/GjP58sGx3MOHIjs116DM5f/XqSxFDRifPp4zL9gPtI8vOTdDIr6eaQjaIZ79Ghk/+MV2FN4O50WsBQ0ZEDcALw6/VXufjaBz1IapCPIUxQk/PJ6ZL30IqzR0dJp6CssBY1Jcifhpakv4dzMc6WjUBgt9RRBiYqSjiHGEh2NjDlPIfnOO6FYrdJx6DgsBQ1y2914YuITuHHEjbAq/IIxolbFh44h5nx+7swfgty334J30iTpKHQCLAWNsigW3DLyFsydOhepnlTpOBQGpf3Mt7M5dualyFmwAI7MTOkodBIsBY07PeV0vPXDtzA5e7J0FAqxDWlN0hEiRomKQtrs2Ui77z5YnDwUUMuUYDAYlA5BXfNm4Zt4ZOMjaPG1SEehEPAGnJj7eDvQ0SEdJawc2dno++QTiBrEU4L1gJOCjswcOBMLZyzkEdwG0WhpQ2CwsdcVvJMnI+ftt1gIOsJS0Jl+sf3w2ozXcOWQK6WjUAiU5cVKRwgLS3Q00u6/Dxl/exLWPtyUqScsBR1yWB34/ejfY855cxAfFS8dh3phU1qzdISQ806ejH7/eg+xl14qHYV6gGsKOlfVUoU/rfkTVpetlo5CPRAXcOHZx1oAn086Sq9ZkxKR+qc/IXrKFOko1AssBYNYWrwUD298GEeajkhHoW56/d0cKLv2ScfolZhLL0HK737HnckGwMdHBjE5ezIWX7QY1w+7HnaLXToOdcPhAXHSEXrMnpWFrJdfQvr997MQDIKlYCAumwuzRs3CP3/0T5yVfpZ0HOqizent0hG6z2pF/LXXot+id+EZO1Y6DYUQHx8Z2CfFn+DhjQ+jvKlcOgqdQrK/D556tAEIBKSjdElUfj5S77mH9x4YFEvB4Fp9rXjui+cw78t5aA/o8E+kJvHGW5nA3oPSMU7JnpWFpFm3I3r6dCiKIh2HwoSlYBIlDSV4cMODfEtJo/72RQFS3t8oHeOErEmJSLr5ZsReeikUO9erjI6lYDIrS1diztY52FWzSzoKHef66qGY8txW6RjfYvF6kXDddYi/5mpYXC7pOBQhLAUTCgaDWFa6DH/f+nfsqd0jHYcAZPhi8PijNYAGvhwVpxNxP/sZEm/4FayxsdJxKMJYCiYWDAbxSckneHrb09hbu1c6jum98Xo6cKBELoDVipiLLkTSrbfCnsZrYc2KpUCdk0PJMszdMRfbq7ZLxzGtp7eMROKHmyL+eRW7Hd4LpiHxhhvg7N8/4p+ftIWlQN+y4fAGzN0xF2vL10pHMZ2bKodj4gubI/b5rImJiLv8csT95HLYkpIi9nlJ21gKdEK7qnfhxR0vYmnxUviDfuk4ptDPF4eHHqkM++eJGjoU8Vdfhehp06A4HGH/fKQvLAU6pcrmSizavwiL9i1CUUORdBzDe/MfKQiWloX+A9tsiJ4yBXFXXQl3QUHoPz4ZBkuBumxLxRa8s/cdLClagmaf8Y581oJnPx+BuI8+D9nHs8bHI/aymYj76U9hT0kJ2ccl42IpULc1dzRjSdESvLvvXWyuiNwzcDO4rWIEJsztXSkodjs8Z52F6BnT4Z06FRY+IqJuYClQrxQ3FOOdve/gvf3voaKlQjqO7g3uSMS9j/bg+HO7HZ7x4xA97QJ4zz8PVq839OHIFFgKFBL+gB9rytdgSdESrClbg+rWaulIuvXmvEQEy7tQDHY7POPGflMEPLqaQoClQCEXDAaxs2YnVh9ajdVlq7G9ajvfYOqG59cPR8yykzyWs9ngGTsW0RdMg/f882GNiYlsODI8lgKFXX1bPdaVr8OqslVYXbYaNa010pE07c7DIzHm5W82sdnT0+EeOxaecWPRZ8IEHj1BYcVSoIjiFPH9zrEMxh+2ZHYWwdixcGRlSUciE2EpkKimjibsqdmDXTW7sLN6J3bV7MLBuoPwBfV/kX1XWBQL8mLzMDJpJEYmj0RBcgEyvBnSscjEWAqkOW3+Nuyt3auWxK7qXdhbu1fXlwQpUJDiSUFudC5yYnKQG5OL3JhcnJZwGrwOvilE2sFSIF3wBXzYX7cfu2p2obSxFBXNFepfR5uOorGjUToigM57snOic5AT3fmNPyem8+c5MTlw2XgnAWkfS4EMobmj+ZuSaD6Ko81H1f9d2VKJDn8HOgId8AV86o++gA++oA8d/g7154HgN/cku2wueB1eRDuiO/9yRp/w5zHOGEQ7opHqSUWKO4VXVZKusRSIjhMIBuAL+KBAgd3KqyfJfFgKRESkskgHICIi7WApEBGRiqVAREQqlgIREalYCkREpGIpEBGRiqVAREQqlgIREalYCkREpGIpEBGRiqVAREQqlgIREalYCkREpGIpEBGRiqVAREQqlgIREalYCkREpGIpEBGRiqVAREQqlgIREalYCkREpGIpEBGRiqVAREQqlgIREalYCkREpGIpEBGRiqVAREQqlgIREalYCkREpGIpEBGRiqVAREQqlgIREalYCkREpGIpEBGRiqVAREQqlgIREalYCkREpGIpEBGRiqVAREQqlgIREalYCkREpGIpEBGRiqVAREQqlgIREalYCkREpPr/5ZFxISwCrHAAAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Create a pie chart\n", + "Z = np.random.uniform(0, 1, 4)\n", + "plt.pie(Z)\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "2ad486ad", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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Tz0lu93u+ySRJE2bNk2zZ89Wfn6+JKmgoEC5ubm66aabNGnSJL3yyivq6OjQwoULf/wzBAAAES/gYNm7d6/S09N9jwsKCiRJubm5Kisr02OPPaaOjg498MADamtr05QpU1ReXq7o6GjfMfX19WptbfU9njt3rk6cOKFly5bJ6XRqwoQJKi8vP+NGXAAAcGH6Ud/DYgq+hwXhEomfTgD6EomfXonE/x1G4uscCmH7HhYAAIBQIFgAAIDxCBYAAGA8ggUAABiPYAEAAMYjWAAAgPEIFgAAYDyCBQAAGI9gAQAAxiNYAACA8QgWAABgPIIFAAAYj2ABAADGI1gAAIDxCBYAAGA8ggUAABiPYAEAAMYjWAAAgPEIFgAAYDyCBQAAGI9gAQAAxiNYAACA8QgWAABgPIIFAAAYj2ABAADGI1gAAIDxCBYAAGA8ggUAABiPYAEAAMYjWAAAgPEIFgAAYDyCBQAAGI9gAQAAxgt6sCQlJclisZyx5OXl9bh/WVnZGftGR0cHeywAABDBBgb7hJ988om6u7t9jw8cOKCf/exnmjNnTq/HxMbGqra21vfYYrEEeywAABDBgh4scXFxfo+ff/55XX755br99tt7PcZisSghISHYowAAgH4ipPewdHV1ae3atbrvvvv6vGrS3t6uyy67TA6HQ3feeae++OKLPs/b2dkpt9vttwAAgP4rpMGyZcsWtbW1acGCBb3uc9VVV2n16tXaunWr1q5dK4/Ho8mTJ+vIkSO9HlNcXCybzeZbHA5HCKYHAACmCGmwvPHGG8rKypLdbu91n7S0NM2fP18TJkzQ7bffrrfffltxcXF6/fXXez2mqKhILpfLtzQ3N4difAAAYIig38PyncOHD+v999/X22+/HdBxgwYN0o033qi6urpe97FarbJarT92RAAAECFCdoVlzZo1GjVqlGbOnBnQcd3d3fr888+VmJgYoskAAECkCUmweDwerVmzRrm5uRo40P8izvz581VUVOR7/Mwzz+i9997Tl19+qf379+sXv/iFDh8+rPvvvz8UowEAgAgUkreE3n//fTU1Nem+++47Y1tTU5Oior7vpG+++UaLFy+W0+nUxRdfrJSUFO3evVvXXHNNKEYDAAARKCTBMn36dHm93h63ffjhh36PX375Zb388suhGAMAAPQT/C0hAABgPIIFAAAYL2QfawYA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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Create a histogram\n", + "Z = np.random.normal(0, 1, 100)\n", + "plt.hist(Z)\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "8881f201", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Create an error bar plot\n", + "X = np.arange(5)\n", + "Y = np.random.uniform(0, 1, 5)\n", + "plt.errorbar(X, Y, Y / 4)\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "id": "56654901", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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/HiUSqUYGhqK+fPnx7RpJz8LZFIfEZk2bVosWLAg9Rg1Zfbs2f7lYlLxM8lk5Ofyo/tvR0I+4GRVACAZIQIAJCNEpohcLhebNm2KXC6XehSICD+TTE5+LitvUp+sCgDUNkdEAIBkhAgAkIwQAQCSESIAQDJCpMbt2bMnrr322pg/f37U1dXFY489lnokpriurq647LLLorGxMebNmxcrV66Mffv2pR6LKWzLli2xaNGisZuYdXR0xFNPPZV6rClDiNS44eHhuOSSS+Lee+9NPQpERMTu3btj3bp18cc//jGeffbZeO+99+Kaa66J4eHh1KMxRS1YsCB++MMfRnd3d7zwwgvxxS9+Mb761a/GX//619SjTQku351C6urqYufOnbFy5crUo8CYQ4cOxbx582L37t1x5ZVXph4HIiJizpw5sXnz5lizZk3qUWrepP6sGaD2FQqFiPi///BDaseOHYtHHnkkhoeHo6OjI/U4U4IQAZIZHR2NW265JZYsWRIXX3xx6nGYwv7yl79ER0dHvPvuuzFr1qzYuXNnXHTRRanHmhKECJDMunXr4uWXX47f/e53qUdhivv0pz8de/fujUKhEI8++misWrUqdu/eLUYqQIgASaxfvz6eeOKJ2LNnTyxYsCD1OExxM2fOjAsuuCAiItrb2+P555+PH//4x7F169bEk9U+IQJUVKlUiptvvjl27twZu3btivPOOy/1SDDO6OhoFIvF1GNMCUKkxh0+fDj2798/9vj111+PvXv3xpw5c6K5uTnhZExV69atix07dsTjjz8ejY2NMTAwEBER+Xw+6uvrE0/HVLRx48ZYsWJFNDc3x9DQUOzYsSN27doVzzzzTOrRpgSX79a4Xbt2xbJly8Z9fdWqVbFt27bKD8SUV1dX96Fff+CBB2L16tWVHQYiYs2aNfHcc8/Fm2++Gfl8PhYtWhS33357XH311alHmxKECACQjDurAgDJCBEAIBkhAgAkI0QAgGSECACQjBABAJIRIgBAMkIEAEhGiAAAyQgRACAZIQIAJCNEAIBk/hc7madqScYBrgAAAABJRU5ErkJggg==", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Create a box plot\n", + "Z = np.random.normal(0, 1, (100, 3))\n", + "plt.boxplot(Z)\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "id": "88f4eb6f", + "metadata": {}, + "source": [ + "## Tweak" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "783615d7", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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RUVJACQ7Oztpx44d1ZCWjK0q3981Ng+OKeE8OE/nypUrCAkJQUZGBjp27Ig//vgD9erVq7bjX79+HWFhYUhPT4e/vz8SEhJQp06dajs+EZmHoqIihIeHIyEhARqNBkuWLMFrr71WbccvLi7Gyy+/jI0bN8Le3h5btmxB9+7dq+34VP2q8v3NtaioSrKzs9GnTx9kZGSgRYsW2LZtW7UWNwDg7e0tH/fUqVOIiopCbm5utb4GEZk2SZLw1ltvISEhAS4uLti5c2e1FjcAYGtri9WrV6Nv374oKCjA888/j4SEhGp9DRKHBQ5VWlFREaKjo3HixAn4+Phg69atqF27tlFey9fXF9u3b4ebmxsSExPx8ssvo7i42CivRUSm59tvv8WyZcugVquxevVqhISEGOV1NBoN1qxZg969eyMvLw99+vTh+oYKwQKHKkWv1+P111/H7t274eTkhC1btsDPz8+or9m8eXNs3rwZDg4O2LZtG15//XXo9XqjviYRibdp0yZMmjQJAPDdd9+hV69eRn09Ozs7rFu3Dj179kRubi4GDhyIu3fvGvU1yfhY4FClTJkyBStXroS1tTX++OMPtG3btkZet1OnTlizZg2sra2xYsUKeQ0yIlKm48eP49VXX4UkSRgzZgzGjRtXI69rb2+PdevWoUmTJrh8+TJGjx4NC+yiqigscOix9u3bh6+//hoAsGTJkgfWCzO2yMhIfPfddwDKFmRNT0+v0dcnoppx+/Zt9OvXD7m5uejRowdmz55do2tIOTk5YcWKFbC2tsaaNWuwePHiGnttqn4scOiR8vPz8frrr0OSJIwYMQLDhg0TkuPtt99G7969UVhYiGHDhqGkpERIDiIynnfffRcXL15E48aNsXr1atjY2NR4hg4dOmDatGkAgPfee++Ra1yRaWOBQ480efJknD17Fs8884x8F0UElUqFJUuWoHbt2khJScGXX34pLAsRVb/Nmzfj119/hZWVFVasWCF0aoiJEyeid+/eKCgowODBg1FYWCgsCz05Fjj0ULt27cLs2bMBAIsXL4arq6vQPM888wy+//57AMBXX33FkQ5ECnHv3j2MHTsWADBhwgR07NhRaB4rKyssW7YMHh4eOHbsGD788EOheejJsMChCuXm5mLkyJEAgNGjRyMyMlJwojKDBw/G4MGDodPpMGzYMOTn54uORERP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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Create a plot with a black solid line\n", + "X = np.linspace(0, 10, 100)\n", + "Y = np.sin(X)\n", + "plt.plot(X, Y, color=\"black\")\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "id": "087e8bcf", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Create a plot with a dashed line\n", + "X = np.linspace(0, 10, 100)\n", + "Y = np.sin(X)\n", + "plt.plot(X, Y, linestyle=\"--\")\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "id": "d66cfb74", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Create a plot with a thicker line\n", + "X = np.linspace(0, 10, 100)\n", + "Y = np.sin(X)\n", + "plt.plot(X, Y, linewidth=5)\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "id": "a43b5605", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Create a plot with markers\n", + "X = np.linspace(0, 10, 100)\n", + "Y = np.sin(X)\n", + "plt.plot(X, Y, marker=\"o\")\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "id": "289125aa", + "metadata": {}, + "source": [ + "## Organize" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "id": "ec1c39b5", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Create a plot with two lines on the same axes\n", + "X = np.linspace(0, 10, 100)\n", + "Y1, Y2 = np.sin(X), np.cos(X)\n", + "plt.plot(X, Y1, X, Y2)\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "id": "e2be3378", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Create a figure with two subplots (vertically stacked)\n", + "X = np.linspace(0, 10, 100)\n", + "Y1, Y2 = np.sin(X), np.cos(X)\n", + "fig, (ax1, ax2) = plt.subplots(2, 1)\n", + "ax1.plot(X, Y1, color=\"C1\")\n", + "ax2.plot(X, Y2, color=\"C0\")\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "id": "63899c6e", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Create a figure with two subplots (horizontally aligned)\n", + "X = np.linspace(0, 10, 100)\n", + "Y1, Y2 = np.sin(X), np.cos(X)\n", + "fig, (ax1, ax2) = plt.subplots(1, 2)\n", + "ax1.plot(Y1, X, color=\"C1\")\n", + "ax2.plot(Y2, X, color=\"C0\")\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "id": "24a2ce88", + "metadata": {}, + "source": [ + "## Label" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "id": "a41d5d3a", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Create data and plot a sine wave\n", + "X = np.linspace(0, 10, 100)\n", + "Y = np.sin(X)\n", + "plt.plot(X, Y)\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "id": "64f8d7ae", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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/HN4enpiypQpza4hICCg1QHc/v7+bV4DEbWNCQ4RWWzYsAEBAQFYvXr1Ve99/fXX2Lx5M9asWdOsq6ajhg8fjl27dqGgoKDNBKcj+vTpgyNHjmDSpElXtfZ0xIgRI6BSqbBnzx7s2bMHTzzxBABg7NixWLt2raWl6soBxl999RU0Gg22bdsGtVpt2f7hhx9edf7w8HCMGDECmzZtwpIlS/D1119j1qxZzY7r06cPfvnlF4waNeqafp5E1DZ2URERAODSpUv4+uuvcfPNN+OOO+646rVkyRJUVVXhu+++a/UchYWFOHny5FXb6+vrkZycDLlc3uGCgW256667kJeXh7Vr17Z4HTU1NW0er9FocMMNN+Czzz5DTk5OsxacS5cu4c0330SfPn0QHBxsOUahUEAmkzUbh3T+/Hl88803LX7G7NmzsX//fqxbtw6lpaVXze666667YDAY8Pzzz191bGNjY7Np7ETUeUxwiAgA8N1336GqqgozZ85s8f0bb7wR/v7+bdbEuXjxIgYOHIjExESsWrUKH374IV566SWMGDEC6enpePTRR+Hn53fdsd57772YNm0a/vSnP+Huu+/G22+/jTfeeAOLFi1Cz549kZGR0e45xowZg9OnT8PT0xODBg0CAAQEBKBfv344c+bMVeNvpk+fjtraWkyZMgVr1qzBc889h/j4+FYTtrvuugsymQx/+ctf4OPjg8TExGbvjxs3Dg899BBWrVqFadOm4fXXX8fq1auxdOlS9O7dG7/88ss1/nSICACniRORyYwZMwSNRiPU1NS0us/8+fMFJycnobS0tMX3dTqd8MYbbwhJSUlCz549BScnJ8Hd3V1ISEgQ1q5dKxiNRsu+rU0THzBgwFXnve+++4TevXs321ZfXy+89NJLwoABAwS1Wi14e3sLcXFxwj/+8Q9Bq9W2e70//PCDAECYOnVqs+0PPPCAAED44IMPrjrmgw8+EKKiogS1Wi1ER0cLH374obBy5UqhtVvpqFGjBADCAw880Goc7733nhAXFyc4OzsL7u7uwqBBg4Qnn3xSyM/Pb/caiKh1XKqBiIiIJIddVERERCQ5THCIiIhIcpjgEBERkeQwwSEiIiLJYYJDREREksMEh4iIiCTHIZdqMBqNyM/Ph7u7+zWVeSciIqLuJwgCqqqqEBISArm87TYah0xw8vPz212Mj4iI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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Modify plot properties\n", + "X = np.linspace(0, 10, 100)\n", + "Y = np.sin(X)\n", + "plt.plot(X, Y)\n", + "plt.title(\"A Sine wave\")\n", + "plt.xlabel(\"Time\")\n", + "plt.ylabel(None)\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "id": "40d6b6e8", + "metadata": {}, + "source": [ + "## Figure, axes & spines" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "id": "3afa77c2", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Create a 3x3 grid of subplots\n", + "fig, axs = plt.subplots(3, 3)\n", + "\n", + "# Set face colors for specific subplots\n", + "axs[0, 0].set_facecolor(\"#ddddff\")\n", + "axs[2, 2].set_facecolor(\"#ffffdd\")" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "id": "98d8b61f", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Create a 3x3 grid of subplots\n", + "fig, axs = plt.subplots(3, 3)\n", + "\n", + "# Add a grid specification and set face color for a specific subplot\n", + "gs = fig.add_gridspec(3, 3)\n", + "ax = fig.add_subplot(gs[0, :])\n", + "ax.set_facecolor(\"#ddddff\")" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "id": "5651f2d3", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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x1VXXRXr16+PP/7xj3Hfffcd8zVzuVw0NDQM+vIRw8tZnDqcxanDWZxanMep40ScRcEfh46IWLNmTXz729+Otra2mDZtWnznO9+J6urqiIj44Ac/GFOmTIkHH3ywf/5DDz0UN998c7z44ovxzne+M+6888648sorj9uDAABGhyGFCwDAyeBnFQEAyRAuAEAyhAsAkAzhAgAk45QJl6amppgyZUqUlZVFdXV1bN269Q3nP/TQQ3H++edHWVlZXHjhhbFp06Zh2unIV8hZrFu3Li677LIYN25cjBs3Lmpra//n2XHsCv198Zr169dHUVFRzJkz58RucBQp9CwOHjwYixYtiokTJ0Yul4vzzjvPn1PHSaFnsXr16njXu94Vp59+euTz+ViyZEn8+9//Hqbdjly//vWvY/bs2TFp0qQoKip6w59B+JotW7bEe9/73sjlcnHuuecO+ATyMctOAevXr89KS0uz73//+9mf//zn7LOf/Ww2duzYrL29fdD5v/3tb7OSkpLszjvvzJ555pns5ptvzk477bTs6aefHuadjzyFnsU111yTNTU1ZTt27Mh27tyZffrTn84qKiqyv/71r8O885Gn0LN4zQsvvJBNnjw5u+yyy7KPfexjw7PZEa7Qs+ju7s5mzJiRXXnlldlTTz2VvfDCC9mWLVuy1tbWYd75yFPoWfzoRz/Kcrlc9qMf/Sh74YUXsieeeCKbOHFitmTJkmHe+cizadOmbPny5dkjjzySRUT26KOPvuH83bt3Z295y1uy+vr67Jlnnsm++93vZiUlJdnmzZsLuu4pES6zZs3KFi1a1P/r3t7ebNKkSVljY+Og8z/xiU9kV1111YCx6urq7HOf+9wJ3edoUOhZ/LfDhw9nZ5xxRvbDH/7wRG1x1BjKWRw+fDi75JJLsvvvvz9bsGCBcDlOCj2L733ve9nZZ5+d9fT0DNcWR41Cz2LRokXZhz70oQFj9fX12aWXXnpC9znaHEu4fO1rX8ve8573DBibO3duVldXV9C1TvpLRT09PbFt27aora3tHysuLo7a2tpoaWkZdE1LS8uA+RERdXV1R53PsRnKWfy3V155JV599dV429vedqK2OSoM9Sxuu+22mDBhQlx77bXDsc1RYShn8fjjj0dNTU0sWrQoKisr44ILLoiVK1dGb2/vcG17RBrKWVxyySWxbdu2/peTdu/eHZs2bfIlqCfB8fq7+6T/dOgDBw5Eb29vVFZWDhivrKyMXbt2Dbqmra1t0PltbW0nbJ+jwVDO4r/ddNNNMWnSpCP+46QwQzmLp556Kh544IFobW0dhh2OHkM5i927d8cvf/nL+NSnPhWbNm2K559/Pr7whS/Eq6++Gg0NDcOx7RFpKGdxzTXXxIEDB+L9739/ZFkWhw8fjhtuuCG+/vWvD8eW+X+O9nd3Z2dn/Otf/4rTTz/9mO7npD/jwsixatWqWL9+fTz66KNRVlZ2srczqhw6dCjmzZsX69ati/Hjx5/s7Yx6fX19MWHChLjvvvti+vTpMXfu3Fi+fHmsXbv2ZG9t1NmyZUusXLky7r333ti+fXs88sgjsXHjxrj99ttP9tYYopP+jMv48eOjpKQk2tvbB4y3t7dHVVXVoGuqqqoKms+xGcpZvOauu+6KVatWxS9+8Yu46KKLTuQ2R4VCz+Ivf/lLvPjiizF79uz+sb6+voiIGDNmTDz77LNxzjnnnNhNj1BD+X0xceLEOO2006KkpKR/7N3vfne0tbVFT09PlJaWntA9j1RDOYtbbrkl5s2bF9ddd11ERFx44YXR1dUV119/fSxfvjyKi/3/+3A52t/d5eXlx/xsS8Qp8IxLaWlpTJ8+PZqbm/vH+vr6orm5OWpqagZdU1NTM2B+RMSTTz551Pkcm6GcRUTEnXfeGbfffnts3rw5ZsyYMRxbHfEKPYvzzz8/nn766Whtbe2/ffSjH40rrrgiWltbI5/PD+f2R5Sh/L649NJL4/nnn++Px4iI5557LiZOnCha3oShnMUrr7xyRJy8FpSZH9U3rI7b392FvW/4xFi/fn2Wy+WyBx98MHvmmWey66+/Phs7dmzW1taWZVmWzZs3L1u6dGn//N/+9rfZmDFjsrvuuivbuXNn1tDQ4OPQx0mhZ7Fq1aqstLQ0e/jhh7O//e1v/bdDhw6drIcwYhR6Fv/Np4qOn0LPYs+ePdkZZ5yRffGLX8yeffbZ7Gc/+1k2YcKE7I477jhZD2HEKPQsGhoasjPOOCP7yU9+ku3evTv7+c9/np1zzjnZJz7xiZP1EEaMQ4cOZTt27Mh27NiRRUR2zz33ZDt27MheeumlLMuybOnSpdm8efP657/2ceivfvWr2c6dO7OmpqZ0Pw6dZVn23e9+NzvzzDOz0tLSbNasWdnvf//7/n92+eWXZwsWLBgw/6c//Wl23nnnZaWlpdl73vOebOPGjcO845GrkLM466yzsog44tbQ0DD8Gx+BCv198f8Jl+Or0LP43e9+l1VXV2e5XC47++yzs29+85vZ4cOHh3nXI1MhZ/Hqq69m3/jGN7JzzjknKysry/L5fPaFL3wh+8c//jH8Gx9hfvWrXw365/9r//4XLFiQXX755UesmTZtWlZaWpqdffbZ2Q9+8IOCr1uUZZ4rAwDScNLf4wIAcKyECwCQDOECACRDuAAAyRAuAEAyhAsAkAzhAgAkQ7gAAMkQLgBAMoQLAJAM4QIAJOP/AArkjUjmCMh9AAAAAElFTkSuQmCC", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Create a figure with a single subplot\n", + "fig, ax = plt.subplots()\n", + "\n", + "# Remove top and right spines from the subplot\n", + "ax.spines[\"top\"].set_color(\"None\")\n", + "ax.spines[\"right\"].set_color(\"None\")" + ] + }, + { + "cell_type": "markdown", + "id": "3f2e3f8b", + "metadata": {}, + "source": [ + "## Ticks & labels\n" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "id": "03c99e5e", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Import the necessary libraries\n", + "from matplotlib.ticker import MultipleLocator as ML\n", + "from matplotlib.ticker import ScalarFormatter as SF\n", + "\n", + "\n", + "# Create a figure with a single subplot\n", + "fig, ax = plt.subplots()\n", + "\n", + "# Set minor tick locations and formatter for the x-axis\n", + "ax.xaxis.set_minor_locator(ML(0.2))\n", + "ax.xaxis.set_minor_formatter(SF())\n", + "\n", + "# Rotate minor tick labels on the x-axis\n", + "ax.tick_params(axis='x', which='minor', rotation=90)" + ] + }, + { + "cell_type": "markdown", + "id": "f2bd913f", + "metadata": {}, + "source": [ + "## Lines & markers\n" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "id": "b5513a5e", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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TqeRkJBgTJ48WWNU9vDII48YXbp00R2GLQHGl19+Wfa5y+Uy4uPjjeeff77sa5mZmUZQUJDx0UcfaYhQrxOvj2EYxqhRo4xLLrlESzx2k56ebgDGggULDMNQj5WAgADj008/LbvP+vXrDcBYuHChrjC1OfH6GIZhnH322ca//vUvfUHZTFRUlPHOO+947WNHRnBqqaioiGXLlpGSklL2NT8/P1JSUli4cKHGyOxj8+bNJCQk0KJFC0aOHMmuXbt0h2RL27dvJzU1tdxjKSIigqSkJHksHWf+/PnExsbStm1bbrvtNg4dOqQ7JC2ysrIAqF+/PgDLli2juLi43OOnXbt2NGnSxCcfPyden1IzZswgOjqajh07MmnSJPLz83WEp5XT6WTWrFnk5eWRnJzstY8dn2y26U4HDx7E6XQSFxdX7utxcXFs2LBBU1T2kZSUxPTp02nbti379+/nscceo3///qxZs4Z69erpDs9WUlNTASp8LJV+z9cNGTKEyy67jObNm7N161YeeOABzj//fBYuXIi/v7/u8Czjcrm4++676du3Lx07dgTU4ycwMJDIyMhy9/XFx09F1wfgmmuuoWnTpiQkJLBq1Sruv/9+Nm7cyBdffKExWuusXr2a5ORkCgoKCAsL48svv6RDhw6sXLnSKx87kuAIU51//vll/+7cuTNJSUk0bdqUTz75hJtuukljZMITjRgxouzfnTp1onPnzrRs2ZL58+czcOBAjZFZ64477mDNmjU+vZ6tMqe6PmPGjCn7d6dOnWjYsCEDBw5k69attGzZ0uowLde2bVtWrlxJVlYWn332GaNGjWLBggW6wzKNTFHVUnR0NP7+/ietNk9LSyM+Pl5TVPYVGRlJmzZt2LJli+5QbKf08SKPpapr0aIF0dHRPvV4Gjt2LN999x2//vorjRs3Lvt6fHw8RUVFZGZmlru/rz1+TnV9KpKUlATgM4+fwMBAWrVqRY8ePZg8eTJdunThlVde8drHjiQ4tRQYGEiPHj2YN29e2ddcLhfz5s0jOTlZY2T2lJuby9atW2nYsKHuUGynefPmxMfHl3ssZWdns2jRInksncKePXs4dOiQTzyeDMNg7NixfPnll/zyyy80b9683Pd79OhBQEBAucfPxo0b2bVrl088fk53fSqycuVKAJ94/FTE5XJRWFjovY8d3aucvcGsWbOMoKAgY/r06ca6deuMMWPGGJGRkUZqaqru0LQbP368MX/+fGP79u3Gn3/+aaSkpBjR0dFGenq67tC0yMnJMVasWGGsWLHCAIyXXnrJWLFihbFz507DMAzjmWeeMSIjI42vv/7aWLVqlXHJJZcYzZs3N44cOaI5cmtUdn1ycnKMe++911i4cKGxfft2Y+7cuUb37t2N1q1bGwUFBbpDN91tt91mREREGPPnzzf2799fdsvPzy+7z6233mo0adLE+OWXX4ylS5caycnJRnJyssaorXO667Nlyxbj8ccfN5YuXWps377d+Prrr40WLVoYZ511lubIrTFx4kRjwYIFxvbt241Vq1YZEydONBwOh/Hzzz8bhuGdjx1JcNzktddeM5o0aWIEBgYavXv3Nv7++2/dIdnCVVddZTRs2NAIDAw0GjVqZFx11VXGli1bdIelza+//moAJ91GjRplGIbaKv7QQw8ZcXFxRlBQkDFw4EBj48aNeoO2UGXXJz8/3xg0aJARExNjBAQEGE2bNjVuueUWn3kjUdF1AYz33nuv7D5Hjhwxbr/9diMqKsoICQkxLr30UmP//v36grbQ6a7Prl27jLPOOsuoX7++ERQUZLRq1cq47777jKysLL2BW+TGG280mjZtagQGBhoxMTHGwIEDy5Ibw/DOx47DMAzDuvEiIYQQQgjzyRocIYQQQngdSXCEEEII4XUkwRFCCCGE15EERwghhBBeRxIcIYQQQngdSXCEEEII4XUkwRFCCCGE15EERwghhBBeRxIcIYQQQngdSXCEEEII4XUkwRFCCCGE15EERwghhBBe5/8B6Buo0KDWgrcAAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Generate data and create a plot\n", + "X = np.linspace(0.1, 10 * np.pi, 1000)\n", + "Y = np.sin(X)\n", + "plt.plot(X, Y, \"C1o:\", markevery=25, mec=\"1.0\")\n", + "\n", + "# Display the plot\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "id": "5d33cf25", + "metadata": {}, + "source": [ + "## Scales & projections\n" + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "id": "ec4f76d3", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Create a figure with a single subplot\n", + "fig, ax = plt.subplots()\n", + "\n", + "# Set x-axis scale to logarithmic\n", + "ax.set_xscale(\"log\")\n", + "\n", + "# Plot data with specified formatting\n", + "ax.plot(X, Y, \"C1o-\", markevery=25, mec=\"1.0\")\n", + "\n", + "# Display the plot\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "id": "2202a2cc", + "metadata": {}, + "source": [ + "## Text & ornaments\n" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "id": "6dab88d6", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Create a figure with a single subplot\n", + "fig, ax = plt.subplots()\n", + "\n", + "# Fill the area between horizontal lines with a curve\n", + "ax.fill_betweenx([-1, 1], [0], [2*np.pi])\n", + "\n", + "# Add a text annotation to the plot\n", + "ax.text(0, -1, r\" Period $\\Phi$\")\n", + "\n", + "# Display the plot\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "id": "8c3968b8", + "metadata": {}, + "source": [ + "## Legend" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "id": "6306c741", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Create a figure with a single subplot\n", + "fig, ax = plt.subplots()\n", + "\n", + "# Plot sine and cosine curves with specified colors and labels\n", + "ax.plot(X, np.sin(X), \"C0\", label=\"Sine\")\n", + "ax.plot(X, np.cos(X), \"C1\", label=\"Cosine\")\n", + "\n", + "# Add a legend with customized positioning and formatting\n", + "ax.legend(bbox_to_anchor=(0, 1, 1, 0.1), ncol=2, mode=\"expand\", loc=\"lower left\")\n", + "\n", + "# Display the plot\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "id": "28f1548f", + "metadata": {}, + "source": [ + "## Annotation" + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "id": "7137b86a", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# Create a figure with a single subplot\n", + "fig, ax = plt.subplots()\n", + "\n", + "ax.plot(X, Y, \"C1o:\", markevery=25, mec=\"1.0\")\n", + "\n", + "# Add an annotation \"A\" with an arrow\n", + "ax.annotate(\"A\", (X[250], Y[250]), (X[250], -1),\n", + " ha=\"center\", va=\"center\",\n", + " arrowprops={\"arrowstyle\": \"->\", \"color\": \"C1\"})\n", + "\n", + "# Display the plot\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "id": "d6857c46", + "metadata": {}, + "source": [ + "## Colors" + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "id": "c1f67a3e", + "metadata": {}, + "outputs": [], + "source": [ + "import math\n", + "\n", + "from matplotlib.patches import Rectangle\n", + "import matplotlib.pyplot as plt\n", + "import matplotlib.colors as mcolors\n", + "\n", + "\n", + "def plot_colortable(colors, *, ncols=4, sort_colors=True):\n", + "\n", + " cell_width = 212\n", + " cell_height = 22\n", + " swatch_width = 48\n", + " margin = 12\n", + "\n", + " # Sort colors by hue, saturation, value and name.\n", + " if sort_colors is True:\n", + " names = sorted(\n", + " colors, key=lambda c: tuple(mcolors.rgb_to_hsv(mcolors.to_rgb(c))))\n", + " else:\n", + " names = list(colors)\n", + "\n", + " n = len(names)\n", + " nrows = math.ceil(n / ncols)\n", + "\n", + " width = cell_width * 4 + 2 * margin\n", + " height = cell_height * nrows + 2 * margin\n", + " dpi = 72\n", + "\n", + " fig, ax = plt.subplots(figsize=(width / dpi, height / dpi), dpi=dpi)\n", + " fig.subplots_adjust(margin/width, margin/height,\n", + " (width-margin)/width, (height-margin)/height)\n", + " ax.set_xlim(0, cell_width * 4)\n", + " ax.set_ylim(cell_height * (nrows-0.5), -cell_height/2.)\n", + " ax.yaxis.set_visible(False)\n", + " ax.xaxis.set_visible(False)\n", + " ax.set_axis_off()\n", + "\n", + " for i, name in enumerate(names):\n", + " row = i % nrows\n", + " col = i // nrows\n", + " y = row * cell_height\n", + "\n", + " swatch_start_x = cell_width * col\n", + " text_pos_x = cell_width * col + swatch_width + 7\n", + "\n", + " ax.text(text_pos_x, y, name, fontsize=14,\n", + " horizontalalignment='left',\n", + " verticalalignment='center')\n", + "\n", + " ax.add_patch(\n", + " Rectangle(xy=(swatch_start_x, y-9), width=swatch_width,\n", + " height=18, facecolor=colors[name], edgecolor='0.7')\n", + " )\n", + "\n", + " return fig" + ] + }, + { + "cell_type": "code", + "execution_count": 33, + "id": "114caa5f", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# CSS Colors\n", + "plot_colortable(mcolors.CSS4_COLORS)\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 36, + "id": "20a20d82", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Colors: ['magma', 'inferno', 'plasma', 'viridis', 'cividis', 'twilight', 'twilight_shifted', 'turbo', 'Blues', 'BrBG', 'BuGn', 'BuPu', 'CMRmap', 'GnBu', 'Greens', 'Greys', 'OrRd', 'Oranges', 'PRGn', 'PiYG', 'PuBu', 'PuBuGn', 'PuOr', 'PuRd', 'Purples', 'RdBu', 'RdGy', 'RdPu', 'RdYlBu', 'RdYlGn', 'Reds', 'Spectral', 'Wistia', 'YlGn', 'YlGnBu', 'YlOrBr', 'YlOrRd', 'afmhot', 'autumn', 'binary', 'bone', 'brg', 'bwr', 'cool', 'coolwarm', 'copper', 'cubehelix', 'flag', 'gist_earth', 'gist_gray', 'gist_heat', 'gist_ncar', 'gist_rainbow', 'gist_stern', 'gist_yarg', 'gnuplot', 'gnuplot2', 'gray', 'hot', 'hsv', 'jet', 'nipy_spectral', 'ocean', 'pink', 'prism', 'rainbow', 'seismic', 'spring', 'summer', 'terrain', 'winter', 'Accent', 'Dark2', 'Paired', 'Pastel1', 'Pastel2', 'Set1', 'Set2', 'Set3', 'tab10', 'tab20', 'tab20b', 'tab20c', 'magma_r', 'inferno_r', 'plasma_r', 'viridis_r', 'cividis_r', 'twilight_r', 'twilight_shifted_r', 'turbo_r', 'Blues_r', 'BrBG_r', 'BuGn_r', 'BuPu_r', 'CMRmap_r', 'GnBu_r', 'Greens_r', 'Greys_r', 'OrRd_r', 'Oranges_r', 'PRGn_r', 'PiYG_r', 'PuBu_r', 'PuBuGn_r', 'PuOr_r', 'PuRd_r', 'Purples_r', 'RdBu_r', 'RdGy_r', 'RdPu_r', 'RdYlBu_r', 'RdYlGn_r', 'Reds_r', 'Spectral_r', 'Wistia_r', 'YlGn_r', 'YlGnBu_r', 'YlOrBr_r', 'YlOrRd_r', 'afmhot_r', 'autumn_r', 'binary_r', 'bone_r', 'brg_r', 'bwr_r', 'cool_r', 'coolwarm_r', 'copper_r', 'cubehelix_r', 'flag_r', 'gist_earth_r', 'gist_gray_r', 'gist_heat_r', 'gist_ncar_r', 'gist_rainbow_r', 'gist_stern_r', 'gist_yarg_r', 'gnuplot_r', 'gnuplot2_r', 'gray_r', 'hot_r', 'hsv_r', 'jet_r', 'nipy_spectral_r', 'ocean_r', 'pink_r', 'prism_r', 'rainbow_r', 'seismic_r', 'spring_r', 'summer_r', 'terrain_r', 'winter_r', 'Accent_r', 'Dark2_r', 'Paired_r', 'Pastel1_r', 'Pastel2_r', 'Set1_r', 'Set2_r', 'Set3_r', 'tab10_r', 'tab20_r', 'tab20b_r', 'tab20c_r']\n" + ] + } + ], + "source": [ + "# Get a list of named colors\n", + "named_colors = plt.colormaps() \n", + "print(\"Colors:\",named_colors)" + ] + }, + { + "cell_type": "markdown", + "id": "439efbf7", + "metadata": {}, + "source": [ + "## Save\n", + "\n", + "```python\n", + "# Save the figure as a PNG file with higher resolution (300 dpi)\n", + "fig.savefig(\"my-first-figure.png\", dpi=300)\n", + "\n", + "# Save the figure as a PDF file\n", + "fig.savefig(\"my-first-figure.pdf\")\n", + "```" + ] + } + ], + "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.8.10" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/docs/examples/matplotlib/sine_plot.png b/docs/examples/matplotlib/sine_plot.png new file mode 100644 index 0000000..85157e4 Binary files /dev/null and b/docs/examples/matplotlib/sine_plot.png differ diff --git a/docs/examples/matplotlib/st_matplotlib.ipynb b/docs/examples/matplotlib/st_matplotlib.ipynb new file mode 100644 index 0000000..dd116bf --- /dev/null +++ b/docs/examples/matplotlib/st_matplotlib.ipynb @@ -0,0 +1,506 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "09bbcd56", + "metadata": {}, + "source": [ + "\"Open\n", + "\n", + " \n", + "# Matplotlib Cheat Sheet" + ] + }, + { + "cell_type": "markdown", + "id": "e99ef048", + "metadata": {}, + "source": [ + "
\n", + " \n", + "
\n", + " Note
\n", + " If you want to run this example on Google Colab, follow these detailed steps below:\n", + "
\n", + "
\n", + "\n", + "1. Install the necessary libraries:\n", + "\n", + " ```python\n", + " !pip install streamlit\n", + " ```\n", + "\n", + "2. Create your app by executing the following cell:\n", + "\n", + " ```python\n", + " %%writefile app.py\n", + " import streamlit as st\n", + " import pandas as pd\n", + " # ... (rest of your code)\n", + " ```\n", + "\n", + "3. Start your app by running this cell:\n", + "\n", + " ```python\n", + " !streamlit run app.py & npx localtunnel --port 8501\n", + " ```\n", + "\n", + " ![Example Image](https://raw.githubusercontent.com/fralfaro/DS-Cheat-Sheets/main/docs/images/img_01.png)\n", + "\n", + " * After completing the above steps, click \"**your url is: ...**\" (for example, *https://major-weeks-clap.loca.lt*). \n", + " * In the new window, enter the numbers in the \"**External URL: ...**\" section (for example, **35.230.186.60**). \n", + " * Finally, click **Click to Submit**\n", + "\n", + " ![Example Image](https://raw.githubusercontent.com/fralfaro/DS-Cheat-Sheets/main/docs/images/img_02.png)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "4cf3b191", + "metadata": {}, + "outputs": [], + "source": [ + "!pip install streamlit" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "c7b487f1", + "metadata": {}, + "outputs": [], + "source": [ + "%%writefile app.py\n", + "import streamlit as st\n", + "from pathlib import Path\n", + "import base64\n", + "import requests\n", + "\n", + "\n", + "# Initial page config\n", + "st.set_page_config(\n", + " page_title='Matplotlib Cheat Sheet',\n", + " layout=\"wide\",\n", + " initial_sidebar_state=\"expanded\",\n", + ")\n", + "\n", + "def main():\n", + " \"\"\"\n", + " Main function to set up the Streamlit app layout.\n", + " \"\"\"\n", + " cs_sidebar()\n", + " cs_body()\n", + " return None\n", + "\n", + "# Define img_to_bytes() function\n", + "def img_to_bytes(img_url):\n", + " response = requests.get(img_url)\n", + " img_bytes = response.content\n", + " encoded = base64.b64encode(img_bytes).decode()\n", + " return encoded\n", + "\n", + "# Define the cs_sidebar() function\n", + "def cs_sidebar():\n", + " \"\"\"\n", + " Populate the sidebar with various content sections related to Matplotlib.\n", + " \"\"\"\n", + " st.sidebar.markdown(\n", + " '''[](https://streamlit.io/)'''.format(\n", + " img_to_bytes(\"https://raw.githubusercontent.com/fralfaro/DS-Cheat-Sheets/main/docs/examples/matplotlib/matplotlib.png\")), unsafe_allow_html=True)\n", + "\n", + " st.sidebar.header('Matplotlib Cheat Sheet')\n", + " st.sidebar.markdown('''\n", + "[Matplotlib](https://matplotlib.org/) is a Python 2D plotting library which produces publication-quality \n", + "figures in a variety of hardcopy formats and interactive environments across platforms.\n", + " ''', unsafe_allow_html=True)\n", + "\n", + " # Matplotlib installation and import\n", + " st.sidebar.markdown('__Install and import Matplotlib__')\n", + " st.sidebar.code('$ pip install matplotlib')\n", + " st.sidebar.code('''\n", + "# Import Matplotlib convention\n", + ">>> import matplotlib.pyplot as plt\n", + "''')\n", + "\n", + " # Anatomy of a figure\n", + " st.sidebar.markdown('__Anatomy of a figure__')\n", + " st.sidebar.markdown(\n", + " '''[](https://streamlit.io/)'''.format(\n", + " img_to_bytes(\"https://raw.githubusercontent.com/fralfaro/DS-Cheat-Sheets/main/docs/examples/matplotlib/mlp_01.png\")), unsafe_allow_html=True)\n", + "\n", + " st.sidebar.markdown('''\n", + " In Matplotlib, a figure refers to the overall canvas or window that contains one or more individual plots or subplots. \n", + " Understanding the anatomy of a Matplotlib figure is crucial for creating and customizing your visualizations effectively. \n", + " ''', unsafe_allow_html=True)\n", + "\n", + "\n", + " # Example code for the workflow\n", + " st.sidebar.code('''\n", + " # Workflow\n", + " import matplotlib.pyplot as plt\n", + " \n", + " # Step 1: Prepare Data\n", + " x = [1, 2, 3, 4] \n", + " y = [10, 20, 25, 30] \n", + "\n", + " # Step 2: Create Plot\n", + " fig = plt.figure()\n", + " ax = fig.add_subplot(111)\n", + "\n", + " # Step 3: Plot\n", + " ax.plot(x, y, color='lightblue', linewidth=3)\n", + "\n", + " # Step 4: Customized Plot\n", + " ax.scatter([2, 4, 6], [5, 15, 25], color='darkgreen', marker='^')\n", + " ax.set_xlim(1, 6.5)\n", + "\n", + " # Step 5: Save Plot\n", + " plt.savefig('foo.png')\n", + "\n", + " # Step 6: Show Plot\n", + " plt.show()\n", + " ''')\n", + " return None\n", + "\n", + "\n", + "# Define the cs_body() function\n", + "def cs_body():\n", + " \"\"\"\n", + " Create content sections for the main body of the Streamlit cheat sheet with NumPy examples.\n", + " \"\"\"\n", + " col1, col2, col3 = st.columns(3) # Create columns for layout\n", + "\n", + " #######################################\n", + " # COLUMN 1\n", + " #######################################\n", + "\n", + " # Prepare the Data\n", + " col1.subheader('Basic Plots ')\n", + "\n", + " ## Create a scatter plot\n", + " col1.code('''\n", + " # Create a scatter plot\n", + " X = np.random.uniform(0, 1, 100)\n", + " Y = np.random.uniform(0, 1, 100)\n", + " plt.scatter(X, Y)\n", + " ''')\n", + "\n", + " ## Create a bar plot\n", + " col1.code('''\n", + " # Create a bar plot\n", + " X = np.arange(10)\n", + " Y = np.random.uniform(1, 10, 10)\n", + " plt.bar(X, Y)\n", + " ''')\n", + "\n", + " ## Create an image plot using imshow\n", + " col1.code('''\n", + " # Create an image plot using imshow\n", + " Z = np.random.uniform(0, 1, (8, 8))\n", + " plt.imshow(Z)\n", + " ''')\n", + "\n", + " ## Create a contour plot\n", + " col1.code('''\n", + " # Create a contour plot\n", + " Z = np.random.uniform(0, 1, (8, 8))\n", + " plt.contourf(Z)\n", + " plt.show()\n", + " ''')\n", + "\n", + " ## Create a pie chart\n", + " col1.code('''\n", + " # Create a pie chart\n", + " Z = np.random.uniform(0, 1, 4)\n", + " plt.pie(Z)\n", + " ''')\n", + "\n", + " ## Create a histogram\n", + " col1.code('''\n", + " # Create a histogram\n", + " Z = np.random.normal(0, 1, 100)\n", + " plt.hist(Z)\n", + " ''')\n", + "\n", + " ## Create an error bar plot\n", + " col1.code('''\n", + " # Create an error bar plot\n", + " X = np.arange(5)\n", + " Y = np.random.uniform(0, 1, 5)\n", + " plt.errorbar(X, Y, Y / 4)\n", + " ''')\n", + "\n", + " ## Create a box plot\n", + " col1.code('''\n", + " # Create a box plot\n", + " Z = np.random.normal(0, 1, (100, 3))\n", + " plt.boxplot(Z)\n", + " ''')\n", + "\n", + " # Tweak\n", + " col1.subheader('Tweak')\n", + "\n", + " ## Create a plot with a black solid line\n", + " col1.code('''\n", + " # Create a plot with a black solid line\n", + " X = np.linspace(0, 10, 100)\n", + " Y = np.sin(X)\n", + " plt.plot(X, Y, color=\"black\")\n", + " ''')\n", + "\n", + " ## Create a plot with a dashed line\n", + " col1.code('''\n", + " # Create a plot with a dashed line\n", + " X = np.linspace(0, 10, 100)\n", + " Y = np.sin(X)\n", + " plt.plot(X, Y, linestyle=\"--\")\n", + " ''')\n", + "\n", + " ## Create a plot with a thicker line\n", + " col1.code('''\n", + " # Create a plot with a thicker line\n", + " X = np.linspace(0, 10, 100)\n", + " Y = np.sin(X)\n", + " plt.plot(X, Y, linewidth=5)\n", + " ''')\n", + "\n", + " ## Create a plot with markers\n", + " col1.code('''\n", + " # Create a plot with markers\n", + " X = np.linspace(0, 10, 100)\n", + " Y = np.sin(X)\n", + " plt.plot(X, Y, marker=\"o\")\n", + " ''')\n", + "\n", + " # Save\n", + " col1.subheader('Save')\n", + " col1.code('''\n", + " # Save the figure as a PNG file with higher resolution (300 dpi)\n", + " fig.savefig(\"my-first-figure.png\", dpi=300)\n", + "\n", + " # Save the figure as a PDF file\n", + " fig.savefig(\"my-first-figure.pdf\")\n", + " ''')\n", + "\n", + " #######################################\n", + " # COLUMN 2\n", + " #######################################\n", + "\n", + " # Markers\n", + " col2.subheader('Organize')\n", + "\n", + " ## Create a plot with two lines on the same axes\n", + " col2.code('''\n", + " # Create a plot with two lines on the same axes\n", + " X = np.linspace(0, 10, 100)\n", + " Y1, Y2 = np.sin(X), np.cos(X)\n", + " plt.plot(X, Y1, X, Y2)\n", + " ''')\n", + "\n", + " ## Create a figure with two subplots (vertically stacked)\n", + " col2.code('''\n", + " # Create a figure with two subplots (vertically stacked)\n", + " X = np.linspace(0, 10, 100)\n", + " Y1, Y2 = np.sin(X), np.cos(X)\n", + " fig, (ax1, ax2) = plt.subplots(2, 1)\n", + " ax1.plot(X, Y1, color=\"C1\")\n", + " ax2.plot(X, Y2, color=\"C0\")\n", + " ''')\n", + "\n", + " ## Create a figure with two subplots (horizontally aligned)\n", + " col2.code('''\n", + " # Create a figure with two subplots (horizontally aligned)\n", + " X = np.linspace(0, 10, 100)\n", + " Y1, Y2 = np.sin(X), np.cos(X)\n", + " fig, (ax1, ax2) = plt.subplots(1, 2)\n", + " ax1.plot(Y1, X, color=\"C1\")\n", + " ax2.plot(Y2, X, color=\"C0\")\n", + " ''')\n", + "\n", + " # Label\n", + " col2.subheader('Label')\n", + "\n", + " ## Create data and plot a sine wave\n", + " col2.code('''\n", + " # Create data and plot a sine wave\n", + " X = np.linspace(0, 10, 100)\n", + " Y = np.sin(X)\n", + " plt.plot(X, Y)\n", + " ''')\n", + "\n", + " ## Modify plot properties\n", + " col2.code('''\n", + " # Modify plot properties\n", + " X = np.linspace(0, 10, 100)\n", + " Y = np.sin(X)\n", + " plt.plot(X, Y)\n", + " plt.title(\"A Sine wave\")\n", + " plt.xlabel(\"Time\")\n", + " plt.ylabel(None)\n", + " ''')\n", + "\n", + " # Figure, axes & spines\n", + " col2.subheader('Figure, axes & spines')\n", + " col2.code('''\n", + " # Create a 3x3 grid of subplots\n", + " fig, axs = plt.subplots(3, 3)\n", + "\n", + " # Set face colors for specific subplots\n", + " axs[0, 0].set_facecolor(\"#ddddff\")\n", + " axs[2, 2].set_facecolor(\"#ffffdd\")\n", + " ''')\n", + "\n", + " col2.code('''\n", + " # Create a 3x3 grid of subplots\n", + " fig, axs = plt.subplots(3, 3)\n", + "\n", + " # Add a grid specification and set face color for a specific subplot\n", + " gs = fig.add_gridspec(3, 3)\n", + " ax = fig.add_subplot(gs[0, :])\n", + " ax.set_facecolor(\"#ddddff\")\n", + " ''')\n", + "\n", + " col2.code('''\n", + " # Create a figure with a single subplot\n", + " fig, ax = plt.subplots()\n", + "\n", + " # Remove top and right spines from the subplot\n", + " ax.spines[\"top\"].set_color(\"None\")\n", + " ax.spines[\"right\"].set_color(\"None\")\n", + " ''')\n", + "\n", + " # Colors\n", + " col2.subheader('Colors')\n", + " col2.code('''\n", + " # Get a list of named colors\n", + " named_colors = plt.colormaps() \n", + " print(\"Colors:\",named_colors)\n", + " ''')\n", + "\n", + " #######################################\n", + " # COLUMN 3\n", + " #######################################\n", + "\n", + " # Ticks & labels\n", + " col3.subheader('Ticks & labels')\n", + " col3.code('''\n", + " from matplotlib.ticker import MultipleLocator as ML\n", + " from matplotlib.ticker import ScalarFormatter as SF\n", + "\n", + " # Create a figure with a single subplot\n", + " fig, ax = plt.subplots()\n", + " \n", + " # Set minor tick locations and formatter for the x-axis\n", + " ax.xaxis.set_minor_locator(ML(0.2))\n", + " ax.xaxis.set_minor_formatter(SF())\n", + " \n", + " # Rotate minor tick labels on the x-axis\n", + " ax.tick_params(axis='x', which='minor', rotation=90)\n", + " ''')\n", + "\n", + " # Lines & markers\n", + " col3.subheader('Lines & markers')\n", + " col3.code('''\n", + " # Generate data and create a plot\n", + " X = np.linspace(0.1, 10 * np.pi, 1000)\n", + " Y = np.sin(X)\n", + " plt.plot(X, Y, \"C1o:\", markevery=25, mec=\"1.0\")\n", + " ''')\n", + "\n", + " # Scales & projections\n", + " col3.subheader('Scales & projections')\n", + " col3.code('''\n", + " # Create a figure with a single subplot\n", + " fig, ax = plt.subplots()\n", + " \n", + " # Set x-axis scale to logarithmic\n", + " ax.set_xscale(\"log\")\n", + " \n", + " # Plot data with specified formatting\n", + " ax.plot(X, Y, \"C1o-\", markevery=25, mec=\"1.0\")\n", + " ''')\n", + "\n", + " # Text & ornaments\n", + " col3.subheader('Scales & projections')\n", + " col3.code('''\n", + " # Create a figure with a single subplot\n", + " fig, ax = plt.subplots()\n", + " \n", + " # Fill the area between horizontal lines with a curve\n", + " ax.fill_betweenx([-1, 1], [0], [2*np.pi])\n", + " \n", + " # Add a text annotation to the plot\n", + " ax.text(0, -1, r\" Period $\\Phi$\")\n", + " ''')\n", + "\n", + " # Legend\n", + " col3.subheader('Legend')\n", + " col3.code('''\n", + " # Create a figure with a single subplot\n", + " fig, ax = plt.subplots()\n", + " \n", + " # Plot sine and cosine curves with specified colors and labels\n", + " ax.plot(X, np.sin(X), \"C0\", label=\"Sine\")\n", + " ax.plot(X, np.cos(X), \"C1\", label=\"Cosine\")\n", + " \n", + " # Add a legend with customized positioning and formatting\n", + " ax.legend(bbox_to_anchor=(0, 1, 1, 0.1), ncol=2, mode=\"expand\", loc=\"lower left\")\n", + " ''')\n", + "\n", + " # Annotation\n", + " col3.subheader('Annotation')\n", + " col3.code('''\n", + " # Create a figure with a single subplot\n", + " fig, ax = plt.subplots()\n", + " \n", + " ax.plot(X, Y, \"C1o:\", markevery=25, mec=\"1.0\")\n", + " \n", + " # Add an annotation \"A\" with an arrow\n", + " ax.annotate(\"A\", (X[250], Y[250]), (X[250], -1),\n", + " ha=\"center\", va=\"center\",\n", + " arrowprops={\"arrowstyle\": \"->\", \"color\": \"C1\"})\n", + " ''')\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "# Run the main function if the script is executed directly\n", + "if __name__ == '__main__':\n", + " main()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "df712ce3", + "metadata": {}, + "outputs": [], + "source": [ + "!streamlit run app.py & npx localtunnel --port 8501" + ] + } + ], + "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.8.10" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/docs/examples/numpy/app.py b/docs/examples/numpy/app.py index d3c550e..2947a49 100644 --- a/docs/examples/numpy/app.py +++ b/docs/examples/numpy/app.py @@ -6,7 +6,7 @@ # Initial page config st.set_page_config( - page_title='Streamlit cheat sheet', + page_title='NumPy Cheat Sheet', layout="wide", initial_sidebar_state="expanded", ) @@ -37,7 +37,7 @@ def cs_sidebar(): st.sidebar.header('NumPy Cheat Sheet') st.sidebar.markdown(''' -The [NumPy](https://numpy.org/) library is the core library for scientific computing in +[NumPy](https://numpy.org/) is the core library for scientific computing in Python. It provides a high-performance multidimensional array object, and tools for working with these arrays. ''', unsafe_allow_html=True) diff --git a/docs/examples/numpy/numpy.ipynb b/docs/examples/numpy/numpy.ipynb new file mode 100644 index 0000000..dd9a962 --- /dev/null +++ b/docs/examples/numpy/numpy.ipynb @@ -0,0 +1,1147 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "13773235", + "metadata": {}, + "source": [ + "\"Open\n", + "\n", + "\n", + "# NumPy Cheat Sheet\n", + "\n", + "\"numpy\n", + "\n", + "[NumPy](https://numpy.org/) is the core library for scientific computing in\n", + "Python. It provides a high-performance multidimensional array\n", + "object, and tools for working with these arrays.\n", + "\n", + "## Install and import NumPy\n", + "\n", + "`\n", + "$ pip install numpy\n", + "`\n" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "a5cbafb3", + "metadata": {}, + "outputs": [], + "source": [ + "# Import NumPy convention\n", + "import numpy as np" + ] + }, + { + "cell_type": "markdown", + "id": "47a84eb1", + "metadata": {}, + "source": [ + "## NumPy Arrays\n", + "\n", + "\"numpy\n" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "2fbcda2e", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Array a:\n", + "[1 2 3]\n", + "\n", + "Array b:\n", + "[[1.5 2. 3. ]\n", + " [4. 5. 6. ]]\n", + "\n", + "Array c:\n", + "[[[1.5 2. 3. ]\n", + " [4. 5. 6. ]]\n", + "\n", + " [[3. 2. 1. ]\n", + " [4. 5. 6. ]]]\n" + ] + } + ], + "source": [ + "# Create a 1D array\n", + "a = np.array([1, 2, 3])\n", + "\n", + "# Create a 2D array with specified dtype\n", + "b = np.array([\n", + " (1.5, 2, 3),\n", + " (4, 5, 6)\n", + "], dtype=float)\n", + "\n", + "# Create a 3D array with specified dtype\n", + "c = np.array([\n", + " [(1.5, 2, 3), (4, 5, 6)],\n", + " [(3, 2, 1), (4, 5, 6)]\n", + "], dtype=float)\n", + "\n", + "print(\"Array a:\")\n", + "print(a)\n", + "\n", + "print(\"\\nArray b:\")\n", + "print(b)\n", + "\n", + "print(\"\\nArray c:\")\n", + "print(c)" + ] + }, + { + "cell_type": "markdown", + "id": "f8be45d5", + "metadata": {}, + "source": [ + "## Initial Placeholders\n" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "811b4aa3", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "zeros_arr:\n", + "[[0. 0. 0. 0.]\n", + " [0. 0. 0. 0.]\n", + " [0. 0. 0. 0.]]\n", + "\n", + "ones_arr:\n", + "[[[1. 1. 1. 1.]\n", + " [1. 1. 1. 1.]\n", + " [1. 1. 1. 1.]]\n", + "\n", + " [[1. 1. 1. 1.]\n", + " [1. 1. 1. 1.]\n", + " [1. 1. 1. 1.]]]\n", + "\n", + "d:\n", + "[10 15 20]\n", + "\n", + "e:\n", + "[0. 0.25 0.5 0.75 1. 1.25 1.5 1.75 2. ]\n", + "\n", + "f:\n", + "[[7 7]\n", + " [7 7]]\n", + "\n", + "g:\n", + "[[1. 0.]\n", + " [0. 1.]]\n", + "\n", + "random_arr:\n", + "[[0.00439382 0.02702873]\n", + " [0.19578698 0.34798592]]\n", + "\n", + "empty_arr:\n", + "[[1.5 2. ]\n", + " [3. 4. ]\n", + " [5. 6. ]]\n" + ] + } + ], + "source": [ + "# Create an array of zeros\n", + "zeros_arr = np.zeros((3, 4))\n", + "\n", + "# Create an array of ones\n", + "ones_arr = np.ones((2, 3, 4))\n", + "\n", + "# Create an array of evenly spaced values (step value)\n", + "d = np.arange(10, 25, 5)\n", + "\n", + "# Create an array of evenly spaced values (number of samples)\n", + "e = np.linspace(0, 2, 9)\n", + "\n", + "# Create a constant array\n", + "f = np.full((2, 2), 7)\n", + "\n", + "# Create a 2x2 identity matrix\n", + "g = np.eye(2)\n", + "\n", + "# Create an array with random values\n", + "random_arr = np.random.random((2, 2))\n", + "\n", + "# Create an empty array\n", + "empty_arr = np.empty((3, 2))\n", + "\n", + "print(\"zeros_arr:\")\n", + "print(zeros_arr)\n", + "\n", + "print(\"\\nones_arr:\")\n", + "print(ones_arr)\n", + "\n", + "print(\"\\nd:\")\n", + "print(d)\n", + "\n", + "print(\"\\ne:\")\n", + "print(e)\n", + "\n", + "print(\"\\nf:\")\n", + "print(f)\n", + "\n", + "print(\"\\ng:\")\n", + "print(g)\n", + "\n", + "print(\"\\nrandom_arr:\")\n", + "print(random_arr)\n", + "\n", + "print(\"\\nempty_arr:\")\n", + "print(empty_arr)\n" + ] + }, + { + "cell_type": "markdown", + "id": "3be9b36a", + "metadata": {}, + "source": [ + "## NumPy Data Types\n" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "ca170aba", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "int64_type: \n", + "float32_type: \n", + "complex_type: \n", + "bool_type: \n", + "object_type: \n", + "string_type: \n", + "unicode_type: \n" + ] + } + ], + "source": [ + "# Signed 64-bit integer types\n", + "int64_type = np.int64\n", + "\n", + "# Standard double-precision floating point\n", + "float32_type = np.float32\n", + "\n", + "# Complex numbers represented by 128 floats\n", + "complex_type = np.complex128\n", + "\n", + "# Boolean type storing TRUE and FALSE values\n", + "bool_type = np.bool_\n", + "\n", + "# Python object type\n", + "object_type = np.object_\n", + "\n", + "# Fixed-length string type\n", + "string_type = np.string_\n", + "\n", + "# Fixed-length unicode type\n", + "unicode_type = np.unicode_\n", + "\n", + "print(\"int64_type:\", int64_type)\n", + "print(\"float32_type:\", float32_type)\n", + "print(\"complex_type:\", complex_type)\n", + "print(\"bool_type:\", bool_type)\n", + "print(\"object_type:\", object_type)\n", + "print(\"string_type:\", string_type)\n", + "print(\"unicode_type:\", unicode_type)" + ] + }, + { + "cell_type": "markdown", + "id": "cc50a932", + "metadata": {}, + "source": [ + "## Inspecting Array Properties" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "7cd88c37", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "a_shape:\n", + "(3,)\n", + "\n", + "a_length:\n", + "3\n", + "\n", + "b_ndim:\n", + "2\n", + "\n", + "e_size:\n", + "9\n", + "\n", + "b_dtype:\n", + "float64\n", + "\n", + "b_dtype_name:\n", + "float64\n", + "\n", + "b_as_int:\n", + "[[1 2 3]\n", + " [4 5 6]]\n" + ] + } + ], + "source": [ + "# Array dimensions\n", + "a_shape = a.shape\n", + "\n", + "# Length of array\n", + "a_length = len(a)\n", + "\n", + "# Number of array dimensions\n", + "b_ndim = b.ndim\n", + "\n", + "# Number of array elements\n", + "e_size = e.size\n", + "\n", + "# Data type of array elements\n", + "b_dtype = b.dtype\n", + "\n", + "# Name of data type\n", + "b_dtype_name = b.dtype.name\n", + "\n", + "# Convert an array to a different type\n", + "b_as_int = b.astype(int)\n", + "\n", + "print(\"a_shape:\")\n", + "print(a_shape)\n", + "\n", + "print(\"\\na_length:\")\n", + "print(a_length)\n", + "\n", + "print(\"\\nb_ndim:\")\n", + "print(b_ndim)\n", + "\n", + "print(\"\\ne_size:\")\n", + "print(e_size)\n", + "\n", + "print(\"\\nb_dtype:\")\n", + "print(b_dtype)\n", + "\n", + "print(\"\\nb_dtype_name:\")\n", + "print(b_dtype_name)\n", + "\n", + "print(\"\\nb_as_int:\")\n", + "print(b_as_int)\n" + ] + }, + { + "cell_type": "markdown", + "id": "afd724dc", + "metadata": {}, + "source": [ + "## Arithmetic Operations" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "768cf5c1", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "subtraction_result:\n", + "[[-0.5 0. 0. ]\n", + " [-3. -3. -3. ]]\n", + "\n", + "subtraction_np:\n", + "[[-0.5 0. 0. ]\n", + " [-3. -3. -3. ]]\n", + "\n", + "addition_result:\n", + "[[2.5 4. 6. ]\n", + " [5. 7. 9. ]]\n", + "\n", + "addition_np:\n", + "[[2.5 4. 6. ]\n", + " [5. 7. 9. ]]\n", + "\n", + "division_result:\n", + "[[0.66666667 1. 1. ]\n", + " [0.25 0.4 0.5 ]]\n", + "\n", + "division_np:\n", + "[[0.66666667 1. 1. ]\n", + " [0.25 0.4 0.5 ]]\n", + "\n", + "multiplication_result:\n", + "[[ 1.5 4. 9. ]\n", + " [ 4. 10. 18. ]]\n", + "\n", + "multiplication_np:\n", + "[[ 1.5 4. 9. ]\n", + " [ 4. 10. 18. ]]\n", + "\n", + "exponentiation_result:\n", + "[[ 4.48168907 7.3890561 20.08553692]\n", + " [ 54.59815003 148.4131591 403.42879349]]\n", + "\n", + "sqrt_result:\n", + "[[1.22474487 1.41421356 1.73205081]\n", + " [2. 2.23606798 2.44948974]]\n", + "\n", + "sin_result:\n", + "[0.84147098 0.90929743 0.14112001]\n", + "\n", + "cos_result:\n", + "[[ 0.0707372 -0.41614684 -0.9899925 ]\n", + " [-0.65364362 0.28366219 0.96017029]]\n", + "\n", + "log_result:\n", + "[0. 0.69314718 1.09861229]\n", + "\n", + "dot_product_result:\n", + "145\n" + ] + } + ], + "source": [ + "# Example values for arrays\n", + "a = np.array([1, 2, 3])\n", + "b = np.array([\n", + " (1.5, 2, 3),\n", + " (4, 5, 6)\n", + "], dtype=float)\n", + "e = np.array([2, 3, 4])\n", + "d = np.arange(10, 25, 5)\n", + "\n", + "# Subtraction\n", + "subtraction_result = a - b\n", + "subtraction_np = np.subtract(a, b)\n", + "\n", + "# Addition\n", + "addition_result = b + a\n", + "addition_np = np.add(b, a)\n", + "\n", + "# Division\n", + "division_result = a / b\n", + "division_np = np.divide(a, b)\n", + "\n", + "# Multiplication\n", + "multiplication_result = a * b\n", + "multiplication_np = np.multiply(a, b)\n", + "\n", + "# Exponentiation\n", + "exponentiation_result = np.exp(b)\n", + "\n", + "# Square root\n", + "sqrt_result = np.sqrt(b)\n", + "\n", + "# Sine of an array\n", + "sin_result = np.sin(a)\n", + "\n", + "# Element-wise cosine\n", + "cos_result = np.cos(b)\n", + "\n", + "# Element-wise natural logarithm\n", + "log_result = np.log(a)\n", + "\n", + "# Dot product\n", + "dot_product_result = np.dot(e, d)\n", + "\n", + "print(\"subtraction_result:\")\n", + "print(subtraction_result)\n", + "\n", + "print(\"\\nsubtraction_np:\")\n", + "print(subtraction_np)\n", + "\n", + "print(\"\\naddition_result:\")\n", + "print(addition_result)\n", + "\n", + "print(\"\\naddition_np:\")\n", + "print(addition_np)\n", + "\n", + "print(\"\\ndivision_result:\")\n", + "print(division_result)\n", + "\n", + "print(\"\\ndivision_np:\")\n", + "print(division_np)\n", + "\n", + "print(\"\\nmultiplication_result:\")\n", + "print(multiplication_result)\n", + "\n", + "print(\"\\nmultiplication_np:\")\n", + "print(multiplication_np)\n", + "\n", + "print(\"\\nexponentiation_result:\")\n", + "print(exponentiation_result)\n", + "\n", + "print(\"\\nsqrt_result:\")\n", + "print(sqrt_result)\n", + "\n", + "print(\"\\nsin_result:\")\n", + "print(sin_result)\n", + "\n", + "print(\"\\ncos_result:\")\n", + "print(cos_result)\n", + "\n", + "print(\"\\nlog_result:\")\n", + "print(log_result)\n", + "\n", + "print(\"\\ndot_product_result:\")\n", + "print(dot_product_result)" + ] + }, + { + "cell_type": "markdown", + "id": "0707d1be", + "metadata": {}, + "source": [ + "## Comparison Operations\n" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "dfb641c2", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "equality_comparison:\n", + "[[False True True]\n", + " [False False False]]\n", + "\n", + "less_than_comparison:\n", + "[ True False False]\n", + "\n", + "np_equal:\n", + "False\n" + ] + } + ], + "source": [ + "# Element-wise comparison for equality\n", + "equality_comparison = a == b\n", + "\n", + "# Element-wise comparison for less than\n", + "less_than_comparison = a < 2\n", + "\n", + "# Array-wise comparison using np.array_equal\n", + "np_equal = np.array_equal(a, b)\n", + "\n", + "print(\"equality_comparison:\")\n", + "print(equality_comparison)\n", + "\n", + "print(\"\\nless_than_comparison:\")\n", + "print(less_than_comparison)\n", + "\n", + "print(\"\\nnp_equal:\")\n", + "print(np_equal)" + ] + }, + { + "cell_type": "markdown", + "id": "8c4d5b04", + "metadata": {}, + "source": [ + "## Aggregate Functions\n" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "4f52f926", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "array_sum:\n", + "6\n", + "\n", + "array_min:\n", + "1\n", + "\n", + "row_max:\n", + "[4. 5. 6.]\n", + "\n", + "cumulative_sum:\n", + "[[ 1.5 3.5 6.5]\n", + " [ 4. 9. 15. ]]\n", + "\n", + "array_mean:\n", + "2.0\n", + "\n", + "array_median:\n", + "3.5\n", + "\n", + "corr_coefficient:\n", + "[[1. 0.98198051]\n", + " [0.98198051 1. ]]\n", + "\n", + "std_deviation:\n", + "1.5920810978785667\n" + ] + } + ], + "source": [ + "# Array-wise sum\n", + "array_sum = a.sum()\n", + "\n", + "# Array-wise minimum value\n", + "array_min = a.min()\n", + "\n", + "# Maximum value of an array row\n", + "row_max = b.max(axis=0)\n", + "\n", + "# Cumulative sum of the elements\n", + "cumulative_sum = b.cumsum(axis=1)\n", + "\n", + "# Mean\n", + "array_mean = a.mean()\n", + "\n", + "# Median\n", + "array_median = np.median(b)\n", + "\n", + "# Correlation coefficient (not valid for 1D array)\n", + "corr_coefficient = np.corrcoef(a, b[0])\n", + "\n", + "# Standard deviation\n", + "std_deviation = np.std(b)\n", + "\n", + "print(\"array_sum:\")\n", + "print(array_sum)\n", + "\n", + "print(\"\\narray_min:\")\n", + "print(array_min)\n", + "\n", + "print(\"\\nrow_max:\")\n", + "print(row_max)\n", + "\n", + "print(\"\\ncumulative_sum:\")\n", + "print(cumulative_sum)\n", + "\n", + "print(\"\\narray_mean:\")\n", + "print(array_mean)\n", + "\n", + "print(\"\\narray_median:\")\n", + "print(array_median)\n", + "\n", + "print(\"\\ncorr_coefficient:\")\n", + "print(corr_coefficient)\n", + "\n", + "print(\"\\nstd_deviation:\")\n", + "print(std_deviation)" + ] + }, + { + "cell_type": "markdown", + "id": "ebdc7a35", + "metadata": {}, + "source": [ + "## Copying Arrays\n" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "fc4b81e3", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "array_view:\n", + "[1 2 3]\n", + "\n", + "array_copy:\n", + "[1 2 3]\n", + "\n", + "array_deep_copy:\n", + "[1 2 3]\n" + ] + } + ], + "source": [ + "# Create a view of the array with the same data\n", + "array_view = a.view()\n", + "\n", + "# Create a copy of the array\n", + "array_copy = np.copy(a)\n", + "\n", + "# Create a deep copy of the array\n", + "array_deep_copy = a.copy()\n", + "\n", + "# Sort an array\n", + "a.sort()\n", + "\n", + "# Sort the elements of an array's axis\n", + "c.sort(axis=0)\n", + "\n", + "print(\"array_view:\")\n", + "print(array_view)\n", + "\n", + "print(\"\\narray_copy:\")\n", + "print(array_copy)\n", + "\n", + "print(\"\\narray_deep_copy:\")\n", + "print(array_deep_copy)" + ] + }, + { + "cell_type": "markdown", + "id": "c40433d0", + "metadata": {}, + "source": [ + "## Sorting Arrays\n" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "id": "92536287", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Sorted a:\n", + "[1 2 3]\n", + "\n", + "Sorted c (axis=0):\n", + "[[[1.5 2. 1. ]\n", + " [4. 5. 6. ]]\n", + "\n", + " [[3. 2. 3. ]\n", + " [4. 5. 6. ]]]\n" + ] + } + ], + "source": [ + "# Sort an array\n", + "a.sort()\n", + "\n", + "# Sort the elements of an array's axis\n", + "c.sort(axis=0)\n", + "\n", + "print(\"Sorted a:\")\n", + "print(a)\n", + "\n", + "print(\"\\nSorted c (axis=0):\")\n", + "print(c)" + ] + }, + { + "cell_type": "markdown", + "id": "8accec0b", + "metadata": {}, + "source": [ + "## Subsetting, Slicing, and Indexing" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "78a7da27", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "element_at_2nd_index:\n", + "3\n", + "\n", + "element_row_1_col_2:\n", + "6.0\n", + "\n", + "sliced_a:\n", + "[1 2]\n", + "\n", + "sliced_b:\n", + "[2. 5.]\n", + "\n", + "sliced_c:\n", + "[[1.5 2. 3. ]]\n", + "\n", + "reversed_a:\n", + "[3 2 1]\n", + "\n", + "a_less_than_2:\n", + "[1]\n", + "\n", + "fancy_indexing_result:\n", + "[4. 2. 6. 1.5]\n", + "\n", + "fancy_indexing_subset:\n", + "[[4. 5. 6. 4. ]\n", + " [1.5 2. 3. 1.5]\n", + " [4. 5. 6. 4. ]\n", + " [1.5 2. 3. 1.5]]\n" + ] + } + ], + "source": [ + "# Subsetting\n", + "element_at_2nd_index = a[2] \n", + "\n", + "# Select the element at row 1, column 2\n", + "element_row_1_col_2 = b[1, 2] \n", + "\n", + "# Slicing\n", + "sliced_a = a[0:2]\n", + "\n", + "# Select items at rows 0 and 1 in column 1\n", + "sliced_b = b[0:2, 1]\n", + "\n", + "# Select all items at row 0\n", + "sliced_c = b[:1] \n", + "\n", + "# Reversed array\n", + "reversed_a = a[::-1] \n", + "\n", + "# Boolean Indexing\n", + "a_less_than_2 = a[a < 2]\n", + "\n", + "# Fancy Indexing\n", + "fancy_indexing_result = b[ \n", + " [1, 0, 1, 0], \n", + " [0, 1, 2, 0]\n", + "]\n", + "fancy_indexing_subset = b[[1, 0, 1, 0]][:, [0, 1, 2, 0]]\n", + "\n", + "print(\"element_at_2nd_index:\")\n", + "print(element_at_2nd_index)\n", + "\n", + "print(\"\\nelement_row_1_col_2:\")\n", + "print(element_row_1_col_2)\n", + "\n", + "print(\"\\nsliced_a:\")\n", + "print(sliced_a)\n", + "\n", + "print(\"\\nsliced_b:\")\n", + "print(sliced_b)\n", + "\n", + "print(\"\\nsliced_c:\")\n", + "print(sliced_c)\n", + "\n", + "print(\"\\nreversed_a:\")\n", + "print(reversed_a)\n", + "\n", + "print(\"\\na_less_than_2:\")\n", + "print(a_less_than_2)\n", + "\n", + "print(\"\\nfancy_indexing_result:\")\n", + "print(fancy_indexing_result)\n", + "\n", + "print(\"\\nfancy_indexing_subset:\")\n", + "print(fancy_indexing_subset)" + ] + }, + { + "cell_type": "markdown", + "id": "f1ee0183", + "metadata": {}, + "source": [ + "## Array Manipulation\n" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "id": "d462e621", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "transposed_b:\n", + "[[1.5 4. ]\n", + " [2. 5. ]\n", + " [3. 6. ]]\n", + "\n", + "transposed_b_T:\n", + "[[1.5 2. 3. ]\n", + " [4. 5. 6. ]]\n", + "\n", + "flattened_h:\n", + "[1 2 3 4 5 6]\n", + "\n", + "reshaped_g:\n", + "[[7]\n", + " [8]\n", + " [9]]\n", + "\n", + "resized_h:\n", + "[[1 2 3 4 5 6]\n", + " [1 2 3 4 5 6]]\n", + "\n", + "appended_array:\n", + "[1 2 3 4 5 6 7 8 9]\n", + "\n", + "inserted_array:\n", + "[3 5 1 2]\n", + "\n", + "deleted_array:\n", + "[3 2]\n", + "\n", + "concatenated_arrays:\n", + "[3 1 2 4 5 6]\n", + "\n", + "vstacked_arrays:\n", + "[[3. 1. 2. ]\n", + " [1.5 2. 3. ]\n", + " [4. 5. 6. ]]\n", + "\n", + "hstacked_arrays:\n", + "[10 11 12 13]\n", + "\n", + "column_stacked_arrays:\n", + "[[3 4]\n", + " [1 5]\n", + " [2 6]]\n", + "\n", + "c_stacked_arrays:\n", + "[[3 4]\n", + " [1 5]\n", + " [2 6]]\n", + "\n", + "hsplit_array:\n", + "[array([3]), array([1]), array([2])]\n", + "\n", + "vsplit_array:\n", + "[array([[3, 1, 2]]), array([[6, 4, 5]])]\n" + ] + } + ], + "source": [ + "# Example values for arrays\n", + "a = np.array([3, 1, 2])\n", + "b = np.array([\n", + " (1.5, 2, 3),\n", + " (4, 5, 6)\n", + "], dtype=float)\n", + "h = np.array([\n", + " [1, 2, 3],\n", + " [4, 5, 6]\n", + "])\n", + "g = np.array([7, 8, 9])\n", + "d = np.array([4, 5, 6])\n", + "e = np.array([10, 11])\n", + "f = np.array([12, 13])\n", + "c = np.array([\n", + " (3, 1, 2),\n", + " (6, 4, 5)\n", + "], dtype=int)\n", + "\n", + "# Transposing Array\n", + "transposed_b = np.transpose(b)\n", + "transposed_b_T = transposed_b.T\n", + "\n", + "# Changing Array Shape\n", + "flattened_h = h.ravel()\n", + "reshaped_g = g.reshape(3, -2)\n", + "\n", + "# Adding/Removing Elements\n", + "resized_h = np.resize(h, (2, 6)) # Using np.resize to avoid the error\n", + "appended_array = np.append(h, g)\n", + "inserted_array = np.insert(a, 1, 5)\n", + "deleted_array = np.delete(a, [1])\n", + "\n", + "# Combining Arrays\n", + "concatenated_arrays = np.concatenate((a, d), axis=0)\n", + "vstacked_arrays = np.vstack((a, b))\n", + "hstacked_arrays = np.hstack((e, f))\n", + "column_stacked_arrays = np.column_stack((a, d))\n", + "c_stacked_arrays = np.c_[a, d]\n", + "\n", + "# Splitting Arrays\n", + "hsplit_array = np.hsplit(a, 3)\n", + "vsplit_array = np.vsplit(c, 2)\n", + "\n", + "print(\"transposed_b:\")\n", + "print(transposed_b)\n", + "\n", + "print(\"\\ntransposed_b_T:\")\n", + "print(transposed_b_T)\n", + "\n", + "print(\"\\nflattened_h:\")\n", + "print(flattened_h)\n", + "\n", + "print(\"\\nreshaped_g:\")\n", + "print(reshaped_g)\n", + "\n", + "print(\"\\nresized_h:\")\n", + "print(resized_h)\n", + "\n", + "print(\"\\nappended_array:\")\n", + "print(appended_array)\n", + "\n", + "print(\"\\ninserted_array:\")\n", + "print(inserted_array)\n", + "\n", + "print(\"\\ndeleted_array:\")\n", + "print(deleted_array)\n", + "\n", + "print(\"\\nconcatenated_arrays:\")\n", + "print(concatenated_arrays)\n", + "\n", + "print(\"\\nvstacked_arrays:\")\n", + "print(vstacked_arrays)\n", + "\n", + "print(\"\\nhstacked_arrays:\")\n", + "print(hstacked_arrays)\n", + "\n", + "print(\"\\ncolumn_stacked_arrays:\")\n", + "print(column_stacked_arrays)\n", + "\n", + "print(\"\\nc_stacked_arrays:\")\n", + "print(c_stacked_arrays)\n", + "\n", + "print(\"\\nhsplit_array:\")\n", + "print(hsplit_array)\n", + "\n", + "print(\"\\nvsplit_array:\")\n", + "print(vsplit_array)\n" + ] + }, + { + "cell_type": "markdown", + "id": "25131bbd", + "metadata": {}, + "source": [ + "## Asking for Help\n" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "id": "c490d3f9", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Data-type of the array's elements.\n", + "\n", + "Parameters\n", + "----------\n", + "None\n", + "\n", + "Returns\n", + "-------\n", + "d : numpy dtype object\n", + "\n", + "See Also\n", + "--------\n", + "numpy.dtype\n", + "\n", + "Examples\n", + "--------\n", + ">>> x\n", + "array([[0, 1],\n", + " [2, 3]])\n", + ">>> x.dtype\n", + "dtype('int32')\n", + ">>> type(x.dtype)\n", + "\n" + ] + } + ], + "source": [ + "# Get information about a NumPy function or object\n", + "np.info(np.ndarray.dtype)" + ] + }, + { + "cell_type": "markdown", + "id": "41428deb", + "metadata": {}, + "source": [ + "## Saving & Loading \n", + "\n", + "**On Disk**\n", + "\n", + "``` python\n", + "# Save a NumPy array to a file\n", + "a = np.array([1, 2, 3])\n", + "np.save('my_array', a)\n", + "\n", + "# Save multiple NumPy arrays to a compressed file\n", + "b = np.array([\n", + " (1.5, 2, 3), \n", + " (4, 5, 6)\n", + " ], dtype=float)\n", + "np.savez('array.npz', a=a, b=b)\n", + "\n", + "# Load a NumPy array from a file\n", + "loaded_array = np.load('my_array.npy')\n", + "```\n", + "\n", + "**Text Files**\n", + "\n", + "``` python\n", + "# Load data from a text file\n", + "loaded_txt = np.loadtxt(\"myfile.txt\")\n", + "\n", + "# Load data from a CSV file with specified delimiter\n", + "loaded_csv = np.genfromtxt(\n", + " \"my_file.csv\",\n", + " delimiter=',')\n", + "\n", + "# Save a NumPy array to a text file\n", + "a = np.array([1, 2, 3])\n", + "np.savetxt(\n", + " \"myarray.txt\", \n", + " a, \n", + " delimiter=\" \")\n", + "```" + ] + } + ], + "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.8.10" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/docs/examples/numpy/st_numpy.ipynb b/docs/examples/numpy/st_numpy.ipynb new file mode 100644 index 0000000..97adb69 --- /dev/null +++ b/docs/examples/numpy/st_numpy.ipynb @@ -0,0 +1,499 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "3acac77d", + "metadata": {}, + "source": [ + "\"Open\n", + "\n", + " \n", + "# Numpy Cheat Sheet" + ] + }, + { + "cell_type": "markdown", + "id": "3a0dbe5e", + "metadata": {}, + "source": [ + "
\n", + " \n", + "
\n", + " Note
\n", + " If you want to run this example on Google Colab, follow these detailed steps below:\n", + "
\n", + "
\n", + "\n", + "1. Install the necessary libraries:\n", + "\n", + " ```python\n", + " !pip install streamlit\n", + " ```\n", + "\n", + "2. Create your app by executing the following cell:\n", + "\n", + " ```python\n", + " %%writefile app.py\n", + " import streamlit as st\n", + " import pandas as pd\n", + " # ... (rest of your code)\n", + " ```\n", + "\n", + "3. Start your app by running this cell:\n", + "\n", + " ```python\n", + " !streamlit run app.py & npx localtunnel --port 8501\n", + " ```\n", + "\n", + " ![Example Image](https://raw.githubusercontent.com/fralfaro/DS-Cheat-Sheets/main/docs/images/img_01.png)\n", + "\n", + " * After completing the above steps, click \"**your url is: ...**\" (for example, *https://major-weeks-clap.loca.lt*). \n", + " * In the new window, enter the numbers in the \"**External URL: ...**\" section (for example, **35.230.186.60**). \n", + " * Finally, click **Click to Submit**\n", + "\n", + " ![Example Image](https://raw.githubusercontent.com/fralfaro/DS-Cheat-Sheets/main/docs/images/img_02.png)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "1e7b4f6a", + "metadata": {}, + "outputs": [], + "source": [ + "!pip install streamlit" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "c5c782af", + "metadata": {}, + "outputs": [], + "source": [ + "%%writefile app.py\n", + "import streamlit as st\n", + "from pathlib import Path\n", + "import base64\n", + "import requests\n", + "\n", + "\n", + "# Initial page config\n", + "st.set_page_config(\n", + " page_title='NumPy Cheat Sheet',\n", + " layout=\"wide\",\n", + " initial_sidebar_state=\"expanded\",\n", + ")\n", + "\n", + "def main():\n", + " \"\"\"\n", + " Main function to set up the Streamlit app layout.\n", + " \"\"\"\n", + " cs_sidebar()\n", + " cs_body()\n", + " return None\n", + "\n", + "# Define img_to_bytes() function\n", + "def img_to_bytes(img_url):\n", + " response = requests.get(img_url)\n", + " img_bytes = response.content\n", + " encoded = base64.b64encode(img_bytes).decode()\n", + " return encoded\n", + "\n", + "# Define the cs_sidebar() function\n", + "def cs_sidebar():\n", + " \"\"\"\n", + " Populate the sidebar with various content sections related to NumPy.\n", + " \"\"\"\n", + " st.sidebar.markdown(\n", + " '''[](https://streamlit.io/)'''.format(\n", + " img_to_bytes(\"https://raw.githubusercontent.com/fralfaro/DS-Cheat-Sheets/main/docs/examples/numpy/numpy2.png\")), unsafe_allow_html=True)\n", + "\n", + " st.sidebar.header('NumPy Cheat Sheet')\n", + " st.sidebar.markdown('''\n", + "[NumPy](https://numpy.org/) is the core library for scientific computing in\n", + "Python. It provides a high-performance multidimensional array\n", + "object, and tools for working with these arrays.\n", + " ''', unsafe_allow_html=True)\n", + "\n", + " # NumPy installation and import\n", + " st.sidebar.markdown('__Install and import NumPy__')\n", + " st.sidebar.code('$ pip install numpy')\n", + " st.sidebar.code('''\n", + "# Import NumPy convention\n", + ">>> import numpy as np\n", + "''')\n", + "\n", + " # NumPy array creation\n", + " st.sidebar.markdown('__NumPy Arrays__')\n", + " st.sidebar.markdown(\n", + " '''[](https://streamlit.io/)'''.format(\n", + " img_to_bytes(\"https://raw.githubusercontent.com/fralfaro/DS-Cheat-Sheets/main/docs/examples/numpy/np_02.png\")), unsafe_allow_html=True)\n", + "\n", + " st.sidebar.code('''\n", + " # Create a 1D array\n", + " a = np.array([1, 2, 3])\n", + "\n", + " # Create a 2D array with specified dtype\n", + " b = np.array([\n", + " (1.5, 2, 3),\n", + " (4, 5, 6)\n", + " ], dtype=float)\n", + "\n", + " # Create a 3D array with specified dtype\n", + " c = np.array([\n", + " [(1.5, 2, 3), (4, 5, 6)], \n", + " [(3, 2, 1), (4, 5, 6)]\n", + " ], dtype=float)\n", + " ''')\n", + " return None\n", + "\n", + "\n", + "# Define the cs_body() function\n", + "def cs_body():\n", + " \"\"\"\n", + " Create content sections for the main body of the Streamlit cheat sheet with NumPy examples.\n", + " \"\"\"\n", + " col1, col2, col3 = st.columns(3) # Create columns for layout\n", + "\n", + " #######################################\n", + " # COLUMN 1\n", + " #######################################\n", + "\n", + " # Initial Placeholders\n", + " col1.subheader('Initial Placeholders')\n", + " col1.code('''\n", + " # Create an array of zeros\n", + " zeros_arr = np.zeros((3, 4))\n", + "\n", + " # Create an array of ones\n", + " ones_arr = np.ones((2, 3, 4))\n", + "\n", + " # Create an array of evenly spaced values (step value)\n", + " d = np.arange(10, 25, 5)\n", + "\n", + " # Create an array of evenly spaced values (number of samples)\n", + " e = np.linspace(0, 2, 9)\n", + "\n", + " # Create a constant array\n", + " f = np.full((2, 2), 7)\n", + "\n", + " # Create a 2X2 identity matrix\n", + " g = np.eye(2)\n", + "\n", + " # Create an array with random values\n", + " random_arr = np.random.random((2, 2))\n", + "\n", + " # Create an empty array\n", + " empty_arr = np.empty((3, 2))\n", + " ''')\n", + "\n", + " # Saving & Loading On Disk\n", + " col1.subheader('Saving & Loading On Disk')\n", + " col1.code('''\n", + " # Save a NumPy array to a file\n", + " a = np.array([1, 2, 3])\n", + " np.save('my_array', a)\n", + "\n", + " # Save multiple NumPy arrays to a compressed file\n", + " b = np.array([\n", + " (1.5, 2, 3), \n", + " (4, 5, 6)\n", + " ], dtype=float)\n", + " np.savez('array.npz', a, b)\n", + "\n", + " # Load a NumPy array from a file\n", + " loaded_array = np.load('my_array.npy')\n", + " ''')\n", + "\n", + " # Saving & Loading Text Files\n", + " col1.subheader('Saving & Loading Text Files')\n", + " col1.code('''\n", + " # Load data from a text file\n", + " loaded_txt = np.loadtxt(\"myfile.txt\")\n", + "\n", + " # Load data from a CSV file with specified delimiter\n", + " loaded_csv = np.genfromtxt(\n", + " \"my_file.csv\",\n", + " delimiter=',')\n", + "\n", + " # Save a NumPy array to a text file\n", + " a = np.array([1, 2, 3])\n", + " np.savetxt(\n", + " \"myarray.txt\", \n", + " a, \n", + " delimiter=\" \")\n", + " ''')\n", + "\n", + " # NumPy data types\n", + " col1.subheader('NumPy Data Types')\n", + " col1.code('''\n", + " # Signed 64-bit integer types\n", + " int64_type = np.int64\n", + "\n", + " # Standard double-precision floating point\n", + " float32_type = np.float32\n", + "\n", + " # Complex numbers represented by 128 floats\n", + " complex_type = np.complex128\n", + "\n", + " # Boolean type storing TRUE and FALSE values\n", + " bool_type = np.bool_\n", + "\n", + " # Python object type\n", + " object_type = np.object_\n", + "\n", + " # Fixed-length string type\n", + " string_type = np.string_\n", + "\n", + " # Fixed-length unicode type\n", + " unicode_type = np.unicode_\n", + " ''')\n", + "\n", + "\n", + "\n", + " # Asking for help\n", + " col1.subheader('Asking for Help')\n", + " col1.code('''\n", + " # Get information about a NumPy function or object\n", + " np.info(np.ndarray.dtype)\n", + " ''')\n", + "\n", + " #######################################\n", + " # COLUMN 2\n", + " #######################################\n", + "\n", + " # Inspecting array properties\n", + " col2.subheader('Inspecting Array Properties')\n", + " col2.code('''\n", + " # Array dimensions\n", + " a_shape = a.shape\n", + "\n", + " # Length of array\n", + " a_length = len(a)\n", + "\n", + " # Number of array dimensions\n", + " b_ndim = b.ndim\n", + "\n", + " # Number of array elements\n", + " e_size = e.size\n", + "\n", + " # Data type of array elements\n", + " b_dtype = b.dtype\n", + "\n", + " # Name of data type\n", + " b_dtype_name = b.dtype.name\n", + "\n", + " # Convert an array to a different type\n", + " b_as_int = b.astype(int)\n", + " ''')\n", + "\n", + "\n", + "\n", + " # Arithmetic operations\n", + " col2.subheader('Arithmetic Operations')\n", + " col2.code('''\n", + " # Subtraction\n", + " subtraction_result = a - b\n", + " subtraction_np = np.subtract(a, b)\n", + "\n", + " # Addition\n", + " addition_result = b + a\n", + " addition_np = np.add(b, a)\n", + "\n", + " # Division\n", + " division_result = a / b\n", + " division_np = np.divide(a, b)\n", + "\n", + " # Multiplication\n", + " multiplication_result = a * b\n", + " multiplication_np = np.multiply(a, b)\n", + "\n", + " # Exponentiation\n", + " exponentiation_result = np.exp(b)\n", + "\n", + " # Square root\n", + " sqrt_result = np.sqrt(b)\n", + "\n", + " # Sine of an array\n", + " sin_result = np.sin(a)\n", + "\n", + " # Element-wise cosine\n", + " cos_result = np.cos(b)\n", + "\n", + " # Element-wise natural logarithm\n", + " log_result = np.log(a)\n", + "\n", + " # Dot product\n", + " dot_product_result = e.dot(f)\n", + " ''')\n", + "\n", + "\n", + " # Aggregate functions\n", + " col2.subheader('Aggregate Functions')\n", + " col2.code('''\n", + " # Array-wise sum\n", + " array_sum = a.sum()\n", + "\n", + " # Array-wise minimum value\n", + " array_min = a.min()\n", + "\n", + " # Maximum value of an array row\n", + " row_max = b.max(axis=0)\n", + "\n", + " # Cumulative sum of the elements\n", + " cumulative_sum = b.cumsum(axis=1)\n", + "\n", + " # Mean\n", + " array_mean = a.mean()\n", + "\n", + " # Median\n", + " array_median = b.median()\n", + "\n", + " # Correlation coefficient\n", + " corr_coefficient = a.corrcoef()\n", + "\n", + " # Standard deviation\n", + " std_deviation = np.std(b)\n", + " ''')\n", + "\n", + " #######################################\n", + " # COLUMN 3\n", + " #######################################\n", + "\n", + " # Comparison operations\n", + " col3.subheader('Comparison Operations')\n", + " col3.code('''\n", + " # Element-wise comparison for equality\n", + " equality_comparison = a == b\n", + "\n", + " # Element-wise comparison for less than\n", + " less_than_comparison = a < 2\n", + "\n", + " # Array-wise comparison using np.array_equal\n", + " np_equal = np.array_equal(a, b)\n", + " ''')\n", + "\n", + " # Copying arrays\n", + " col3.subheader('Copying Arrays')\n", + " col3.code('''\n", + " # Create a view of the array with the same data\n", + " array_view = a.view()\n", + "\n", + " # Create a copy of the array\n", + " array_copy = np.copy(a)\n", + "\n", + " # Create a deep copy of the array\n", + " array_deep_copy = a.copy()\n", + " ''')\n", + "\n", + " # Sorting arrays\n", + " col3.subheader('Sorting Arrays')\n", + " col3.code('''\n", + " # Sort an array\n", + " a.sort()\n", + "\n", + " # Sort the elements of an array's axis\n", + " c.sort(axis=0)\n", + " ''')\n", + "\n", + "\n", + " # Subsetting, Slicing, and Indexing\n", + " col3.subheader('Subsetting, Slicing, and Indexing')\n", + " col3.code('''\n", + " # Subsetting\n", + " element_at_2nd_index = a[2] \n", + "\n", + " # Select the element at row 1, column 2\n", + " element_row_1_col_2 = b[1, 2] \n", + "\n", + " # Slicing\n", + " sliced_a = a[0:2]\n", + "\n", + " # Select items at rows 0 and 1 in column 1\n", + " sliced_b = b[0:2, 1]\n", + "\n", + " # Select all items at row 0\n", + " sliced_c = b[:1] \n", + "\n", + " # Reversed array\n", + " reversed_a = a[::-1] \n", + "\n", + " # Boolean Indexing\n", + " a_less_than_2 = a[a < 2]\n", + "\n", + " # Fancy Indexing\n", + " fancy_indexing_result = b[ \n", + " [1, 0, 1, 0], \n", + " [0, 1, 2, 0]\n", + " ] # array([ 4. , 2. , 6. , 1.5])\n", + " fancy_indexing_subset = b[[1, 0, 1, 0]][:, [0, 1, 2, 0]] \n", + " ''')\n", + "\n", + " # Array Manipulation\n", + " col3.subheader('Array Manipulation')\n", + " col3.code('''\n", + " # Transposing Array\n", + " transposed_b = np.transpose(b)\n", + " transposed_b_T = transposed_b.T\n", + "\n", + " # Changing Array Shape\n", + " flattened_h = h.ravel()\n", + " reshaped_g = g.reshape(3, -2)\n", + "\n", + " # Adding/Removing Elements\n", + " resized_h = np.resize(h, (2, 6)) # Using np.resize to avoid the error\n", + " appended_array = np.append(h, g)\n", + " inserted_array = np.insert(a, 1, 5)\n", + " deleted_array = np.delete(a, [1])\n", + "\n", + " # Combining Arrays\n", + " concatenated_arrays = np.concatenate((a, d), axis=0)\n", + " vstacked_arrays = np.vstack((a, b))\n", + " hstacked_arrays = np.hstack((e, f))\n", + " column_stacked_arrays = np.column_stack((a, d))\n", + " c_stacked_arrays = np.c_[a, d]\n", + "\n", + " # Splitting Arrays\n", + " hsplit_array = np.hsplit(a, 3)\n", + " vsplit_array = np.vsplit(c, 2)\n", + " ''')\n", + "\n", + "# Run the main function if the script is executed directly\n", + "if __name__ == '__main__':\n", + " main()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "6224f2fb", + "metadata": {}, + "outputs": [], + "source": [ + "!streamlit run app.py & npx localtunnel --port 8501" + ] + } + ], + "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.8.10" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/docs/examples/pandas/app.py b/docs/examples/pandas/app.py new file mode 100644 index 0000000..f0f9e6b --- /dev/null +++ b/docs/examples/pandas/app.py @@ -0,0 +1,330 @@ +import streamlit as st +from pathlib import Path +import base64 +import requests + +# Initial page config +st.set_page_config( + page_title='Pandas Cheat Sheet', + layout="wide", + initial_sidebar_state="expanded", +) + +def main(): + """ + Main function to set up the Streamlit app layout. + """ + cs_sidebar() + cs_body() + return None + +# Define img_to_bytes() function +def img_to_bytes(img_url): + response = requests.get(img_url) + img_bytes = response.content + encoded = base64.b64encode(img_bytes).decode() + return encoded + + +# Define the cs_sidebar() function +def cs_sidebar(): + """ + Populate the sidebar with various content sections related to Pandas. + """ + st.sidebar.markdown( + '''[](https://streamlit.io/)'''.format( + img_to_bytes("https://raw.githubusercontent.com/fralfaro/DS-Cheat-Sheets/main/docs/examples/pandas/pandas.png")), unsafe_allow_html=True) + + st.sidebar.header('Pandas Cheat Sheet') + st.sidebar.markdown(''' +[Pandas](https://pandas.pydata.org/) is built on NumPy and provides easy-to-use +data structures and data analysis tools for the Python +programming language. + ''', unsafe_allow_html=True) + + # Pandas installation and import + st.sidebar.markdown('__Install and import Pandas__') + st.sidebar.code('$ pip install pandas') + st.sidebar.code(''' +# Import Pandas convention +>>> import pandas as pd +''') + + # Pandas array creation + st.sidebar.subheader('Pandas Data Structures') + st.sidebar.markdown('__Series__') + st.sidebar.markdown( + '''[](https://streamlit.io/)'''.format( + img_to_bytes("https://raw.githubusercontent.com/fralfaro/DS-Cheat-Sheets/main/docs/examples/pandas/serie.png")), unsafe_allow_html=True) + + st.sidebar.markdown(''' + A **one-dimensional** labeled array a capable of holding any data type. + ''', unsafe_allow_html=True) + + st.sidebar.code(''' + # Create a pandas Series + s = pd.Series( + [3, -5, 7, 4], + index=['a', 'b', 'c', 'd'] + ) + ''') + + st.sidebar.markdown('__DataFrame__') + st.sidebar.markdown(''' + A **two-dimensional** labeled data structure with columns of potentially different types. + ''', unsafe_allow_html=True) + st.sidebar.markdown( + '''[](https://streamlit.io/)'''.format( + img_to_bytes("https://raw.githubusercontent.com/fralfaro/DS-Cheat-Sheets/main/docs/examples/pandas/df.png")), unsafe_allow_html=True) + + st.sidebar.code(''' + # Create a pandas DataFrame + data = { + 'Country': ['Belgium', 'India', 'Brazil'], + 'Capital': ['Brussels', 'New Delhi', 'Brasília'], + 'Population': [11190846, 1303171035, 207847528] + } + df = pd.DataFrame( + data, + columns=['Country', 'Capital', 'Population'] + ) + ''') + + return None + + +# Define the cs_body() function +def cs_body(): + """ + Create content sections for the main body of the Streamlit cheat sheet with Pandas examples. + """ + col1, col2, col3 = st.columns(3) # Create columns for layout + + ####################################### + # COLUMN 1 + ####################################### + + # Read and Write to CSV + col1.subheader('Read and Write to CSV') + col1.code(''' + # Read from CSV + df_read = pd.read_csv( + 'file.csv', + header=None, + nrows=5 + ) + + # Write to CSV + df.to_csv('myDataFrame.csv') + ''') + + # Read and Write to Excel + col1.subheader('Read and Write to Excel') + col1.code(''' + # Read from Excel + df_read_excel = pd.read_excel('file.xlsx') + + # Write to Excel + df.to_excel( + 'dir/myDataFrame.xlsx', + sheet_name='Sheet1' + ) + + # Read multiple sheets from the same file + xlsx = pd.ExcelFile('file.xls') + df_from_sheet1 = pd.read_excel(xlsx, 'Sheet1') + ''') + + # Read and Write to SQL Query or Database Table + col1.subheader('Read and Write to SQL Query or Database Table') + col1.code(''' + from sqlalchemy import create_engine + engine = create_engine('sqlite:///:memory:') + + # Read from SQL Query + pd.read_sql("SELECT * FROM my_table;", engine) + + # Read from Database Table + pd.read_sql_table('my_table', engine) + + # Read from SQL Query using read_sql_query() + pd.read_sql_query("SELECT * FROM my_table;", engine) + + # Write DataFrame to SQL Table + pd.to_sql('myDf', engine) + ''') + + + # Getting Elements from Series and DataFrame + col1.subheader('Getting Elements') + col1.code(''' + # Get one element from a Series + s['b'] + # Output: -5 + + # Get subset of a DataFrame + df[1:] + # Output: + # Country Capital Population + # 1 India New Delhi 1303171035 + # 2 Brazil Brasília 207847528 + ''') + + # Asking For Help + col1.subheader('Asking For Help') + col1.code(''' + # Display help for a function or object + help(pd.Series.loc) + ''') + + ####################################### + # COLUMN 2 + ####################################### + + # Selecting, Boolean Indexing & Setting + col2.subheader('Selecting, Boolean Indexing & Setting') + col2.code(''' + # Select single value by row & 'Belgium' column + df.iloc[[0],[0]] + # Output: 'Belgium' + + # Select single value by row & 'Belgium' column labels + df.loc[[0], ['Country']] + # Output: 'Belgium' + + # Select single row of subset of rows + df.loc[2] + # Output: + # Country Brazil + # Capital Brasília + # Population 207847528 + + # Select a single column of subset of columns + df.loc[:,'Capital'] + # Output: + # 0 Brussels + # 1 New Delhi + # 2 Brasília + + # Boolean indexing - Series s where value is not > 1 + s[~(s > 1)] + + # Boolean indexing - s where value is <-1 or >2 + s[(s < -1) | (s > 2)] + + # Use filter to adjust DataFrame + df[df['Population'] > 1200000000] + + # Setting index a of Series s to 6 + s['a'] = 6 + ''') + + # Dropping + col2.subheader('Dropping') + col2.code(''' + # Drop values from rows (axis=0) + s.drop(['a', 'c']) + + # Drop values from columns (axis=1) + df.drop('Country', axis=1) + ''') + + # Sort & Rank + col2.subheader('Sort & Rank') + col2.code(''' + # Sort by labels along an axis + df.sort_index() + + # Sort by the values along an axis + df.sort_values(by='Country') + + # Assign ranks to entries + df.rank() + ''') + + # Applying Functions + col2.subheader('Applying Functions') + col2.code(''' + # Define a function + f = lambda x: x*2 + + # Apply function to DataFrame + df.apply(f) + + # Apply function element-wise + df.applymap(f) + ''') + + ####################################### + # COLUMN 3 + ####################################### + + # Basic Information + col3.subheader('Basic Information') + col3.code(''' + # Get the shape (rows, columns) + df.shape + + # Describe index + df.index + + # Describe DataFrame columns + df.columns + + # Info on DataFrame + df.info() + + # Number of non-NA values + df.count() + ''') + + # Summary + col3.subheader('Summary') + col3.code(''' + # Sum of values + df[col].sum() + + # Cumulative sum of values + df[col].cumsum() + + # Minimum/maximum values + df[col].min() + df[col].max() + + # Index of minimum/maximum values + df[col].idxmin() + df[col].idxmax() + + # Summary statistics + df[col].describe() + + # Mean of values + df[col].mean() + + # Median of values + df[col].median() + ''') + + # Internal Data Alignment + col3.subheader('Internal Data Alignment') + col3.code(''' + # Create Series with different indices + s3 = pd.Series([7, -2, 3], index=['a', 'c', 'd']) + + # Add two Series with different indices + result = s + s3 + ''') + + # Arithmetic Operations with Fill Methods + col3.subheader('Arithmetic Operations with Fill Methods') + col3.code(''' + # Perform arithmetic operations with fill methods + result_add = s.add(s3, fill_value=0) + result_sub = s.sub(s3, fill_value=2) + result_div = s.div(s3, fill_value=4) + result_mul = s.mul(s3, fill_value=3) + ''') + +# Run the main function if the script is executed directly +if __name__ == '__main__': + main() diff --git a/docs/examples/pandas/pandas.ipynb b/docs/examples/pandas/pandas.ipynb new file mode 100644 index 0000000..05621c4 --- /dev/null +++ b/docs/examples/pandas/pandas.ipynb @@ -0,0 +1,1834 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "ae90d978", + "metadata": {}, + "source": [ + "\"Open\n", + "\n", + "\n", + "# Pandas Cheat Sheet\n", + "\n", + "\"numpy\n", + "\n", + "[Pandas](https://pandas.pydata.org/) is built on NumPy and provides easy-to-use\n", + "data structures and data analysis tools for the Python\n", + "programming language.\n", + "\n", + "## Install and import Pandas\n", + "\n", + "`\n", + "$ pip install pandas\n", + "`\n" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "805a07df", + "metadata": {}, + "outputs": [], + "source": [ + "# Import Pandas convention\n", + "import pandas as pd" + ] + }, + { + "cell_type": "markdown", + "id": "75775834", + "metadata": {}, + "source": [ + "## Pandas Data Structures\n", + "\n", + "**Series**\n", + "\n", + "\"numpy\n", + "\n", + "A **one-dimensional** labeled array a capable of holding any data type." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "fbef430f", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "s:\n" + ] + }, + { + "data": { + "text/plain": [ + "a 3\n", + "b -5\n", + "c 7\n", + "d 4\n", + "dtype: int64" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Create a pandas Series\n", + "s = pd.Series(\n", + " [3, -5, 7, 4],\n", + " index=['a', 'b', 'c', 'd']\n", + ")\n", + "\n", + "# Print the pandas Series\n", + "print(\"s:\")\n", + "s" + ] + }, + { + "cell_type": "markdown", + "id": "feba27ca", + "metadata": {}, + "source": [ + "**DataFrame**\n", + "\n", + "\"numpy\n", + "\n", + "**two-dimensional** labeled data structure with columns of potentially different types." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "7bcbaad2", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "df:\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
CountryCapitalPopulation
0BelgiumBrussels11190846
1IndiaNew Delhi1303171035
2BrazilBrasília207847528
\n", + "
" + ], + "text/plain": [ + " Country Capital Population\n", + "0 Belgium Brussels 11190846\n", + "1 India New Delhi 1303171035\n", + "2 Brazil Brasília 207847528" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Create a pandas DataFrame\n", + "data = {\n", + " 'Country': ['Belgium', 'India', 'Brazil'],\n", + " 'Capital': ['Brussels', 'New Delhi', 'Brasília'],\n", + " 'Population': [11190846, 1303171035, 207847528]\n", + "}\n", + "df = pd.DataFrame(\n", + " data,\n", + " columns=['Country', 'Capital', 'Population']\n", + ")\n", + "\n", + "# Print the DataFrame 'df'\n", + "print(\"\\ndf:\")\n", + "df" + ] + }, + { + "cell_type": "markdown", + "id": "4f0980ce", + "metadata": {}, + "source": [ + "## Getting Elements\n" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "e9b66371", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "-5" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Get one element from a Series\n", + "s['b']" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "ab5893b3", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
CountryCapitalPopulation
1IndiaNew Delhi1303171035
2BrazilBrasília207847528
\n", + "
" + ], + "text/plain": [ + " Country Capital Population\n", + "1 India New Delhi 1303171035\n", + "2 Brazil Brasília 207847528" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Get subset of a DataFrame\n", + "df[1:]" + ] + }, + { + "cell_type": "markdown", + "id": "383c41b4", + "metadata": {}, + "source": [ + "## Selecting, Boolean Indexing & Setting\n" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "19e43639", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
Country
0Belgium
\n", + "
" + ], + "text/plain": [ + " Country\n", + "0 Belgium" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Select single value by row & 'Belgium' column\n", + "df.iloc[[0],[0]]\n", + "# Output: 'Belgium'" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "7a1c5d55", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
Country
0Belgium
\n", + "
" + ], + "text/plain": [ + " Country\n", + "0 Belgium" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Select single value by row & 'Belgium' column labels\n", + "df.loc[[0], ['Country']]\n", + "# Output: 'Belgium'" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "e1b983e8", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Country Brazil\n", + "Capital Brasília\n", + "Population 207847528\n", + "Name: 2, dtype: object" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Select single row of subset of rows\n", + "df.loc[2]\n", + "# Output:\n", + "# Country Brazil\n", + "# Capital Brasília\n", + "# Population 207847528" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "cab4fc1e", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0 Brussels\n", + "1 New Delhi\n", + "2 Brasília\n", + "Name: Capital, dtype: object" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Select a single column of subset of columns\n", + "df.loc[:,'Capital']\n", + "# Output:\n", + "# 0 Brussels\n", + "# 1 New Delhi\n", + "# 2 Brasília" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "id": "894bd29b", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "b -5\n", + "dtype: int64" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Boolean indexing - Series s where value is not > 1\n", + "s[~(s > 1)]" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "137fc348", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "a 3\n", + "b -5\n", + "c 7\n", + "d 4\n", + "dtype: int64" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Boolean indexing - s where value is <-1 or >2\n", + "s[(s < -1) | (s > 2)]" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "id": "75baf5fe", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
CountryCapitalPopulation
1IndiaNew Delhi1303171035
\n", + "
" + ], + "text/plain": [ + " Country Capital Population\n", + "1 India New Delhi 1303171035" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Use filter to adjust DataFrame\n", + "df[df['Population'] > 1200000000]" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "id": "6e02eea4", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "a 6\n", + "b -5\n", + "c 7\n", + "d 4\n", + "dtype: int64" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Setting index a of Series s to 6\n", + "s['a'] = 6\n", + "s" + ] + }, + { + "cell_type": "markdown", + "id": "bfee4693", + "metadata": {}, + "source": [ + "## Dropping\n" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "id": "62c2d966", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "b -5\n", + "d 4\n", + "dtype: int64" + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Drop values from rows (axis=0)\n", + "s.drop(['a', 'c'])" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "id": "4a8f5162", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
CapitalPopulation
0Brussels11190846
1New Delhi1303171035
2Brasília207847528
\n", + "
" + ], + "text/plain": [ + " Capital Population\n", + "0 Brussels 11190846\n", + "1 New Delhi 1303171035\n", + "2 Brasília 207847528" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Drop values from columns (axis=1)\n", + "df.drop('Country', axis=1)" + ] + }, + { + "cell_type": "markdown", + "id": "9c8c241f", + "metadata": {}, + "source": [ + "## Sort & Rank\n" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "id": "920604d0", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
CountryCapitalPopulation
0BelgiumBrussels11190846
1IndiaNew Delhi1303171035
2BrazilBrasília207847528
\n", + "
" + ], + "text/plain": [ + " Country Capital Population\n", + "0 Belgium Brussels 11190846\n", + "1 India New Delhi 1303171035\n", + "2 Brazil Brasília 207847528" + ] + }, + "execution_count": 16, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Sort by labels along an axis\n", + "df.sort_index()" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "id": "555e9a3e", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
CountryCapitalPopulation
0BelgiumBrussels11190846
2BrazilBrasília207847528
1IndiaNew Delhi1303171035
\n", + "
" + ], + "text/plain": [ + " Country Capital Population\n", + "0 Belgium Brussels 11190846\n", + "2 Brazil Brasília 207847528\n", + "1 India New Delhi 1303171035" + ] + }, + "execution_count": 17, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Sort by the values along an axis\n", + "df.sort_values(by='Country')" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "id": "555d69ea", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
CountryCapitalPopulation
01.02.01.0
13.03.03.0
22.01.02.0
\n", + "
" + ], + "text/plain": [ + " Country Capital Population\n", + "0 1.0 2.0 1.0\n", + "1 3.0 3.0 3.0\n", + "2 2.0 1.0 2.0" + ] + }, + "execution_count": 18, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Assign ranks to entries\n", + "df.rank()" + ] + }, + { + "cell_type": "markdown", + "id": "f469a195", + "metadata": {}, + "source": [ + "## Applying Functions\n" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "id": "e971306a", + "metadata": {}, + "outputs": [], + "source": [ + "# Define a function\n", + "f = lambda x: x*2" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "id": "698dac12", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
CountryCapitalPopulation
0BelgiumBelgiumBrusselsBrussels22381692
1IndiaIndiaNew DelhiNew Delhi2606342070
2BrazilBrazilBrasíliaBrasília415695056
\n", + "
" + ], + "text/plain": [ + " Country Capital Population\n", + "0 BelgiumBelgium BrusselsBrussels 22381692\n", + "1 IndiaIndia New DelhiNew Delhi 2606342070\n", + "2 BrazilBrazil BrasíliaBrasília 415695056" + ] + }, + "execution_count": 20, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Apply function to DataFrame\n", + "df.apply(f)" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "id": "3a6559b8", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
CountryCapitalPopulation
0BelgiumBelgiumBrusselsBrussels22381692
1IndiaIndiaNew DelhiNew Delhi2606342070
2BrazilBrazilBrasíliaBrasília415695056
\n", + "
" + ], + "text/plain": [ + " Country Capital Population\n", + "0 BelgiumBelgium BrusselsBrussels 22381692\n", + "1 IndiaIndia New DelhiNew Delhi 2606342070\n", + "2 BrazilBrazil BrasíliaBrasília 415695056" + ] + }, + "execution_count": 21, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Apply function element-wise\n", + "df.applymap(f)" + ] + }, + { + "cell_type": "markdown", + "id": "19c0ad57", + "metadata": {}, + "source": [ + "## Basic Information\n" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "id": "5028d138", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(3, 3)" + ] + }, + "execution_count": 22, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Get the shape (rows, columns)\n", + "df.shape" + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "id": "dab599a3", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "RangeIndex(start=0, stop=3, step=1)" + ] + }, + "execution_count": 23, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Describe index\n", + "df.index" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "id": "96da4563", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Index(['Country', 'Capital', 'Population'], dtype='object')" + ] + }, + "execution_count": 24, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Describe DataFrame columns\n", + "df.columns" + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "id": "695b930a", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "RangeIndex: 3 entries, 0 to 2\n", + "Data columns (total 3 columns):\n", + " # Column Non-Null Count Dtype \n", + "--- ------ -------------- ----- \n", + " 0 Country 3 non-null object\n", + " 1 Capital 3 non-null object\n", + " 2 Population 3 non-null int64 \n", + "dtypes: int64(1), object(2)\n", + "memory usage: 200.0+ bytes\n" + ] + } + ], + "source": [ + "# Info on DataFrame\n", + "df.info()" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "id": "be231fa8", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Country 3\n", + "Capital 3\n", + "Population 3\n", + "dtype: int64" + ] + }, + "execution_count": 26, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Number of non-NA values\n", + "df.count()" + ] + }, + { + "cell_type": "markdown", + "id": "5e534cba", + "metadata": {}, + "source": [ + "## Summary" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "id": "5a8429aa", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Example DataFrame:\n", + " Country Capital Population\n", + "0 Belgium Brussels 11190846\n", + "1 India New Delhi 1303171035\n", + "2 Brazil Brasília 207847528\n", + "\n", + "Sum of values:\n", + "1522209409\n", + "\n", + "Cumulative sum of values:\n", + "0 11190846\n", + "1 1314361881\n", + "2 1522209409\n", + "Name: Population, dtype: int64\n", + "\n", + "Minimum values:\n", + "11190846\n", + "\n", + "Maximum values:\n", + "1303171035\n", + "\n", + "Index of minimum values:\n", + "0\n", + "\n", + "Index of maximum values:\n", + "1\n", + "\n", + "Summary statistics:\n", + "count 3.000000e+00\n", + "mean 5.074031e+08\n", + "std 6.961346e+08\n", + "min 1.119085e+07\n", + "25% 1.095192e+08\n", + "50% 2.078475e+08\n", + "75% 7.555093e+08\n", + "max 1.303171e+09\n", + "Name: Population, dtype: float64\n", + "\n", + "Mean values:\n", + "507403136.3333333\n", + "\n", + "Median values:\n", + "207847528.0\n" + ] + } + ], + "source": [ + "# Sum of values\n", + "sum_values = df['Population'].sum()\n", + "\n", + "# Cumulative sum of values\n", + "cumulative_sum_values = df['Population'].cumsum()\n", + "\n", + "# Minimum/maximum values\n", + "min_values = df['Population'].min()\n", + "max_values = df['Population'].max()\n", + "\n", + "# Index of minimum/maximum values\n", + "idx_min_values = df['Population'].idxmin()\n", + "idx_max_values = df['Population'].idxmax()\n", + "\n", + "# Summary statistics\n", + "summary_stats = df['Population'].describe()\n", + "\n", + "# Mean of values\n", + "mean_values = df['Population'].mean()\n", + "\n", + "# Median of values\n", + "median_values = df['Population'].median()\n", + "\n", + "print(\"Example DataFrame:\")\n", + "print(df)\n", + "\n", + "print(\"\\nSum of values:\")\n", + "print(sum_values)\n", + "\n", + "print(\"\\nCumulative sum of values:\")\n", + "print(cumulative_sum_values)\n", + "\n", + "print(\"\\nMinimum values:\")\n", + "print(min_values)\n", + "\n", + "print(\"\\nMaximum values:\")\n", + "print(max_values)\n", + "\n", + "print(\"\\nIndex of minimum values:\")\n", + "print(idx_min_values)\n", + "\n", + "print(\"\\nIndex of maximum values:\")\n", + "print(idx_max_values)\n", + "\n", + "print(\"\\nSummary statistics:\")\n", + "print(summary_stats)\n", + "\n", + "print(\"\\nMean values:\")\n", + "print(mean_values)\n", + "\n", + "print(\"\\nMedian values:\")\n", + "print(median_values)\n" + ] + }, + { + "cell_type": "markdown", + "id": "7da015f7", + "metadata": {}, + "source": [ + "## Internal Data Alignment\n" + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "id": "7758b275", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "a 7\n", + "c -2\n", + "d 3\n", + "dtype: int64" + ] + }, + "execution_count": 28, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Create Series with different indices\n", + "s3 = pd.Series([7, -2, 3], index=['a', 'c', 'd'])\n", + "s3" + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "id": "93c866cc", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "a 13.0\n", + "b NaN\n", + "c 5.0\n", + "d 7.0\n", + "dtype: float64" + ] + }, + "execution_count": 29, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Add two Series with different indices\n", + "result = s + s3\n", + "result" + ] + }, + { + "cell_type": "markdown", + "id": "5f62e0fe", + "metadata": {}, + "source": [ + "## Arithmetic Operations with Fill Methods" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "id": "b1da5cf4", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "result_add:\n", + "a 13.0\n", + "b -3.0\n", + "c 7.0\n", + "d 8.0\n", + "e 8.0\n", + "dtype: float64\n", + "\n", + "result_sub:\n", + "a -7.0\n", + "b -7.0\n", + "c 5.0\n", + "d 0.0\n", + "e -6.0\n", + "dtype: float64\n", + "\n", + "result_div:\n", + "a 0.30\n", + "b -2.50\n", + "c 1.75\n", + "d 1.00\n", + "e 0.50\n", + "dtype: float64\n", + "\n", + "result_mul:\n", + "a 30.0\n", + "b -10.0\n", + "c 21.0\n", + "d 16.0\n", + "e 24.0\n", + "dtype: float64\n" + ] + } + ], + "source": [ + "# Example Series\n", + "s = pd.Series([3, -5, 7, 4], index=['a', 'b', 'c', 'd'])\n", + "s3 = pd.Series([10, 2, 4, 8], index=['a', 'b', 'd', 'e'])\n", + "\n", + "# Perform arithmetic operations with fill methods\n", + "result_add = s.add(s3, fill_value=0)\n", + "result_sub = s.sub(s3, fill_value=2)\n", + "result_div = s.div(s3, fill_value=4)\n", + "result_mul = s.mul(s3, fill_value=3)\n", + "\n", + "print(\"result_add:\")\n", + "print(result_add)\n", + "\n", + "print(\"\\nresult_sub:\")\n", + "print(result_sub)\n", + "\n", + "print(\"\\nresult_div:\")\n", + "print(result_div)\n", + "\n", + "print(\"\\nresult_mul:\")\n", + "print(result_mul)" + ] + }, + { + "cell_type": "markdown", + "id": "3e3c7ab3", + "metadata": {}, + "source": [ + "## Asking For Help" + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "id": "4d12c36b", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Help on property:\n", + "\n", + " Access a group of rows and columns by label(s) or a boolean array.\n", + " \n", + " ``.loc[]`` is primarily label based, but may also be used with a\n", + " boolean array.\n", + " \n", + " Allowed inputs are:\n", + " \n", + " - A single label, e.g. ``5`` or ``'a'``, (note that ``5`` is\n", + " interpreted as a *label* of the index, and **never** as an\n", + " integer position along the index).\n", + " - A list or array of labels, e.g. ``['a', 'b', 'c']``.\n", + " - A slice object with labels, e.g. ``'a':'f'``.\n", + " \n", + " .. warning:: Note that contrary to usual python slices, **both** the\n", + " start and the stop are included\n", + " \n", + " - A boolean array of the same length as the axis being sliced,\n", + " e.g. ``[True, False, True]``.\n", + " - An alignable boolean Series. The index of the key will be aligned before\n", + " masking.\n", + " - An alignable Index. The Index of the returned selection will be the input.\n", + " - A ``callable`` function with one argument (the calling Series or\n", + " DataFrame) and that returns valid output for indexing (one of the above)\n", + " \n", + " See more at :ref:`Selection by Label `.\n", + " \n", + " Raises\n", + " ------\n", + " KeyError\n", + " If any items are not found.\n", + " IndexingError\n", + " If an indexed key is passed and its index is unalignable to the frame index.\n", + " \n", + " See Also\n", + " --------\n", + " DataFrame.at : Access a single value for a row/column label pair.\n", + " DataFrame.iloc : Access group of rows and columns by integer position(s).\n", + " DataFrame.xs : Returns a cross-section (row(s) or column(s)) from the\n", + " Series/DataFrame.\n", + " Series.loc : Access group of values using labels.\n", + " \n", + " Examples\n", + " --------\n", + " **Getting values**\n", + " \n", + " >>> df = pd.DataFrame([[1, 2], [4, 5], [7, 8]],\n", + " ... index=['cobra', 'viper', 'sidewinder'],\n", + " ... columns=['max_speed', 'shield'])\n", + " >>> df\n", + " max_speed shield\n", + " cobra 1 2\n", + " viper 4 5\n", + " sidewinder 7 8\n", + " \n", + " Single label. Note this returns the row as a Series.\n", + " \n", + " >>> df.loc['viper']\n", + " max_speed 4\n", + " shield 5\n", + " Name: viper, dtype: int64\n", + " \n", + " List of labels. Note using ``[[]]`` returns a DataFrame.\n", + " \n", + " >>> df.loc[['viper', 'sidewinder']]\n", + " max_speed shield\n", + " viper 4 5\n", + " sidewinder 7 8\n", + " \n", + " Single label for row and column\n", + " \n", + " >>> df.loc['cobra', 'shield']\n", + " 2\n", + " \n", + " Slice with labels for row and single label for column. As mentioned\n", + " above, note that both the start and stop of the slice are included.\n", + " \n", + " >>> df.loc['cobra':'viper', 'max_speed']\n", + " cobra 1\n", + " viper 4\n", + " Name: max_speed, dtype: int64\n", + " \n", + " Boolean list with the same length as the row axis\n", + " \n", + " >>> df.loc[[False, False, True]]\n", + " max_speed shield\n", + " sidewinder 7 8\n", + " \n", + " Alignable boolean Series:\n", + " \n", + " >>> df.loc[pd.Series([False, True, False],\n", + " ... index=['viper', 'sidewinder', 'cobra'])]\n", + " max_speed shield\n", + " sidewinder 7 8\n", + " \n", + " Index (same behavior as ``df.reindex``)\n", + " \n", + " >>> df.loc[pd.Index([\"cobra\", \"viper\"], name=\"foo\")]\n", + " max_speed shield\n", + " foo\n", + " cobra 1 2\n", + " viper 4 5\n", + " \n", + " Conditional that returns a boolean Series\n", + " \n", + " >>> df.loc[df['shield'] > 6]\n", + " max_speed shield\n", + " sidewinder 7 8\n", + " \n", + " Conditional that returns a boolean Series with column labels specified\n", + " \n", + " >>> df.loc[df['shield'] > 6, ['max_speed']]\n", + " max_speed\n", + " sidewinder 7\n", + " \n", + " Callable that returns a boolean Series\n", + " \n", + " >>> df.loc[lambda df: df['shield'] == 8]\n", + " max_speed shield\n", + " sidewinder 7 8\n", + " \n", + " **Setting values**\n", + " \n", + " Set value for all items matching the list of labels\n", + " \n", + " >>> df.loc[['viper', 'sidewinder'], ['shield']] = 50\n", + " >>> df\n", + " max_speed shield\n", + " cobra 1 2\n", + " viper 4 50\n", + " sidewinder 7 50\n", + " \n", + " Set value for an entire row\n", + " \n", + " >>> df.loc['cobra'] = 10\n", + " >>> df\n", + " max_speed shield\n", + " cobra 10 10\n", + " viper 4 50\n", + " sidewinder 7 50\n", + " \n", + " Set value for an entire column\n", + " \n", + " >>> df.loc[:, 'max_speed'] = 30\n", + " >>> df\n", + " max_speed shield\n", + " cobra 30 10\n", + " viper 30 50\n", + " sidewinder 30 50\n", + " \n", + " Set value for rows matching callable condition\n", + " \n", + " >>> df.loc[df['shield'] > 35] = 0\n", + " >>> df\n", + " max_speed shield\n", + " cobra 30 10\n", + " viper 0 0\n", + " sidewinder 0 0\n", + " \n", + " **Getting values on a DataFrame with an index that has integer labels**\n", + " \n", + " Another example using integers for the index\n", + " \n", + " >>> df = pd.DataFrame([[1, 2], [4, 5], [7, 8]],\n", + " ... index=[7, 8, 9], columns=['max_speed', 'shield'])\n", + " >>> df\n", + " max_speed shield\n", + " 7 1 2\n", + " 8 4 5\n", + " 9 7 8\n", + " \n", + " Slice with integer labels for rows. As mentioned above, note that both\n", + " the start and stop of the slice are included.\n", + " \n", + " >>> df.loc[7:9]\n", + " max_speed shield\n", + " 7 1 2\n", + " 8 4 5\n", + " 9 7 8\n", + " \n", + " **Getting values with a MultiIndex**\n", + " \n", + " A number of examples using a DataFrame with a MultiIndex\n", + " \n", + " >>> tuples = [\n", + " ... ('cobra', 'mark i'), ('cobra', 'mark ii'),\n", + " ... ('sidewinder', 'mark i'), ('sidewinder', 'mark ii'),\n", + " ... ('viper', 'mark ii'), ('viper', 'mark iii')\n", + " ... ]\n", + " >>> index = pd.MultiIndex.from_tuples(tuples)\n", + " >>> values = [[12, 2], [0, 4], [10, 20],\n", + " ... [1, 4], [7, 1], [16, 36]]\n", + " >>> df = pd.DataFrame(values, columns=['max_speed', 'shield'], index=index)\n", + " >>> df\n", + " max_speed shield\n", + " cobra mark i 12 2\n", + " mark ii 0 4\n", + " sidewinder mark i 10 20\n", + " mark ii 1 4\n", + " viper mark ii 7 1\n", + " mark iii 16 36\n", + " \n", + " Single label. Note this returns a DataFrame with a single index.\n", + " \n", + " >>> df.loc['cobra']\n", + " max_speed shield\n", + " mark i 12 2\n", + " mark ii 0 4\n", + " \n", + " Single index tuple. Note this returns a Series.\n", + " \n", + " >>> df.loc[('cobra', 'mark ii')]\n", + " max_speed 0\n", + " shield 4\n", + " Name: (cobra, mark ii), dtype: int64\n", + " \n", + " Single label for row and column. Similar to passing in a tuple, this\n", + " returns a Series.\n", + " \n", + " >>> df.loc['cobra', 'mark i']\n", + " max_speed 12\n", + " shield 2\n", + " Name: (cobra, mark i), dtype: int64\n", + " \n", + " Single tuple. Note using ``[[]]`` returns a DataFrame.\n", + " \n", + " >>> df.loc[[('cobra', 'mark ii')]]\n", + " max_speed shield\n", + " cobra mark ii 0 4\n", + " \n", + " Single tuple for the index with a single label for the column\n", + " \n", + " >>> df.loc[('cobra', 'mark i'), 'shield']\n", + " 2\n", + " \n", + " Slice from index tuple to single label\n", + " \n", + " >>> df.loc[('cobra', 'mark i'):'viper']\n", + " max_speed shield\n", + " cobra mark i 12 2\n", + " mark ii 0 4\n", + " sidewinder mark i 10 20\n", + " mark ii 1 4\n", + " viper mark ii 7 1\n", + " mark iii 16 36\n", + " \n", + " Slice from index tuple to index tuple\n", + " \n", + " >>> df.loc[('cobra', 'mark i'):('viper', 'mark ii')]\n", + " max_speed shield\n", + " cobra mark i 12 2\n", + " mark ii 0 4\n", + " sidewinder mark i 10 20\n", + " mark ii 1 4\n", + " viper mark ii 7 1\n", + "\n" + ] + } + ], + "source": [ + "# Display help for a function or object\n", + "help(pd.Series.loc)" + ] + }, + { + "cell_type": "markdown", + "id": "500c0e08", + "metadata": {}, + "source": [ + "## Read and Write\n", + "\n", + "**CSV**\n", + "\n", + "```python\n", + "# Read from CSV\n", + "df_read = pd.read_csv(\n", + " 'file.csv',\n", + " header=None, \n", + " nrows=5\n", + ")\n", + "\n", + "# Write to CSV\n", + "df.to_csv('myDataFrame.csv')\n", + "```\n", + "\n", + "**Excel**\n", + "\n", + "\n", + "```python\n", + "# Read from Excel\n", + "df_read_excel = pd.read_excel('file.xlsx')\n", + "\n", + "# Write to Excel\n", + "df.to_excel(\n", + " 'dir/myDataFrame.xlsx', \n", + " sheet_name='Sheet1'\n", + ")\n", + "\n", + "# Read multiple sheets from the same file\n", + "xlsx = pd.ExcelFile('file.xls')\n", + "df_from_sheet1 = pd.read_excel(xlsx, 'Sheet1')\n", + "```\n", + "\n", + "**SQL Query**\n", + "\n", + "```python\n", + "from sqlalchemy import create_engine\n", + "engine = create_engine('sqlite:///:memory:')\n", + "\n", + "# Read from SQL Query\n", + "pd.read_sql(\"SELECT * FROM my_table;\", engine)\n", + "\n", + "# Read from Database Table\n", + "pd.read_sql_table('my_table', engine)\n", + "\n", + "# Read from SQL Query using read_sql_query()\n", + "pd.read_sql_query(\"SELECT * FROM my_table;\", engine)\n", + "\n", + "# Write DataFrame to SQL Table\n", + "pd.to_sql('myDf', engine)\n", + "```" + ] + } + ], + "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.8.10" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/docs/examples/pandas/st_pandas.ipynb b/docs/examples/pandas/st_pandas.ipynb new file mode 100644 index 0000000..6710c98 --- /dev/null +++ b/docs/examples/pandas/st_pandas.ipynb @@ -0,0 +1,439 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "7e641a52", + "metadata": {}, + "source": [ + "\"Open\n", + "\n", + " \n", + "# Pandas Cheat Sheet" + ] + }, + { + "cell_type": "markdown", + "id": "7570e16a", + "metadata": {}, + "source": [ + "
\n", + " \n", + "
\n", + " Note
\n", + " If you want to run this example on Google Colab, follow these detailed steps below:\n", + "
\n", + "
\n", + "\n", + "1. Install the necessary libraries:\n", + "\n", + " ```python\n", + " !pip install streamlit\n", + " ```\n", + "\n", + "2. Create your app by executing the following cell:\n", + "\n", + " ```python\n", + " %%writefile app.py\n", + " import streamlit as st\n", + " import pandas as pd\n", + " # ... (rest of your code)\n", + " ```\n", + "\n", + "3. Start your app by running this cell:\n", + "\n", + " ```python\n", + " !streamlit run app.py & npx localtunnel --port 8501\n", + " ```\n", + "\n", + " ![Example Image](https://raw.githubusercontent.com/fralfaro/DS-Cheat-Sheets/main/docs/images/img_01.png)\n", + "\n", + " * After completing the above steps, click \"**your url is: ...**\" (for example, *https://major-weeks-clap.loca.lt*). \n", + " * In the new window, enter the numbers in the \"**External URL: ...**\" section (for example, **35.230.186.60**). \n", + " * Finally, click **Click to Submit**\n", + "\n", + " ![Example Image](https://raw.githubusercontent.com/fralfaro/DS-Cheat-Sheets/main/docs/images/img_02.png)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "e2323507", + "metadata": {}, + "outputs": [], + "source": [ + "!pip install streamlit" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "e75247dd", + "metadata": {}, + "outputs": [], + "source": [ + "%%writefile app.py\n", + "import streamlit as st\n", + "from pathlib import Path\n", + "import base64\n", + "import requests\n", + "\n", + "# Initial page config\n", + "st.set_page_config(\n", + " page_title='Pandas Cheat Sheet',\n", + " layout=\"wide\",\n", + " initial_sidebar_state=\"expanded\",\n", + ")\n", + "\n", + "def main():\n", + " \"\"\"\n", + " Main function to set up the Streamlit app layout.\n", + " \"\"\"\n", + " cs_sidebar()\n", + " cs_body()\n", + " return None\n", + "\n", + "# Define img_to_bytes() function\n", + "def img_to_bytes(img_url):\n", + " response = requests.get(img_url)\n", + " img_bytes = response.content\n", + " encoded = base64.b64encode(img_bytes).decode()\n", + " return encoded\n", + "\n", + "\n", + "# Define the cs_sidebar() function\n", + "def cs_sidebar():\n", + " \"\"\"\n", + " Populate the sidebar with various content sections related to Pandas.\n", + " \"\"\"\n", + " st.sidebar.markdown(\n", + " '''[](https://streamlit.io/)'''.format(\n", + " img_to_bytes(\"https://raw.githubusercontent.com/fralfaro/DS-Cheat-Sheets/main/docs/examples/pandas/pandas.png\")), unsafe_allow_html=True)\n", + "\n", + " st.sidebar.header('Pandas Cheat Sheet')\n", + " st.sidebar.markdown('''\n", + "[Pandas](https://pandas.pydata.org/) is built on NumPy and provides easy-to-use\n", + "data structures and data analysis tools for the Python\n", + "programming language.\n", + " ''', unsafe_allow_html=True)\n", + "\n", + " # Pandas installation and import\n", + " st.sidebar.markdown('__Install and import Pandas__')\n", + " st.sidebar.code('$ pip install pandas')\n", + " st.sidebar.code('''\n", + "# Import Pandas convention\n", + ">>> import pandas as pd\n", + "''')\n", + "\n", + " # Pandas array creation\n", + " st.sidebar.subheader('Pandas Data Structures')\n", + " st.sidebar.markdown('__Series__')\n", + " st.sidebar.markdown(\n", + " '''[](https://streamlit.io/)'''.format(\n", + " img_to_bytes(\"https://raw.githubusercontent.com/fralfaro/DS-Cheat-Sheets/main/docs/examples/pandas/serie.png\")), unsafe_allow_html=True)\n", + "\n", + " st.sidebar.markdown('''\n", + " A **one-dimensional** labeled array a capable of holding any data type.\n", + " ''', unsafe_allow_html=True)\n", + "\n", + " st.sidebar.code('''\n", + " # Create a pandas Series\n", + " s = pd.Series(\n", + " [3, -5, 7, 4],\n", + " index=['a', 'b', 'c', 'd']\n", + " )\n", + " ''')\n", + "\n", + " st.sidebar.markdown('__DataFrame__')\n", + " st.sidebar.markdown('''\n", + " A **two-dimensional** labeled data structure with columns of potentially different types.\n", + " ''', unsafe_allow_html=True)\n", + " st.sidebar.markdown(\n", + " '''[](https://streamlit.io/)'''.format(\n", + " img_to_bytes(\"https://raw.githubusercontent.com/fralfaro/DS-Cheat-Sheets/main/docs/examples/pandas/df.png\")), unsafe_allow_html=True)\n", + "\n", + " st.sidebar.code('''\n", + " # Create a pandas DataFrame\n", + " data = {\n", + " 'Country': ['Belgium', 'India', 'Brazil'],\n", + " 'Capital': ['Brussels', 'New Delhi', 'Brasília'],\n", + " 'Population': [11190846, 1303171035, 207847528]\n", + " }\n", + " df = pd.DataFrame(\n", + " data,\n", + " columns=['Country', 'Capital', 'Population']\n", + " )\n", + " ''')\n", + "\n", + " return None\n", + "\n", + "\n", + "# Define the cs_body() function\n", + "def cs_body():\n", + " \"\"\"\n", + " Create content sections for the main body of the Streamlit cheat sheet with Pandas examples.\n", + " \"\"\"\n", + " col1, col2, col3 = st.columns(3) # Create columns for layout\n", + "\n", + " #######################################\n", + " # COLUMN 1\n", + " #######################################\n", + "\n", + " # Read and Write to CSV\n", + " col1.subheader('Read and Write to CSV')\n", + " col1.code('''\n", + " # Read from CSV\n", + " df_read = pd.read_csv(\n", + " 'file.csv',\n", + " header=None, \n", + " nrows=5\n", + " )\n", + "\n", + " # Write to CSV\n", + " df.to_csv('myDataFrame.csv')\n", + " ''')\n", + "\n", + " # Read and Write to Excel\n", + " col1.subheader('Read and Write to Excel')\n", + " col1.code('''\n", + " # Read from Excel\n", + " df_read_excel = pd.read_excel('file.xlsx')\n", + "\n", + " # Write to Excel\n", + " df.to_excel(\n", + " 'dir/myDataFrame.xlsx', \n", + " sheet_name='Sheet1'\n", + " )\n", + "\n", + " # Read multiple sheets from the same file\n", + " xlsx = pd.ExcelFile('file.xls')\n", + " df_from_sheet1 = pd.read_excel(xlsx, 'Sheet1')\n", + " ''')\n", + "\n", + " # Read and Write to SQL Query or Database Table\n", + " col1.subheader('Read and Write to SQL Query or Database Table')\n", + " col1.code('''\n", + " from sqlalchemy import create_engine\n", + " engine = create_engine('sqlite:///:memory:')\n", + "\n", + " # Read from SQL Query\n", + " pd.read_sql(\"SELECT * FROM my_table;\", engine)\n", + "\n", + " # Read from Database Table\n", + " pd.read_sql_table('my_table', engine)\n", + "\n", + " # Read from SQL Query using read_sql_query()\n", + " pd.read_sql_query(\"SELECT * FROM my_table;\", engine)\n", + "\n", + " # Write DataFrame to SQL Table\n", + " pd.to_sql('myDf', engine)\n", + " ''')\n", + "\n", + "\n", + " # Getting Elements from Series and DataFrame\n", + " col1.subheader('Getting Elements')\n", + " col1.code('''\n", + " # Get one element from a Series\n", + " s['b']\n", + " # Output: -5\n", + "\n", + " # Get subset of a DataFrame\n", + " df[1:]\n", + " # Output:\n", + " # Country Capital Population\n", + " # 1 India New Delhi 1303171035\n", + " # 2 Brazil Brasília 207847528\n", + " ''')\n", + "\n", + " # Asking For Help\n", + " col1.subheader('Asking For Help')\n", + " col1.code('''\n", + " # Display help for a function or object\n", + " help(pd.Series.loc)\n", + " ''')\n", + "\n", + " #######################################\n", + " # COLUMN 2\n", + " #######################################\n", + "\n", + " # Selecting, Boolean Indexing & Setting\n", + " col2.subheader('Selecting, Boolean Indexing & Setting')\n", + " col2.code('''\n", + " # Select single value by row & 'Belgium' column\n", + " df.iloc[[0],[0]]\n", + " # Output: 'Belgium'\n", + "\n", + " # Select single value by row & 'Belgium' column labels\n", + " df.loc[[0], ['Country']]\n", + " # Output: 'Belgium'\n", + "\n", + " # Select single row of subset of rows\n", + " df.loc[2]\n", + " # Output:\n", + " # Country Brazil\n", + " # Capital Brasília\n", + " # Population 207847528\n", + "\n", + " # Select a single column of subset of columns\n", + " df.loc[:,'Capital']\n", + " # Output:\n", + " # 0 Brussels\n", + " # 1 New Delhi\n", + " # 2 Brasília\n", + "\n", + " # Boolean indexing - Series s where value is not > 1\n", + " s[~(s > 1)]\n", + "\n", + " # Boolean indexing - s where value is <-1 or >2\n", + " s[(s < -1) | (s > 2)]\n", + "\n", + " # Use filter to adjust DataFrame\n", + " df[df['Population'] > 1200000000]\n", + "\n", + " # Setting index a of Series s to 6\n", + " s['a'] = 6\n", + " ''')\n", + "\n", + " # Dropping\n", + " col2.subheader('Dropping')\n", + " col2.code('''\n", + " # Drop values from rows (axis=0)\n", + " s.drop(['a', 'c'])\n", + "\n", + " # Drop values from columns (axis=1)\n", + " df.drop('Country', axis=1)\n", + " ''')\n", + "\n", + " # Sort & Rank\n", + " col2.subheader('Sort & Rank')\n", + " col2.code('''\n", + " # Sort by labels along an axis\n", + " df.sort_index()\n", + "\n", + " # Sort by the values along an axis\n", + " df.sort_values(by='Country')\n", + "\n", + " # Assign ranks to entries\n", + " df.rank()\n", + " ''')\n", + "\n", + " # Applying Functions\n", + " col2.subheader('Applying Functions')\n", + " col2.code('''\n", + " # Define a function\n", + " f = lambda x: x*2\n", + "\n", + " # Apply function to DataFrame\n", + " df.apply(f)\n", + "\n", + " # Apply function element-wise\n", + " df.applymap(f)\n", + " ''')\n", + "\n", + " #######################################\n", + " # COLUMN 3\n", + " #######################################\n", + "\n", + " # Basic Information\n", + " col3.subheader('Basic Information')\n", + " col3.code('''\n", + " # Get the shape (rows, columns)\n", + " df.shape\n", + "\n", + " # Describe index\n", + " df.index\n", + "\n", + " # Describe DataFrame columns\n", + " df.columns\n", + "\n", + " # Info on DataFrame\n", + " df.info()\n", + "\n", + " # Number of non-NA values\n", + " df.count()\n", + " ''')\n", + "\n", + " # Summary\n", + " col3.subheader('Summary')\n", + " col3.code('''\n", + " # Sum of values\n", + " df[col].sum()\n", + "\n", + " # Cumulative sum of values\n", + " df[col].cumsum()\n", + "\n", + " # Minimum/maximum values\n", + " df[col].min()\n", + " df[col].max()\n", + "\n", + " # Index of minimum/maximum values\n", + " df[col].idxmin()\n", + " df[col].idxmax()\n", + "\n", + " # Summary statistics\n", + " df[col].describe()\n", + "\n", + " # Mean of values\n", + " df[col].mean()\n", + "\n", + " # Median of values\n", + " df[col].median()\n", + " ''')\n", + "\n", + " # Internal Data Alignment\n", + " col3.subheader('Internal Data Alignment')\n", + " col3.code('''\n", + " # Create Series with different indices\n", + " s3 = pd.Series([7, -2, 3], index=['a', 'c', 'd'])\n", + "\n", + " # Add two Series with different indices\n", + " result = s + s3\n", + " ''')\n", + "\n", + " # Arithmetic Operations with Fill Methods\n", + " col3.subheader('Arithmetic Operations with Fill Methods')\n", + " col3.code('''\n", + " # Perform arithmetic operations with fill methods\n", + " result_add = s.add(s3, fill_value=0)\n", + " result_sub = s.sub(s3, fill_value=2)\n", + " result_div = s.div(s3, fill_value=4)\n", + " result_mul = s.mul(s3, fill_value=3)\n", + " ''')\n", + "\n", + "# Run the main function if the script is executed directly\n", + "if __name__ == '__main__':\n", + " main()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "b50b0160", + "metadata": {}, + "outputs": [], + "source": [ + "!streamlit run app.py & npx localtunnel --port 8501" + ] + } + ], + "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.8.10" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/docs/examples/python/app.py b/docs/examples/python/app.py new file mode 100644 index 0000000..85056e6 --- /dev/null +++ b/docs/examples/python/app.py @@ -0,0 +1,325 @@ +import streamlit as st +from pathlib import Path +import base64 +import requests + + +# Initial page config +st.set_page_config( + page_title='Python Cheat Sheet', + layout="wide", + initial_sidebar_state="expanded", +) + +def main(): + """ + Main function to set up the Streamlit app layout. + """ + cs_sidebar() + cs_body() + return None + +# Define img_to_bytes() function +def img_to_bytes(img_url): + response = requests.get(img_url) + img_bytes = response.content + encoded = base64.b64encode(img_bytes).decode() + return encoded + +# Define the cs_sidebar() function +def cs_sidebar(): + """ + Populate the sidebar with various content sections related to Python. + """ + st.sidebar.markdown( + '''[](https://streamlit.io/)'''.format( + img_to_bytes("https://raw.githubusercontent.com/fralfaro/DS-Cheat-Sheets/main/docs/examples/python/python.png")), unsafe_allow_html=True) + + st.sidebar.header('Python Cheat Sheet') + st.sidebar.markdown(''' +[Python](https://www.python.org/) is a high-level, interpreted programming + language known for its simplicity, readability, and versatility. + Created by Guido van Rossum and first released in 1991, + Python has gained immense popularity in various domains, + including web development, data science, automation, and more. + ''', unsafe_allow_html=True) + + # why python ? + st.sidebar.markdown('__Why Python?__') + st.sidebar.markdown(''' + Python has experienced a remarkable surge in popularity over the years and has become one of the most + widely used programming languages across various fields. ''', unsafe_allow_html=True) + + st.sidebar.markdown( + '''[](https://streamlit.io/)'''.format( + img_to_bytes("https://raw.githubusercontent.com/fralfaro/DS-Cheat-Sheets/main/docs/examples/python/survey2.png")), unsafe_allow_html=True) + + return None + + +# Define the cs_body() function +def cs_body(): + """ + Create content sections for the main body of the Streamlit cheat sheet with Python examples. + """ + col1, col2, col3 = st.columns(3) # Create columns for layout + + ####################################### + # COLUMN 1 + ####################################### + + # Hello, World! + col1.subheader('Hello, World!') + col1.code(''' + print("Hello, World!") + ''') + + # Comments + col1.subheader('Comments') + col1.code(''' + # This is a comment + ''') + + # Variables and Data Types + col1.subheader('Variables and Data Types') + col1.code(''' + x = 5 # Integer + y = 3.14 # Float + name = "John" # String + is_student = True # Boolean + ''') + + # Basic Operations + col1.subheader('Basic Operations') + col1.code(''' + # Perform basic arithmetic operations + sum_result = x + y + sub_result = x - y + mul_result = x * y + div_result = x / y + ''') + + + # String Operations + col1.subheader('String Operations') + col1.code(''' + # String concatenation + full_name = name + " Doe" + + # Formatted string + formatted_string = f"Hello, {name}!" + ''') + + # Input and Output + col1.subheader('Input and Output') + col1.code(''' + # Get user input and display it + user_input = input("Enter a number: ") + print("You entered:", user_input) + ''') + + # File Handling + col1.subheader('File Handling') + col1.code(''' + # Read content from a file + with open("file.txt", "r") as file: + content = file.read() + + # Write content to a new file + with open("new_file.txt", "w") as new_file: + new_file.write("Hello, world!") + ''') + + # Conditional Statements + col1.subheader('Conditional Statements') + col1.code(''' + # Check if x is greater than y + if x > y: + print("x is greater") + # If not, check if x is less than y + elif x < y: + print("y is greater") + # If neither condition is true, they must be equal + else: + print("x and y are equal") + ''') + + ####################################### + # COLUMN 2 + ####################################### + + # Creating lists + col2.subheader('Creating Lists') + col2.code(''' + # Create lists with [], elements separated by commas + x = [1, 3, 2] + ''') + + # List functions and methods + col2.subheader('List Functions and Methods') + col2.code(''' + # Return a sorted copy of the list e.g., [1,2,3] + sorted_list = sorted(x) + + # Sorts the list in place (replaces x) + x.sort() + + # Reverse the order of elements in x e.g., [2,3,1] + reversed_list = list(reversed(x)) + + # Reverse the list in place + x.reverse() + + # Count the number of element 2 in the list + count_2 = x.count(2) + ''') + + # Selecting list elements + col2.subheader('Selecting List Elements') + col2.code(''' + # Select the 0th element in the list + element_0 = x[0] + + # Select the last element in the list + last_element = x[-1] + + # Select 1st (inclusive) to 3rd (exclusive) + subset_1_to_3 = x[1:3] + + # Select the 2nd to the end + subset_2_to_end = x[2:] + + # Select 0th to 3rd (exclusive) + subset_0_to_3 = x[:3] + ''') + + # Concatenating lists + col2.subheader('Concatenating Lists') + col2.code(''' + # Define the x and y lists + x = [1, 3, 6] + y = [10, 15, 21] + + # Concatenate lists using '+' + concatenated_list = x + y + + # Replicate elements in a list using '*' + replicated_list = 3 * x + ''') + + # Creating dictionaries + col2.subheader('Creating Dictionaries') + col2.code(''' + # Create a dictionary with {} + my_dict = {'a': 1, 'b': 2, 'c': 3} + + ''') + + # Dictionary functions and methods + col2.subheader('Dictionary Functions and Methods') + col2.code(''' + # Get the keys of a dictionary + my_dict.keys() # Returns dict_keys(['a', 'b', 'c']) + + # Get the values of a dictionary + my_dict.values() # Returns dict_values([1, 2, 3]) + + # Get a value from a dictionary by specifying the key + my_dict['a'] # Returns 1 + ''') + + ####################################### + # COLUMN 3 + ####################################### + + # Loops + col3.subheader('Loops') + col3.code(''' + # For loop + numbers = [1, 2, 3, 4, 5] + for num in numbers: + print(num) + + # While loop + x = 5 + while x > 0: + print(x) + x -= 1 + ''') + + # Error Handling + col3.subheader('Error Handling') + col3.code(''' + # Try to perform division + try: + result = x / y # Attempt to divide x by y + except ZeroDivisionError as e: # If a ZeroDivisionError occurs + print("Cannot divide by zero") + print(e) + ''') + + # List Comprehensions + col3.subheader('List Comprehensions') + col3.code(''' + # Create a list of squared numbers using a list comprehension + squared_numbers = [num**2 for num in numbers] + + # Create a list of even numbers using a list comprehension with condition + even_numbers = [num for num in numbers if num % 2 == 0] + ''') + + # Functions + col3.subheader('Functions') + col3.code(''' + # Define a function that takes a name parameter + def greet(name): + return f"Hello, {name}!" + + # Call the greet function with the argument "Alice" + greeting = greet("Alice") + ''') + + # Built-in Functions + col3.subheader('Built-in Functions') + col3.code(''' + # Get the length of a list + len_fruits = len(fruits) + + # Find the maximum value in a list + max_number = max(numbers) + + # Find the minimum value in a list + min_number = min(numbers) + ''') + + # Importing Modules + col3.subheader('Importing Modules') + col3.code(''' + import math + sqrt_result = math.sqrt(x) # Calculate square root using math module + + from random import randint + random_number = randint(1, 10) # Generate a random number between 1 and 10 + + import math + sqrt_result = math.sqrt(x) # Reusing the math module for another calculation + ''') + + # Classes and Objects + col3.subheader('Classes and Objects') + col3.code(''' + class Dog: + def __init__(self, name, age): + self.name = name + self.age = age + + def bark(self): + return "Woof!" + + my_dog = Dog("Buddy", 3) + ''') + + +# Run the main function if the script is executed directly +if __name__ == '__main__': + main() diff --git a/docs/examples/python/python.ipynb b/docs/examples/python/python.ipynb new file mode 100644 index 0000000..ebad7bc --- /dev/null +++ b/docs/examples/python/python.ipynb @@ -0,0 +1,769 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "0f757565", + "metadata": {}, + "source": [ + "\"Open\n", + "\n", + " \n", + "# Python Cheat Sheet\n", + "\n", + "\"numpy\n", + "\n", + "[Python](https://www.python.org/) is a high-level, interpreted programming\n", + " language known for its simplicity, readability, and versatility. \n", + " Created by Guido van Rossum and first released in 1991,\n", + " Python has gained immense popularity in various domains,\n", + " including web development, data science, automation, and more." + ] + }, + { + "cell_type": "markdown", + "id": "bbc8b478", + "metadata": {}, + "source": [ + "## Why Python?\n", + "\n", + "Python has experienced a remarkable surge in popularity over the years and has become one of the most \n", + " widely used programming languages across various fields. \n", + "\n", + "\"numpy" + ] + }, + { + "cell_type": "markdown", + "id": "8e2f9b13", + "metadata": {}, + "source": [ + "## Hello, World!\n" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "3002d601", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Hello, World!\n" + ] + } + ], + "source": [ + "print(\"Hello, World!\")" + ] + }, + { + "cell_type": "markdown", + "id": "2f88a434", + "metadata": {}, + "source": [ + "## Comments" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "cbe1bb8e", + "metadata": {}, + "outputs": [], + "source": [ + "# This is a comment" + ] + }, + { + "cell_type": "markdown", + "id": "7e310817", + "metadata": {}, + "source": [ + "## Variables and Data Types\n" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "350dfa62", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "x: 5\n", + "y: 3.14\n", + "name: John\n", + "is_student: True\n" + ] + } + ], + "source": [ + "# Define an integer variable\n", + "x = 5 # Integer\n", + "\n", + "# Define a float variable\n", + "y = 3.14 # Float\n", + "\n", + "# Define a string variable\n", + "name = \"John\" # String\n", + "\n", + "# Define a boolean variable\n", + "is_student = True # Boolean\n", + "\n", + "# Print the values of the variables\n", + "print(\"x:\", x)\n", + "print(\"y:\", y)\n", + "print(\"name:\", name)\n", + "print(\"is_student:\", is_student)" + ] + }, + { + "cell_type": "markdown", + "id": "bd0ecf8a", + "metadata": {}, + "source": [ + "## Basic Operations\n" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "220590d0", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "sum_result: 8.14\n", + "sub_result: 1.8599999999999999\n", + "mul_result: 15.700000000000001\n", + "div_result: 1.592356687898089\n" + ] + } + ], + "source": [ + "# Perform basic arithmetic operations\n", + "sum_result = x + y # Add x and y\n", + "sub_result = x - y # Subtract y from x\n", + "mul_result = x * y # Multiply x and y\n", + "div_result = x / y # Divide x by y\n", + "\n", + "# Print the results of the arithmetic operations\n", + "print(\"sum_result:\", sum_result)\n", + "print(\"sub_result:\", sub_result)\n", + "print(\"mul_result:\", mul_result)\n", + "print(\"div_result:\", div_result)" + ] + }, + { + "cell_type": "markdown", + "id": "bf401d58", + "metadata": {}, + "source": [ + "## String Operations\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "be3e2926", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "full_name: John Doe\n", + "formatted_string: Hello, John!\n" + ] + } + ], + "source": [ + "# String concatenation\n", + "full_name = name + \" Doe\" # Concatenate 'name' and \" Doe\"\n", + "\n", + "# Formatted string\n", + "formatted_string = f\"Hello, {name}!\" # Create a formatted string using 'name'\n", + "\n", + "# Print the results of string operations\n", + "print(\"full_name:\", full_name)\n", + "print(\"formatted_string:\", formatted_string)" + ] + }, + { + "cell_type": "markdown", + "id": "b167a75f", + "metadata": {}, + "source": [ + "## Conditional Statements\n" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "ffee9551", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "x is greater\n" + ] + } + ], + "source": [ + "# Define the values of x and y\n", + "x = 7\n", + "y = 3.5\n", + "\n", + "# Check if x is greater than y\n", + "if x > y:\n", + " print(\"x is greater\")\n", + "# If not, check if x is less than y\n", + "elif x < y:\n", + " print(\"y is greater\")\n", + "# If neither condition is true, they must be equal\n", + "else:\n", + " print(\"x and y are equal\")" + ] + }, + { + "cell_type": "markdown", + "id": "be074577", + "metadata": {}, + "source": [ + "## Lists" + ] + }, + { + "cell_type": "markdown", + "id": "a3e8ead9", + "metadata": {}, + "source": [ + "### Creating Lists\n" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "360e7e48", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "x: [1, 3, 2]\n" + ] + } + ], + "source": [ + "# Create a list with elements 1, 3, and 2\n", + "x = [1, 3, 2]\n", + "\n", + "# Print the list\n", + "print(\"x:\", x)" + ] + }, + { + "cell_type": "markdown", + "id": "66171d3a", + "metadata": {}, + "source": [ + "### List Functions and Methods\n" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "300fcfec", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "sorted_list: [1, 2, 3]\n", + "reversed_list: [3, 2, 1]\n", + "count_2: 1\n" + ] + } + ], + "source": [ + "# Return a sorted copy of the list\n", + "sorted_list = sorted(x) # Creates a new list with elements in sorted order\n", + "\n", + "# Sorts the list in place (replaces x)\n", + "x.sort() # Modifies the existing list x to be sorted\n", + "\n", + "# Reverse the order of elements in x\n", + "reversed_list = list(reversed(x)) # Creates a new list with elements in reversed order\n", + "\n", + "# Reverse the list in place\n", + "x.reverse() # Modifies the existing list x to be reversed\n", + "\n", + "# Count the number of element 2 in the list\n", + "count_2 = x.count(2) # Counts the occurrences of element 2 in the list x\n", + "\n", + "# Print the results of list operations\n", + "print(\"sorted_list:\", sorted_list)\n", + "print(\"reversed_list:\", reversed_list)\n", + "print(\"count_2:\", count_2)" + ] + }, + { + "cell_type": "markdown", + "id": "032c5e43", + "metadata": {}, + "source": [ + "### Selecting List Elements\n" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "69b325d7", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "element_0: 3\n", + "last_element: 1\n", + "subset_1_to_3: [2, 1]\n", + "subset_2_to_end: [1]\n", + "subset_0_to_3: [3, 2, 1]\n" + ] + } + ], + "source": [ + "# Select the 0th element in the list\n", + "element_0 = x[0] # Assigns the first element of x to element_0\n", + "\n", + "# Select the last element in the list\n", + "last_element = x[-1] # Assigns the last element of x to last_element\n", + "\n", + "# Select 1st (inclusive) to 3rd (exclusive)\n", + "subset_1_to_3 = x[1:3] # Creates a subset containing elements from index 1 to 2\n", + "\n", + "# Select the 2nd to the end\n", + "subset_2_to_end = x[2:] # Creates a subset containing elements from index 2 to the end\n", + "\n", + "# Select 0th to 3rd (exclusive)\n", + "subset_0_to_3 = x[:3] # Creates a subset containing elements from index 0 to 2\n", + "\n", + "# Print the selected elements and subsets\n", + "print(\"element_0:\", element_0)\n", + "print(\"last_element:\", last_element)\n", + "print(\"subset_1_to_3:\", subset_1_to_3)\n", + "print(\"subset_2_to_end:\", subset_2_to_end)\n", + "print(\"subset_0_to_3:\", subset_0_to_3)" + ] + }, + { + "cell_type": "markdown", + "id": "5644fffd", + "metadata": {}, + "source": [ + "### Concatenating Lists\n" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "id": "5e80b6fa", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "concatenated_list: [1, 3, 6, 10, 15, 21]\n", + "replicated_list: [1, 3, 6, 1, 3, 6, 1, 3, 6]\n" + ] + } + ], + "source": [ + "# Define the x and y lists\n", + "x = [1, 3, 6]\n", + "y = [10, 15, 21]\n", + "\n", + "# Concatenate lists using '+'\n", + "concatenated_list = x + y # Creates a new list by concatenating x and y\n", + "\n", + "# Replicate elements in a list using '*'\n", + "replicated_list = 3 * x # Creates a new list with elements of x replicated 3 times\n", + "\n", + "# Print the results of list operations\n", + "print(\"concatenated_list:\", concatenated_list)\n", + "print(\"replicated_list:\", replicated_list)" + ] + }, + { + "cell_type": "markdown", + "id": "00b306cc", + "metadata": {}, + "source": [ + "## Dictionaries\n", + "\n", + "### Creating Dictionaries\n" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "54cbfcd7", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "my_dict: {'a': 1, 'b': 2, 'c': 3}\n" + ] + } + ], + "source": [ + "# Create a dictionary with key-value pairs\n", + "my_dict = {'a': 1, 'b': 2, 'c': 3}\n", + "\n", + "# Print the dictionary\n", + "print(\"my_dict:\", my_dict)" + ] + }, + { + "cell_type": "markdown", + "id": "95c135cd", + "metadata": {}, + "source": [ + "### Dictionary Functions and Methods\n" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "id": "692806a1", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "keys: dict_keys(['a', 'b', 'c'])\n", + "values: dict_values([1, 2, 3])\n", + "value_a: 1\n" + ] + } + ], + "source": [ + "# Get the keys of a dictionary\n", + "keys = my_dict.keys() # Returns dict_keys(['a', 'b', 'c'])\n", + "\n", + "# Get the values of a dictionary\n", + "values = my_dict.values() # Returns dict_values([1, 2, 3])\n", + "\n", + "# Get a value from a dictionary by specifying the key\n", + "value_a = my_dict['a'] # Returns 1\n", + "\n", + "# Print the results of dictionary operations\n", + "print(\"keys:\", keys)\n", + "print(\"values:\", values)\n", + "print(\"value_a:\", value_a)" + ] + }, + { + "cell_type": "markdown", + "id": "459a3a1a", + "metadata": {}, + "source": [ + "## Loops" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "id": "2353c0d8", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Using a for loop:\n", + "1\n", + "2\n", + "3\n", + "4\n", + "5\n" + ] + } + ], + "source": [ + "# Define a list of numbers\n", + "numbers = [1, 2, 3, 4, 5]\n", + "\n", + "# For loop\n", + "print(\"Using a for loop:\")\n", + "for num in numbers:\n", + " print(num)" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "id": "7f2027a8", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Using a while loop:\n", + "5\n", + "4\n", + "3\n", + "2\n", + "1\n" + ] + } + ], + "source": [ + "# While loop\n", + "x = 5\n", + "print(\"Using a while loop:\")\n", + "while x > 0:\n", + " print(x)\n", + " x -= 1" + ] + }, + { + "cell_type": "markdown", + "id": "d5022fc8", + "metadata": {}, + "source": [ + "## Functions" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "id": "23450976", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "greeting: Hello, Alice!\n" + ] + } + ], + "source": [ + "# Define a function that takes a name parameter\n", + "def greet(name):\n", + " return f\"Hello, {name}!\"\n", + "\n", + "# Call the greet function with the argument \"Alice\"\n", + "greeting = greet(\"Alice\") # Calls the greet function and stores the result in greeting\n", + "\n", + "# Print the greeting\n", + "print(\"greeting:\", greeting)" + ] + }, + { + "cell_type": "markdown", + "id": "1804574a", + "metadata": {}, + "source": [ + "## Built-in Functions\n" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "id": "acc5fc30", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Length of fruits list: 4\n", + "Maximum value in numbers list: 42\n", + "Minimum value in numbers list: 5\n" + ] + } + ], + "source": [ + "# Define a list of fruits and numbers\n", + "fruits = ['apple', 'banana', 'orange', 'kiwi']\n", + "numbers = [14, 27, 8, 42, 5]\n", + "\n", + "# Get the length of the list 'fruits'\n", + "len_fruits = len(fruits)\n", + "\n", + "# Find the maximum value in the list 'numbers'\n", + "max_number = max(numbers)\n", + "\n", + "# Find the minimum value in the list 'numbers'\n", + "min_number = min(numbers)\n", + "\n", + "# Print the results\n", + "print(\"Length of fruits list:\", len_fruits)\n", + "print(\"Maximum value in numbers list:\", max_number)\n", + "print(\"Minimum value in numbers list:\", min_number)" + ] + }, + { + "cell_type": "markdown", + "id": "a8bf0e51", + "metadata": {}, + "source": [ + "## Importing Modules\n" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "id": "769c0a3a", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "sqrt_result: 0.0\n", + "random_number: 6\n", + "sqrt_result_reuse: 0.0\n" + ] + } + ], + "source": [ + "import math\n", + "\n", + "# Calculate square root using math module\n", + "sqrt_result = math.sqrt(x)\n", + "\n", + "# Generate a random number between 1 and 10\n", + "from random import randint\n", + "random_number = randint(1, 10)\n", + "\n", + "# Reusing the math module for another calculation\n", + "sqrt_result_reuse = math.sqrt(x)\n", + "\n", + "# Print the results\n", + "print(\"sqrt_result:\", sqrt_result)\n", + "print(\"random_number:\", random_number)\n", + "print(\"sqrt_result_reuse:\", sqrt_result_reuse)" + ] + }, + { + "cell_type": "markdown", + "id": "096c64c2", + "metadata": {}, + "source": [ + "## Classes and Objects\n" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "id": "82b596e2", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "my_dog name: Buddy\n", + "my_dog age: 3\n", + "bark_result: Woof!\n" + ] + } + ], + "source": [ + "class Dog:\n", + " def __init__(self, name, age):\n", + " self.name = name\n", + " self.age = age\n", + "\n", + " def bark(self):\n", + " return \"Woof!\"\n", + "\n", + "# Create an instance of the Dog class\n", + "my_dog = Dog(\"Buddy\", 3)\n", + "\n", + "# Print the attributes of the instance\n", + "print(\"my_dog name:\", my_dog.name)\n", + "print(\"my_dog age:\", my_dog.age)\n", + "\n", + "# Call the bark method of the instance\n", + "bark_result = my_dog.bark()\n", + "print(\"bark_result:\", bark_result)" + ] + }, + { + "cell_type": "markdown", + "id": "3c4c0991", + "metadata": {}, + "source": [ + "## Input/Output and File Handling\n", + "\n", + "**Input/Output**\n", + "\n", + "```python\n", + "# Get user input and display it\n", + "user_input = input(\"Enter a number: \")\n", + "print(\"You entered:\", user_input)\n", + "```\n" + ] + }, + { + "cell_type": "markdown", + "id": "4a578525", + "metadata": {}, + "source": [ + "**File Handling**\n", + "\n", + "```python\n", + "# Read content from a file\n", + "with open(\"file.txt\", \"r\") as file:\n", + " content = file.read()\n", + "\n", + "# Write content to a new file\n", + "with open(\"new_file.txt\", \"w\") as new_file:\n", + " new_file.write(\"Hello, world!\")\n", + "```" + ] + } + ], + "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.8.10" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/docs/examples/python/st_python.ipynb b/docs/examples/python/st_python.ipynb new file mode 100644 index 0000000..a697fb7 --- /dev/null +++ b/docs/examples/python/st_python.ipynb @@ -0,0 +1,434 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "09a09de4", + "metadata": {}, + "source": [ + "\"Open\n", + "\n", + " \n", + "# Python Cheat Sheet" + ] + }, + { + "cell_type": "markdown", + "id": "cfb79b3a", + "metadata": {}, + "source": [ + "
\n", + " \n", + "
\n", + " Note
\n", + " If you want to run this example on Google Colab, follow these detailed steps below:\n", + "
\n", + "
\n", + "\n", + "1. Install the necessary libraries:\n", + "\n", + " ```python\n", + " !pip install streamlit\n", + " ```\n", + "\n", + "2. Create your app by executing the following cell:\n", + "\n", + " ```python\n", + " %%writefile app.py\n", + " import streamlit as st\n", + " import pandas as pd\n", + " # ... (rest of your code)\n", + " ```\n", + "\n", + "3. Start your app by running this cell:\n", + "\n", + " ```python\n", + " !streamlit run app.py & npx localtunnel --port 8501\n", + " ```\n", + "\n", + " ![Example Image](https://raw.githubusercontent.com/fralfaro/DS-Cheat-Sheets/main/docs/images/img_01.png)\n", + "\n", + " * After completing the above steps, click \"**your url is: ...**\" (for example, *https://major-weeks-clap.loca.lt*). \n", + " * In the new window, enter the numbers in the \"**External URL: ...**\" section (for example, **35.230.186.60**). \n", + " * Finally, click **Click to Submit**\n", + "\n", + " ![Example Image](https://raw.githubusercontent.com/fralfaro/DS-Cheat-Sheets/main/docs/images/img_02.png)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "31c8648b", + "metadata": {}, + "outputs": [], + "source": [ + "!pip install streamlit" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "d87514c0", + "metadata": {}, + "outputs": [], + "source": [ + "%%writefile app.py\n", + "import streamlit as st\n", + "from pathlib import Path\n", + "import base64\n", + "import requests\n", + "\n", + "\n", + "# Initial page config\n", + "st.set_page_config(\n", + " page_title='Python Cheat Sheet',\n", + " layout=\"wide\",\n", + " initial_sidebar_state=\"expanded\",\n", + ")\n", + "\n", + "def main():\n", + " \"\"\"\n", + " Main function to set up the Streamlit app layout.\n", + " \"\"\"\n", + " cs_sidebar()\n", + " cs_body()\n", + " return None\n", + "\n", + "# Define img_to_bytes() function\n", + "def img_to_bytes(img_url):\n", + " response = requests.get(img_url)\n", + " img_bytes = response.content\n", + " encoded = base64.b64encode(img_bytes).decode()\n", + " return encoded\n", + "\n", + "# Define the cs_sidebar() function\n", + "def cs_sidebar():\n", + " \"\"\"\n", + " Populate the sidebar with various content sections related to Python.\n", + " \"\"\"\n", + " st.sidebar.markdown(\n", + " '''[](https://streamlit.io/)'''.format(\n", + " img_to_bytes(\"https://raw.githubusercontent.com/fralfaro/DS-Cheat-Sheets/main/docs/examples/python/python.png\")), unsafe_allow_html=True)\n", + "\n", + " st.sidebar.header('Python Cheat Sheet')\n", + " st.sidebar.markdown('''\n", + "[Python](https://www.python.org/) is a high-level, interpreted programming\n", + " language known for its simplicity, readability, and versatility. \n", + " Created by Guido van Rossum and first released in 1991,\n", + " Python has gained immense popularity in various domains,\n", + " including web development, data science, automation, and more.\n", + " ''', unsafe_allow_html=True)\n", + "\n", + " # why python ?\n", + " st.sidebar.markdown('__Why Python?__')\n", + " st.sidebar.markdown('''\n", + " Python has experienced a remarkable surge in popularity over the years and has become one of the most \n", + " widely used programming languages across various fields. ''', unsafe_allow_html=True)\n", + "\n", + " st.sidebar.markdown(\n", + " '''[](https://streamlit.io/)'''.format(\n", + " img_to_bytes(\"https://raw.githubusercontent.com/fralfaro/DS-Cheat-Sheets/main/docs/examples/python/survey2.png\")), unsafe_allow_html=True)\n", + "\n", + " return None\n", + "\n", + "\n", + "# Define the cs_body() function\n", + "def cs_body():\n", + " \"\"\"\n", + " Create content sections for the main body of the Streamlit cheat sheet with Python examples.\n", + " \"\"\"\n", + " col1, col2, col3 = st.columns(3) # Create columns for layout\n", + "\n", + " #######################################\n", + " # COLUMN 1\n", + " #######################################\n", + "\n", + " # Hello, World!\n", + " col1.subheader('Hello, World!')\n", + " col1.code('''\n", + " print(\"Hello, World!\")\n", + " ''')\n", + "\n", + " # Comments\n", + " col1.subheader('Comments')\n", + " col1.code('''\n", + " # This is a comment\n", + " ''')\n", + "\n", + " # Variables and Data Types\n", + " col1.subheader('Variables and Data Types')\n", + " col1.code('''\n", + " x = 5 # Integer\n", + " y = 3.14 # Float\n", + " name = \"John\" # String\n", + " is_student = True # Boolean\n", + " ''')\n", + "\n", + " # Basic Operations\n", + " col1.subheader('Basic Operations')\n", + " col1.code('''\n", + " # Perform basic arithmetic operations\n", + " sum_result = x + y\n", + " sub_result = x - y\n", + " mul_result = x * y\n", + " div_result = x / y\n", + " ''')\n", + "\n", + "\n", + " # String Operations\n", + " col1.subheader('String Operations')\n", + " col1.code('''\n", + " # String concatenation\n", + " full_name = name + \" Doe\"\n", + "\n", + " # Formatted string\n", + " formatted_string = f\"Hello, {name}!\"\n", + " ''')\n", + "\n", + " # Input and Output\n", + " col1.subheader('Input and Output')\n", + " col1.code('''\n", + " # Get user input and display it\n", + " user_input = input(\"Enter a number: \")\n", + " print(\"You entered:\", user_input)\n", + " ''')\n", + "\n", + " # File Handling\n", + " col1.subheader('File Handling')\n", + " col1.code('''\n", + " # Read content from a file\n", + " with open(\"file.txt\", \"r\") as file:\n", + " content = file.read()\n", + "\n", + " # Write content to a new file\n", + " with open(\"new_file.txt\", \"w\") as new_file:\n", + " new_file.write(\"Hello, world!\")\n", + " ''')\n", + "\n", + " # Conditional Statements\n", + " col1.subheader('Conditional Statements')\n", + " col1.code('''\n", + " # Check if x is greater than y\n", + " if x > y:\n", + " print(\"x is greater\")\n", + " # If not, check if x is less than y\n", + " elif x < y:\n", + " print(\"y is greater\")\n", + " # If neither condition is true, they must be equal\n", + " else:\n", + " print(\"x and y are equal\")\n", + " ''')\n", + "\n", + " #######################################\n", + " # COLUMN 2\n", + " #######################################\n", + "\n", + " # Creating lists\n", + " col2.subheader('Creating Lists')\n", + " col2.code('''\n", + " # Create lists with [], elements separated by commas\n", + " x = [1, 3, 2]\n", + " ''')\n", + "\n", + " # List functions and methods\n", + " col2.subheader('List Functions and Methods')\n", + " col2.code('''\n", + " # Return a sorted copy of the list e.g., [1,2,3]\n", + " sorted_list = sorted(x)\n", + "\n", + " # Sorts the list in place (replaces x)\n", + " x.sort()\n", + "\n", + " # Reverse the order of elements in x e.g., [2,3,1]\n", + " reversed_list = list(reversed(x))\n", + "\n", + " # Reverse the list in place\n", + " x.reverse()\n", + "\n", + " # Count the number of element 2 in the list\n", + " count_2 = x.count(2)\n", + " ''')\n", + "\n", + " # Selecting list elements\n", + " col2.subheader('Selecting List Elements')\n", + " col2.code('''\n", + " # Select the 0th element in the list\n", + " element_0 = x[0]\n", + "\n", + " # Select the last element in the list\n", + " last_element = x[-1]\n", + "\n", + " # Select 1st (inclusive) to 3rd (exclusive)\n", + " subset_1_to_3 = x[1:3]\n", + "\n", + " # Select the 2nd to the end\n", + " subset_2_to_end = x[2:]\n", + "\n", + " # Select 0th to 3rd (exclusive)\n", + " subset_0_to_3 = x[:3]\n", + " ''')\n", + "\n", + " # Concatenating lists\n", + " col2.subheader('Concatenating Lists')\n", + " col2.code('''\n", + " # Define the x and y lists\n", + " x = [1, 3, 6]\n", + " y = [10, 15, 21]\n", + "\n", + " # Concatenate lists using '+'\n", + " concatenated_list = x + y\n", + "\n", + " # Replicate elements in a list using '*'\n", + " replicated_list = 3 * x\n", + " ''')\n", + "\n", + " # Creating dictionaries\n", + " col2.subheader('Creating Dictionaries')\n", + " col2.code('''\n", + " # Create a dictionary with {}\n", + " my_dict = {'a': 1, 'b': 2, 'c': 3}\n", + "\n", + " ''')\n", + "\n", + " # Dictionary functions and methods\n", + " col2.subheader('Dictionary Functions and Methods')\n", + " col2.code('''\n", + " # Get the keys of a dictionary\n", + " my_dict.keys() # Returns dict_keys(['a', 'b', 'c'])\n", + "\n", + " # Get the values of a dictionary\n", + " my_dict.values() # Returns dict_values([1, 2, 3])\n", + " \n", + " # Get a value from a dictionary by specifying the key\n", + " my_dict['a'] # Returns 1 \n", + " ''')\n", + "\n", + " #######################################\n", + " # COLUMN 3\n", + " #######################################\n", + "\n", + " # Loops\n", + " col3.subheader('Loops')\n", + " col3.code('''\n", + " # For loop\n", + " numbers = [1, 2, 3, 4, 5]\n", + " for num in numbers:\n", + " print(num)\n", + "\n", + " # While loop\n", + " x = 5\n", + " while x > 0:\n", + " print(x)\n", + " x -= 1\n", + " ''')\n", + "\n", + " # Error Handling\n", + " col3.subheader('Error Handling')\n", + " col3.code('''\n", + " # Try to perform division\n", + " try:\n", + " result = x / y # Attempt to divide x by y\n", + " except ZeroDivisionError as e: # If a ZeroDivisionError occurs\n", + " print(\"Cannot divide by zero\") \n", + " print(e)\n", + " ''')\n", + "\n", + " # List Comprehensions\n", + " col3.subheader('List Comprehensions')\n", + " col3.code('''\n", + " # Create a list of squared numbers using a list comprehension\n", + " squared_numbers = [num**2 for num in numbers]\n", + "\n", + " # Create a list of even numbers using a list comprehension with condition\n", + " even_numbers = [num for num in numbers if num % 2 == 0]\n", + " ''')\n", + "\n", + " # Functions\n", + " col3.subheader('Functions')\n", + " col3.code('''\n", + " # Define a function that takes a name parameter\n", + " def greet(name):\n", + " return f\"Hello, {name}!\"\n", + "\n", + " # Call the greet function with the argument \"Alice\"\n", + " greeting = greet(\"Alice\")\n", + " ''')\n", + "\n", + " # Built-in Functions\n", + " col3.subheader('Built-in Functions')\n", + " col3.code('''\n", + " # Get the length of a list\n", + " len_fruits = len(fruits)\n", + "\n", + " # Find the maximum value in a list\n", + " max_number = max(numbers)\n", + "\n", + " # Find the minimum value in a list\n", + " min_number = min(numbers)\n", + " ''')\n", + "\n", + " # Importing Modules\n", + " col3.subheader('Importing Modules')\n", + " col3.code('''\n", + " import math\n", + " sqrt_result = math.sqrt(x) # Calculate square root using math module\n", + "\n", + " from random import randint\n", + " random_number = randint(1, 10) # Generate a random number between 1 and 10\n", + "\n", + " import math\n", + " sqrt_result = math.sqrt(x) # Reusing the math module for another calculation\n", + " ''')\n", + "\n", + " # Classes and Objects\n", + " col3.subheader('Classes and Objects')\n", + " col3.code('''\n", + " class Dog:\n", + " def __init__(self, name, age):\n", + " self.name = name\n", + " self.age = age\n", + "\n", + " def bark(self):\n", + " return \"Woof!\"\n", + "\n", + " my_dog = Dog(\"Buddy\", 3)\n", + " ''')\n", + "\n", + "\n", + "# Run the main function if the script is executed directly\n", + "if __name__ == '__main__':\n", + " main()\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "b70c870e", + "metadata": {}, + "outputs": [], + "source": [ + "!streamlit run app.py & npx localtunnel --port 8501" + ] + } + ], + "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.8.10" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/docs/examples/scikit-learn/app.py b/docs/examples/scikit-learn/app.py new file mode 100644 index 0000000..3761604 --- /dev/null +++ b/docs/examples/scikit-learn/app.py @@ -0,0 +1,416 @@ +import streamlit as st +from pathlib import Path +import base64 +import requests + + +# Initial page config +st.set_page_config( + page_title='Scikit-Learn Cheat Sheet', + layout="wide", + initial_sidebar_state="expanded", +) + +def main(): + """ + Main function to set up the Streamlit app layout. + """ + cs_sidebar() + cs_body() + return None + +# Define img_to_bytes() function +def img_to_bytes(img_url): + response = requests.get(img_url) + img_bytes = response.content + encoded = base64.b64encode(img_bytes).decode() + return encoded + +# Define the cs_sidebar() function +def cs_sidebar(): + """ + Populate the sidebar with various content sections related to Scikit-learn. + """ + st.sidebar.markdown( + '''[](https://streamlit.io/)'''.format( + img_to_bytes("https://raw.githubusercontent.com/fralfaro/DS-Cheat-Sheets/main/docs/examples/scikit-learn/scikit-learn.png")), unsafe_allow_html=True) + + st.sidebar.header('Scikit-Learn Cheat Sheet') + st.sidebar.markdown(''' +[Scikit-learn](https://scikit-learn.org/) is an open source Python library that + implements a range of +machine learning, + preprocessing, cross-validation and visualization +algorithms using a unified interface. + ''', unsafe_allow_html=True) + + # Scikit-Learn installation and import + st.sidebar.markdown('__Install and import Scikit-Learn__') + st.sidebar.code('$ pip install scikit-learn') + st.sidebar.code(''' +# Import Scikit-Learn convention +>>> import sklearn +''') + + # Add the Scikit-learn example + st.sidebar.markdown('__Scikit-learn Example__') + st.sidebar.markdown( + '''[](https://streamlit.io/)'''.format( + img_to_bytes("https://raw.githubusercontent.com/fralfaro/DS-Cheat-Sheets/main/docs/examples/scikit-learn/sk-tree.png")), unsafe_allow_html=True) + + st.sidebar.code(""" + from sklearn import neighbors, datasets, preprocessing +from sklearn.model_selection import train_test_split +from sklearn.metrics import accuracy_score + +# Load the Iris dataset +iris = datasets.load_iris() + +# Split the dataset into features (X) and target (y) +X, y = iris.data[:, :2], iris.target + +# Split the dataset into training and testing sets +X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=33) + +# Standardize the features using StandardScaler +scaler = preprocessing.StandardScaler().fit(X_train) +X_train = scaler.transform(X_train) +X_test = scaler.transform(X_test) + +# Create a K-Nearest Neighbors classifier +knn = neighbors.KNeighborsClassifier(n_neighbors=5) + +# Train the classifier on the training data +knn.fit(X_train, y_train) + +# Predict the target values on the test data +y_pred = knn.predict(X_test) + +# Calculate the accuracy of the classifier +accuracy = accuracy_score(y_test, y_pred) +""") + return None + + +# Define the cs_body() function +def cs_body(): + """ + Create content sections for the main body of the Streamlit cheat sheet with Scikit-learn examples. + """ + col1, col2, col3 = st.columns(3) # Create columns for layout + + ####################################### + # COLUMN 1 + ####################################### + + # Loading The Data + col1.subheader('Loading The Data') + col1.code(''' + from sklearn import datasets + + # Load the Iris dataset + iris = datasets.load_iris() + + # Split the dataset into features (X) and target (y) + X, y = iris.data, iris.target + + # Print the lengths of X and y + print("Size of X:", X.shape) # (150, 4) + print("Size of y:", y.shape) # (150, ) + ''') + + # Training And Test Data + col1.subheader('Training And Test Data') + col1.code(''' + # Import train_test_split from sklearn + from sklearn.model_selection import train_test_split + + # Split the data into training and test sets with test_size=0.2 (20% for test set) + X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0) + ''') + + # Create instances of the models + col1.subheader('Create instances of the models') + col1.code(''' + # Import necessary classes from sklearn libraries + from sklearn.linear_model import LogisticRegression + from sklearn.neighbors import KNeighborsClassifier + from sklearn.svm import SVC + from sklearn.cluster import KMeans + from sklearn.decomposition import PCA + + # Create instances of supervised learning models + # Logistic Regression classifier (max_iter=1000) + lr = LogisticRegression(max_iter=1000) + + # k-Nearest Neighbors classifier with 5 neighbors + knn = KNeighborsClassifier(n_neighbors=5) + + # Support Vector Machine classifier + svc = SVC() + + # Create instances of unsupervised learning models + # k-Means clustering with 3 clusters and 10 initialization attempts + k_means = KMeans(n_clusters=3, n_init=10) + + # Principal Component Analysis with 2 components + pca = PCA(n_components=2) + ''') + + + # Model Fitting + col1.subheader('Model Fitting') + col1.code(''' + # Supervised learning + lr.fit(X_train, y_train) + knn.fit(X_train, y_train) + svc.fit(X_train, y_train) + + # Unsupervised Learning + k_means.fit(X_train) + pca.fit_transform(X_train) + ''') + + # Prediction + col1.subheader('Prediction') + col1.code(''' + # Supervised Estimators + y_pred = svc.predict(X_test) # Predict labels + y_pred = lr.predict(X_test) # Predict labels + y_pred = knn.predict_proba(X_test) # Estimate probability of a label + + # Unsupervised Estimators + y_pred = k_means.predict(X_test) # Predict labels in clustering algos + ''') + + + + + + ####################################### + # COLUMN 2 + ####################################### + + # Preprocessing The Data + + # Standardization + col2.subheader('Standardization') + col2.code(''' + from sklearn.preprocessing import StandardScaler + + # Create an instance of the StandardScaler and fit it to training data + scaler = StandardScaler().fit(X_train) + + # Transform the training and test data using the scaler + standardized_X = scaler.transform(X_train) + standardized_X_test = scaler.transform(X_test) + ''') + + # Normalization + col2.subheader('Normalization') + col2.code(''' + from sklearn.preprocessing import Normalizer + scaler = Normalizer().fit(X_train) + normalized_X = scaler.transform(X_train) + normalized_X_test = scaler.transform(X_test) + ''') + + # Binarization + col2.subheader('Binarization') + col2.code(''' + import numpy as np + from sklearn.preprocessing import Binarizer + + # Create a sample data array + data = np.array([[1.5, 2.7, 0.8], + [0.2, 3.9, 1.2], + [4.1, 1.0, 2.5]]) + + # Create a Binarizer instance with a threshold of 2.0 + binarizer = Binarizer(threshold=2.0) + + # Apply binarization to the data + binarized_data = binarizer.transform(data) + ''') + + # Encoding Categorical Features + col2.subheader('Encoding Categorical Features') + col2.code(''' + from sklearn.preprocessing import LabelEncoder + + # Sample data: categorical labels + labels = ['cat', 'dog', 'dog', 'fish', 'cat', 'dog', 'fish'] + + # Create a LabelEncoder instance + label_encoder = LabelEncoder() + + # Fit and transform the labels + encoded_labels = label_encoder.fit_transform(labels) + ''') + + # Imputing Missing Values + col2.subheader('Imputing Missing Values') + col2.code(''' + import numpy as np + from sklearn.impute import SimpleImputer + + # Sample data with missing values + data = np.array([[1.0, 2.0, np.nan], + [4.0, np.nan, 6.0], + [7.0, 8.0, 9.0]]) + + # Create a SimpleImputer instance with strategy='mean' + imputer = SimpleImputer(strategy='mean') + + # Fit and transform the imputer on the data + imputed_data = imputer.fit_transform(data) + ''') + + # Generating Polynomial Features + col2.subheader('Generating Polynomial Features') + col2.code(''' + import numpy as np + from sklearn.preprocessing import PolynomialFeatures + + # Sample data + data = np.array([[1, 2], + [3, 4], + [5, 6]]) + + # Create a PolynomialFeatures instance of degree 2 + poly = PolynomialFeatures(degree=2) + + # Transform the data to include polynomial features + poly_data = poly.fit_transform(data) + ''') + + + + ####################################### + # COLUMN 3 + ####################################### + + # Comparison operations + # Classification Metrics + col3.subheader('Classification Metrics') + col3.code(''' + from sklearn.metrics import accuracy_score, classification_report, confusion_matrix + + # Accuracy Score + accuracy_knn = knn.score(X_test, y_test) + print("Accuracy Score (knn):", knn.score(X_test, y_test)) + + accuracy_y_pred = accuracy_score(y_test, y_pred_lr) + print("Accuracy Score (y_pred):", accuracy_y_pred) + + # Classification Report + classification_rep_y_pred = classification_report(y_test, y_pred_lr) + print("Classification Report (y_pred):", classification_rep_y_pred) + + classification_rep_y_pred_lr = classification_report(y_test, y_pred_lr) + print("Classification Report (y_pred_lr):", classification_rep_y_pred_lr) + + # Confusion Matrix + conf_matrix_y_pred_lr = confusion_matrix(y_test, y_pred_lr) + print("Confusion Matrix (y_pred_lr):", conf_matrix_y_pred_lr) + ''') + + # Regression Metrics + col3.subheader('Regression Metrics') + col3.code(''' + from sklearn.metrics import mean_absolute_error, mean_squared_error, r2_score + + # Data: True/Predicted values + y_true = [3, -0.5, 2] + y_pred = [2.8, -0.3, 1.8] + + # Calculate Mean Absolute Error + mae = mean_absolute_error(y_true, y_pred) + print("Mean Absolute Error:", mae) + + # Calculate Mean Squared Error + mse = mean_squared_error(y_true, y_pred) + print("Mean Squared Error:", mse) + + # Calculate R² Score + r2 = r2_score(y_true, y_pred) + print("R² Score:", r2) + ''') + + # Clustering Metrics + col3.subheader('Clustering Metrics') + col3.code(''' + from sklearn.metrics import adjusted_rand_score, homogeneity_score, v_measure_score + + # Adjusted Rand Index + adjusted_rand_index = adjusted_rand_score(y_test, y_pred_kmeans) + print("Adjusted Rand Index:", adjusted_rand_index) + + # Homogeneity Score + homogeneity = homogeneity_score(y_test, y_pred_kmeans) + print("Homogeneity Score:", homogeneity) + + # V-Measure Score + v_measure = v_measure_score(y_test, y_pred_kmeans) + print("V-Measure Score:", v_measure) + ''') + + # Cross-Validation + col3.subheader('Cross-Validation') + col3.code(''' + # Import necessary library + from sklearn.model_selection import cross_val_score + + # Cross-validation with KNN estimator + knn_scores = cross_val_score(knn, X_train, y_train, cv=4) + print(knn_scores) + + # Cross-validation with Linear Regression estimator + lr_scores = cross_val_score(lr, X, y, cv=2) + print(lr_scores) + ''') + + # Grid Search + col3.subheader('Grid Search') + col3.code(''' + # Import necessary library + from sklearn.model_selection import GridSearchCV + + # Define parameter grid + params = { + 'n_neighbors': np.arange(1, 3), + 'weights': ['uniform', 'distance'] + } + + # Create GridSearchCV object + grid = GridSearchCV(estimator=knn, param_grid=params) + + # Fit the grid to the data + grid.fit(X_train, y_train) + + # Print the best parameters found + print("Best parameters:", grid.best_params_) + + # Print the best cross-validation score + print("Best cross-validation score:", grid.best_score_) + + # Print the accuracy on the test set using the best parameters + best_knn = grid.best_estimator_ + test_accuracy = best_knn.score(X_test, y_test) + print("Test set accuracy:", test_accuracy) + ''') + + # Asking for Help + col1.subheader('Asking for Help') + col1.code(''' + import sklearn.cluster + + # Use the help() function to get information about the KMeans class + help(sklearn.cluster.KMeans) + ''') + + + +# Run the main function if the script is executed directly +if __name__ == '__main__': + main() diff --git a/docs/examples/scikit-learn/sklearn.ipynb b/docs/examples/scikit-learn/sklearn.ipynb new file mode 100644 index 0000000..17125d1 --- /dev/null +++ b/docs/examples/scikit-learn/sklearn.ipynb @@ -0,0 +1,889 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "e0df1e26", + "metadata": {}, + "source": [ + "\"Open\n", + "\n", + "\n", + "# Scikit-Learn Cheat Sheet\n", + "\n", + "\"numpy\n", + "\n", + "[Scikit-learn](https://scikit-learn.org/) is an open source Python library that\n", + " implements a range of\n", + "machine learning,\n", + " preprocessing, cross-validation and visualization\n", + "algorithms using a unified interface." + ] + }, + { + "cell_type": "markdown", + "id": "22e2ffce", + "metadata": {}, + "source": [ + "## Install and import Scikit-Learn\n", + "\n", + "`\n", + "$ pip install scikit-Learn\n", + "`" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "3a0de1af", + "metadata": {}, + "outputs": [], + "source": [ + "# Import Scikit-Learn convention\n", + "import sklearn" + ] + }, + { + "cell_type": "markdown", + "id": "6d13116a", + "metadata": {}, + "source": [ + "## Scikit-learn Example\n", + "\n", + "\"numpy" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "bb151a39", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Accuracy: 0.631578947368421\n" + ] + } + ], + "source": [ + "from sklearn import neighbors, datasets, preprocessing\n", + "from sklearn.model_selection import train_test_split\n", + "from sklearn.metrics import accuracy_score\n", + "\n", + "# Load the Iris dataset\n", + "iris = datasets.load_iris()\n", + "\n", + "# Split the dataset into features (X) and target (y)\n", + "X, y = iris.data[:, :2], iris.target\n", + "\n", + "# Split the dataset into training and testing sets\n", + "X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=33)\n", + "\n", + "# Standardize the features using StandardScaler\n", + "scaler = preprocessing.StandardScaler().fit(X_train)\n", + "X_train = scaler.transform(X_train)\n", + "X_test = scaler.transform(X_test)\n", + "\n", + "# Create a K-Nearest Neighbors classifier\n", + "knn = neighbors.KNeighborsClassifier(n_neighbors=5)\n", + "\n", + "# Train the classifier on the training data\n", + "knn.fit(X_train, y_train)\n", + "\n", + "# Predict the target values on the test data\n", + "y_pred = knn.predict(X_test)\n", + "\n", + "# Calculate the accuracy of the classifier\n", + "accuracy = accuracy_score(y_test, y_pred)\n", + "\n", + "# Print the accuracy\n", + "print(\"Accuracy:\", accuracy)" + ] + }, + { + "cell_type": "markdown", + "id": "1844fe7b", + "metadata": {}, + "source": [ + "## Loading The Data\n" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "c736518f", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Size of X: (150, 4)\n", + "Size of y: (150,)\n" + ] + } + ], + "source": [ + "from sklearn import datasets\n", + "\n", + "# Load the Iris dataset\n", + "iris = datasets.load_iris()\n", + "\n", + "# Split the dataset into features (X) and target (y)\n", + "X, y = iris.data, iris.target\n", + "\n", + "# Print the lengths of X and y\n", + "print(\"Size of X:\", X.shape) # (150, 4)\n", + "print(\"Size of y:\", y.shape) # (150, )" + ] + }, + { + "cell_type": "markdown", + "id": "b288da8f", + "metadata": {}, + "source": [ + "## Training And Test Data\n" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "29b47452", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Size of X_train: (120, 4)\n", + "Size of X_test: (30, 4)\n", + "Size of y_train: (120,)\n", + "Size of y_test: (30,)\n" + ] + } + ], + "source": [ + "# Import train_test_split from sklearn\n", + "from sklearn.model_selection import train_test_split\n", + "\n", + "# Split the data into training and test sets with test_size=0.2 (20% for test set)\n", + "X, y = iris.data, iris.target\n", + "X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0)\n", + "\n", + "# Print the sizes of the arrays\n", + "print(\"Size of X_train:\", X_train.shape)\n", + "print(\"Size of X_test: \", X_test.shape)\n", + "print(\"Size of y_train:\", y_train.shape)\n", + "print(\"Size of y_test: \", y_test.shape)" + ] + }, + { + "cell_type": "markdown", + "id": "e18e21fc", + "metadata": {}, + "source": [ + "## Create instances of the models\n" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "8559bb3f", + "metadata": {}, + "outputs": [], + "source": [ + "# Import necessary classes from sklearn libraries\n", + "from sklearn.linear_model import LogisticRegression\n", + "from sklearn.neighbors import KNeighborsClassifier\n", + "from sklearn.svm import SVC\n", + "from sklearn.cluster import KMeans\n", + "from sklearn.decomposition import PCA\n", + "\n", + "# Create instances of supervised learning models\n", + "# Logistic Regression classifier (max_iter=1000)\n", + "lr = LogisticRegression(max_iter=1000)\n", + "\n", + "# k-Nearest Neighbors classifier with 5 neighbors\n", + "knn = KNeighborsClassifier(n_neighbors=5)\n", + "\n", + "# Support Vector Machine classifier\n", + "svc = SVC()\n", + "\n", + "# Create instances of unsupervised learning models\n", + "# k-Means clustering with 3 clusters and 10 initialization attempts\n", + "k_means = KMeans(n_clusters=3, n_init=10)\n", + "\n", + "# Principal Component Analysis with 2 components\n", + "pca = PCA(n_components=2)" + ] + }, + { + "cell_type": "markdown", + "id": "c8995fc3", + "metadata": {}, + "source": [ + "## Model Fitting\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "f00a391f", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "lr: LogisticRegression(max_iter=1000)\n", + "knn: KNeighborsClassifier()\n", + "svc: SVC()\n", + "k_means: KMeans(n_clusters=3, n_init=10)\n", + "pca: PCA(n_components=2)\n" + ] + } + ], + "source": [ + "# Fit models to the data\n", + "lr.fit(X_train, y_train)\n", + "knn.fit(X_train, y_train)\n", + "svc.fit(X_train, y_train)\n", + "k_means.fit(X_train)\n", + "pca.fit_transform(X_train)\n", + "\n", + "# Print the instances and models\n", + "print(\"lr:\", lr)\n", + "print(\"knn:\", knn)\n", + "print(\"svc:\", svc)\n", + "print(\"k_means:\", k_means)\n", + "print(\"pca:\", pca)" + ] + }, + { + "cell_type": "markdown", + "id": "5a3a7bb0", + "metadata": {}, + "source": [ + "## Prediction\n" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "3954fe06", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Supervised Estimators:\n", + "SVC predictions: [2 1 0 2 0 2 0 1 1 1 2 1 1 1 1 0 1 1 0 0 2 1 0 0 2 0 0 1 1 0]\n", + "Logistic Regression predictions: [2 1 0 2 0 2 0 1 1 1 2 1 1 1 1 0 1 1 0 0 2 1 0 0 2 0 0 1 1 0]\n", + "KNeighborsClassifier probabilities:\n", + " [[0. 0. 1.]\n", + " [0. 1. 0.]\n", + " [1. 0. 0.]\n", + " [0. 0. 1.]\n", + " [1. 0. 0.]] \n", + " ...\n", + "\n", + "Unsupervised Estimators:\n", + "KMeans predictions: [2 2 0 1 0 1 0 2 2 2 1 2 2 2 2 0 2 2 0 0 2 2 0 0 2 0 0 2 2 0]\n" + ] + } + ], + "source": [ + "# Predict using different supervised estimators\n", + "y_pred_svc = svc.predict(X_test)\n", + "y_pred_lr = lr.predict(X_test)\n", + "y_pred_knn_proba = knn.predict_proba(X_test)\n", + "\n", + "\n", + "# Predict labels using KMeans in clustering algorithms\n", + "y_pred_kmeans = k_means.predict(X_test)\n", + "\n", + "# Print the results\n", + "print(\"Supervised Estimators:\")\n", + "print(\"SVC predictions:\", y_pred_svc)\n", + "print(\"Logistic Regression predictions:\", y_pred_lr)\n", + "print(\"KNeighborsClassifier probabilities:\\n\", y_pred_knn_proba[:5],\"\\n ...\")\n", + "\n", + "print(\"\\nUnsupervised Estimators:\")\n", + "print(\"KMeans predictions:\", y_pred_kmeans)" + ] + }, + { + "cell_type": "markdown", + "id": "fea556d7", + "metadata": {}, + "source": [ + "## Preprocessing The Data\n", + "\n", + "### Standardization" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "75d262ac", + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "Standardized X_train:\n", + " [[ 0.61303014 0.10850105 0.94751783 0.736072 ]\n", + " [-0.56776627 -0.12400121 0.38491447 0.34752959]\n", + " [-0.80392556 1.03851009 -1.30289562 -1.33615415]\n", + " [ 0.25879121 -0.12400121 0.60995581 0.736072 ]\n", + " [ 0.61303014 -0.58900572 1.00377816 1.25412853]] \n", + " ...\n", + "\n", + "Standardized X_test:\n", + " [[-0.09544771 -0.58900572 0.72247648 1.5131568 ]\n", + " [ 0.14071157 -1.98401928 0.10361279 -0.30004108]\n", + " [-0.44968663 2.66602591 -1.35915595 -1.33615415]\n", + " [ 1.6757469 -0.35650346 1.39760052 0.736072 ]\n", + " [-1.04008484 0.80600783 -1.30289562 -1.33615415]] \n", + " ...\n" + ] + } + ], + "source": [ + "from sklearn.preprocessing import StandardScaler\n", + "\n", + "# Create an instance of the StandardScaler and fit it to training data\n", + "scaler = StandardScaler().fit(X_train)\n", + "\n", + "# Transform the training and test data using the scaler\n", + "standardized_X = scaler.transform(X_train)\n", + "standardized_X_test = scaler.transform(X_test)\n", + "\n", + "# Print the variables\n", + "print(\"\\nStandardized X_train:\\n\", standardized_X[:5],\"\\n ...\")\n", + "print(\"\\nStandardized X_test:\\n\", standardized_X_test[:5],\"\\n ...\")" + ] + }, + { + "cell_type": "markdown", + "id": "b58eed58", + "metadata": {}, + "source": [ + "### Normalization" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "32614426", + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "Normalized X_train:\n", + " [[0.69804799 0.338117 0.59988499 0.196326 ]\n", + " [0.69333409 0.38518561 0.57777841 0.1925928 ]\n", + " [0.80641965 0.54278246 0.23262105 0.03101614]\n", + " [0.71171214 0.35002236 0.57170319 0.21001342]\n", + " [0.69417747 0.30370264 0.60740528 0.2386235 ]] \n", + " ...\n", + "\n", + "Normalized X_test:\n", + " [[0.67767924 0.32715549 0.59589036 0.28041899]\n", + " [0.78892752 0.28927343 0.52595168 0.13148792]\n", + " [0.77867447 0.59462414 0.19820805 0.02831544]\n", + " [0.71366557 0.28351098 0.61590317 0.17597233]\n", + " [0.80218492 0.54548574 0.24065548 0.0320874 ]] \n", + " ...\n" + ] + } + ], + "source": [ + "from sklearn.preprocessing import Normalizer\n", + "scaler = Normalizer().fit(X_train)\n", + "normalized_X = scaler.transform(X_train)\n", + "normalized_X_test = scaler.transform(X_test)\n", + "\n", + "# Print the variables\n", + "print(\"\\nNormalized X_train:\\n\", normalized_X[:5],\"\\n ...\")\n", + "print(\"\\nNormalized X_test:\\n\", normalized_X_test[:5],\"\\n ...\")" + ] + }, + { + "cell_type": "markdown", + "id": "e9209670", + "metadata": {}, + "source": [ + "### Binarization" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "0a6367d2", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Original data:\n", + "[[1.5 2.7 0.8]\n", + " [0.2 3.9 1.2]\n", + " [4.1 1. 2.5]]\n", + "\n", + "Binarized data:\n", + "[[0. 1. 0.]\n", + " [0. 1. 0.]\n", + " [1. 0. 1.]]\n" + ] + } + ], + "source": [ + "import numpy as np\n", + "from sklearn.preprocessing import Binarizer\n", + "\n", + "# Create a sample data array\n", + "data = np.array([[1.5, 2.7, 0.8],\n", + " [0.2, 3.9, 1.2],\n", + " [4.1, 1.0, 2.5]])\n", + "\n", + "# Create a Binarizer instance with a threshold of 2.0\n", + "binarizer = Binarizer(threshold=2.0)\n", + "\n", + "# Apply binarization to the data\n", + "binarized_data = binarizer.transform(data)\n", + "\n", + "print(\"Original data:\")\n", + "print(data)\n", + "print(\"\\nBinarized data:\")\n", + "print(binarized_data)" + ] + }, + { + "cell_type": "markdown", + "id": "b4196cfd", + "metadata": {}, + "source": [ + "### Encoding Categorical Features\n" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "id": "b1233524", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Original labels: ['cat', 'dog', 'dog', 'fish', 'cat', 'dog', 'fish']\n", + "Encoded labels: [0 1 1 2 0 1 2]\n", + "Decoded labels: ['cat' 'dog' 'dog' 'fish' 'cat' 'dog' 'fish']\n" + ] + } + ], + "source": [ + "from sklearn.preprocessing import LabelEncoder\n", + "\n", + "# Sample data: categorical labels\n", + "labels = ['cat', 'dog', 'dog', 'fish', 'cat', 'dog', 'fish']\n", + "\n", + "# Create a LabelEncoder instance\n", + "label_encoder = LabelEncoder()\n", + "\n", + "# Fit and transform the labels\n", + "encoded_labels = label_encoder.fit_transform(labels)\n", + "\n", + "# Print the original labels and their encoded versions\n", + "print(\"Original labels:\", labels)\n", + "print(\"Encoded labels:\", encoded_labels)\n", + "\n", + "# Decode the encoded labels back to the original labels\n", + "decoded_labels = label_encoder.inverse_transform(encoded_labels)\n", + "print(\"Decoded labels:\", decoded_labels)" + ] + }, + { + "cell_type": "markdown", + "id": "44306b3f", + "metadata": {}, + "source": [ + "### Imputing Missing Values\n" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "efa74719", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Original data:\n", + "[[ 1. 2. nan]\n", + " [ 4. nan 6.]\n", + " [ 7. 8. 9.]]\n", + "\n", + "Imputed data:\n", + "[[1. 2. 7.5]\n", + " [4. 5. 6. ]\n", + " [7. 8. 9. ]]\n" + ] + } + ], + "source": [ + "import numpy as np\n", + "from sklearn.impute import SimpleImputer\n", + "\n", + "# Sample data with missing values\n", + "data = np.array([[1.0, 2.0, np.nan],\n", + " [4.0, np.nan, 6.0],\n", + " [7.0, 8.0, 9.0]])\n", + "\n", + "# Create a SimpleImputer instance with strategy='mean'\n", + "imputer = SimpleImputer(strategy='mean')\n", + "\n", + "# Fit and transform the imputer on the data\n", + "imputed_data = imputer.fit_transform(data)\n", + "\n", + "print(\"Original data:\")\n", + "print(data)\n", + "print(\"\\nImputed data:\")\n", + "print(imputed_data)" + ] + }, + { + "cell_type": "markdown", + "id": "82c0374a", + "metadata": {}, + "source": [ + "### Generating Polynomial Features" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "id": "55404919", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Original data:\n", + "[[1 2]\n", + " [3 4]\n", + " [5 6]]\n", + "\n", + "Polynomial features:\n", + "[[ 1. 1. 2. 1. 2. 4.]\n", + " [ 1. 3. 4. 9. 12. 16.]\n", + " [ 1. 5. 6. 25. 30. 36.]]\n" + ] + } + ], + "source": [ + "import numpy as np\n", + "from sklearn.preprocessing import PolynomialFeatures\n", + "\n", + "# Sample data\n", + "data = np.array([[1, 2],\n", + " [3, 4],\n", + " [5, 6]])\n", + "\n", + "# Create a PolynomialFeatures instance of degree 2\n", + "poly = PolynomialFeatures(degree=2)\n", + "\n", + "# Transform the data to include polynomial features\n", + "poly_data = poly.fit_transform(data)\n", + "\n", + "print(\"Original data:\")\n", + "print(data)\n", + "print(\"\\nPolynomial features:\")\n", + "print(poly_data)" + ] + }, + { + "cell_type": "markdown", + "id": "f9ee4f6c", + "metadata": {}, + "source": [ + "## Classification Metrics\n" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "id": "fcd4d4a0", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Accuracy Score (knn): 0.9666666666666667\n", + "Accuracy Score (y_pred): 1.0\n", + "Classification Report (y_pred):\n", + " precision recall f1-score support\n", + "\n", + " 0 1.00 1.00 1.00 11\n", + " 1 1.00 1.00 1.00 13\n", + " 2 1.00 1.00 1.00 6\n", + "\n", + " accuracy 1.00 30\n", + " macro avg 1.00 1.00 1.00 30\n", + "weighted avg 1.00 1.00 1.00 30\n", + "\n", + "Classification Report (y_pred_lr):\n", + " precision recall f1-score support\n", + "\n", + " 0 1.00 1.00 1.00 11\n", + " 1 1.00 1.00 1.00 13\n", + " 2 1.00 1.00 1.00 6\n", + "\n", + " accuracy 1.00 30\n", + " macro avg 1.00 1.00 1.00 30\n", + "weighted avg 1.00 1.00 1.00 30\n", + "\n", + "Confusion Matrix (y_pred_lr):\n", + " [[11 0 0]\n", + " [ 0 13 0]\n", + " [ 0 0 6]]\n" + ] + } + ], + "source": [ + "from sklearn.metrics import accuracy_score, classification_report, confusion_matrix\n", + "\n", + "# Accuracy Score\n", + "accuracy_knn = knn.score(X_test, y_test)\n", + "print(\"Accuracy Score (knn):\", knn.score(X_test, y_test))\n", + "\n", + "accuracy_y_pred = accuracy_score(y_test, y_pred_lr)\n", + "print(\"Accuracy Score (y_pred):\", accuracy_y_pred)\n", + "\n", + "# Classification Report\n", + "classification_rep_y_pred = classification_report(y_test, y_pred_lr)\n", + "print(\"Classification Report (y_pred):\\n\", classification_rep_y_pred)\n", + "\n", + "classification_rep_y_pred_lr = classification_report(y_test, y_pred_lr)\n", + "print(\"Classification Report (y_pred_lr):\\n\", classification_rep_y_pred_lr)\n", + "\n", + "# Confusion Matrix\n", + "conf_matrix_y_pred_lr = confusion_matrix(y_test, y_pred_lr)\n", + "print(\"Confusion Matrix (y_pred_lr):\\n\", conf_matrix_y_pred_lr)" + ] + }, + { + "cell_type": "markdown", + "id": "d172e271", + "metadata": {}, + "source": [ + "## Regression Metrics\n" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "id": "0c952c7c", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Mean Absolute Error: 0.20000000000000004\n", + "Mean Squared Error: 0.040000000000000015\n", + "R² Score: 0.9815384615384616\n" + ] + } + ], + "source": [ + "from sklearn.metrics import mean_absolute_error, mean_squared_error, r2_score\n", + "\n", + "# True values (ground truth)\n", + "y_true = [3, -0.5, 2]\n", + "\n", + "# Predicted values\n", + "y_pred = [2.8, -0.3, 1.8]\n", + "\n", + "# Calculate Mean Absolute Error\n", + "mae = mean_absolute_error(y_true, y_pred)\n", + "print(\"Mean Absolute Error:\", mae)\n", + "\n", + "# Calculate Mean Squared Error\n", + "mse = mean_squared_error(y_true, y_pred)\n", + "print(\"Mean Squared Error:\", mse)\n", + "\n", + "# Calculate R² Score\n", + "r2 = r2_score(y_true, y_pred)\n", + "print(\"R² Score:\", r2)" + ] + }, + { + "cell_type": "markdown", + "id": "1ca9d3c1", + "metadata": {}, + "source": [ + "## Clustering Metrics\n" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "id": "162f3aea", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Adjusted Rand Index: 0.7657144139494176\n", + "Homogeneity Score: 0.7553796021571243\n", + "V-Measure Score: 0.8005552543570766\n" + ] + } + ], + "source": [ + "from sklearn.metrics import adjusted_rand_score, homogeneity_score, v_measure_score\n", + "\n", + "# Adjusted Rand Index\n", + "adjusted_rand_index = adjusted_rand_score(y_test, y_pred_kmeans)\n", + "print(\"Adjusted Rand Index:\", adjusted_rand_index)\n", + "\n", + "# Homogeneity Score\n", + "homogeneity = homogeneity_score(y_test, y_pred_kmeans)\n", + "print(\"Homogeneity Score:\", homogeneity)\n", + "\n", + "# V-Measure Score\n", + "v_measure = v_measure_score(y_test, y_pred_kmeans)\n", + "print(\"V-Measure Score:\", v_measure)" + ] + }, + { + "cell_type": "markdown", + "id": "3d91e042", + "metadata": {}, + "source": [ + "## Cross-Validation\n" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "id": "73d8f06c", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[0.96666667 0.93333333 1. 0.93333333]\n", + "[0.96 0.96]\n" + ] + } + ], + "source": [ + "# Import necessary library\n", + "from sklearn.model_selection import cross_val_score\n", + "\n", + "# Cross-validation with KNN estimator\n", + "knn_scores = cross_val_score(knn, X_train, y_train, cv=4)\n", + "print(knn_scores)\n", + "\n", + "# Cross-validation with Linear Regression estimator\n", + "lr_scores = cross_val_score(lr, X, y, cv=2)\n", + "print(lr_scores)" + ] + }, + { + "cell_type": "markdown", + "id": "b948b913", + "metadata": {}, + "source": [ + "## Grid Search" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "id": "b8ee5a12", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Best parameters: {'n_neighbors': 1, 'weights': 'uniform'}\n", + "Best cross-validation score: 0.9416666666666667\n", + "Test set accuracy: 1.0\n" + ] + } + ], + "source": [ + "# Import necessary library\n", + "from sklearn.model_selection import GridSearchCV\n", + "\n", + "# Define parameter grid\n", + "params = {\n", + " 'n_neighbors': np.arange(1, 3),\n", + " 'weights': ['uniform', 'distance']\n", + "}\n", + "\n", + "# Create GridSearchCV object\n", + "grid = GridSearchCV(estimator=knn, param_grid=params)\n", + "\n", + "# Fit the grid to the data\n", + "grid.fit(X_train, y_train)\n", + "\n", + "# Print the best parameters found\n", + "print(\"Best parameters:\", grid.best_params_)\n", + "\n", + "# Print the best cross-validation score\n", + "print(\"Best cross-validation score:\", grid.best_score_)\n", + "\n", + "# Print the accuracy on the test set using the best parameters\n", + "best_knn = grid.best_estimator_\n", + "test_accuracy = best_knn.score(X_test, y_test)\n", + "print(\"Test set accuracy:\", test_accuracy)" + ] + } + ], + "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.8.10" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/docs/examples/scikit-learn/st_sklearn.ipynb b/docs/examples/scikit-learn/st_sklearn.ipynb new file mode 100644 index 0000000..803428c --- /dev/null +++ b/docs/examples/scikit-learn/st_sklearn.ipynb @@ -0,0 +1,525 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "f6ec082e", + "metadata": {}, + "source": [ + "\"Open\n", + "\n", + " \n", + "# Scikit-Learn Cheat Sheet" + ] + }, + { + "cell_type": "markdown", + "id": "7aaaca45", + "metadata": {}, + "source": [ + "
\n", + " \n", + "
\n", + " Note
\n", + " If you want to run this example on Google Colab, follow these detailed steps below:\n", + "
\n", + "
\n", + "\n", + "1. Install the necessary libraries:\n", + "\n", + " ```python\n", + " !pip install streamlit\n", + " ```\n", + "\n", + "2. Create your app by executing the following cell:\n", + "\n", + " ```python\n", + " %%writefile app.py\n", + " import streamlit as st\n", + " import pandas as pd\n", + " # ... (rest of your code)\n", + " ```\n", + "\n", + "3. Start your app by running this cell:\n", + "\n", + " ```python\n", + " !streamlit run app.py & npx localtunnel --port 8501\n", + " ```\n", + "\n", + " ![Example Image](https://raw.githubusercontent.com/fralfaro/DS-Cheat-Sheets/main/docs/images/img_01.png)\n", + "\n", + " * After completing the above steps, click \"**your url is: ...**\" (for example, *https://major-weeks-clap.loca.lt*). \n", + " * In the new window, enter the numbers in the \"**External URL: ...**\" section (for example, **35.230.186.60**). \n", + " * Finally, click **Click to Submit**\n", + "\n", + " ![Example Image](https://raw.githubusercontent.com/fralfaro/DS-Cheat-Sheets/main/docs/images/img_02.png)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "f3cadffb", + "metadata": {}, + "outputs": [], + "source": [ + "!pip install streamlit" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "fceb880b", + "metadata": {}, + "outputs": [], + "source": [ + "%%writefile app.py\n", + "import streamlit as st\n", + "from pathlib import Path\n", + "import base64\n", + "import requests\n", + "\n", + "\n", + "# Initial page config\n", + "st.set_page_config(\n", + " page_title='Scikit-Learn Cheat Sheet',\n", + " layout=\"wide\",\n", + " initial_sidebar_state=\"expanded\",\n", + ")\n", + "\n", + "def main():\n", + " \"\"\"\n", + " Main function to set up the Streamlit app layout.\n", + " \"\"\"\n", + " cs_sidebar()\n", + " cs_body()\n", + " return None\n", + "\n", + "# Define img_to_bytes() function\n", + "def img_to_bytes(img_url):\n", + " response = requests.get(img_url)\n", + " img_bytes = response.content\n", + " encoded = base64.b64encode(img_bytes).decode()\n", + " return encoded\n", + "\n", + "# Define the cs_sidebar() function\n", + "def cs_sidebar():\n", + " \"\"\"\n", + " Populate the sidebar with various content sections related to Scikit-learn.\n", + " \"\"\"\n", + " st.sidebar.markdown(\n", + " '''[](https://streamlit.io/)'''.format(\n", + " img_to_bytes(\"https://raw.githubusercontent.com/fralfaro/DS-Cheat-Sheets/main/docs/examples/scikit-learn/scikit-learn.png\")), unsafe_allow_html=True)\n", + "\n", + " st.sidebar.header('Scikit-Learn Cheat Sheet')\n", + " st.sidebar.markdown('''\n", + "[Scikit-learn](https://scikit-learn.org/) is an open source Python library that\n", + " implements a range of\n", + "machine learning,\n", + " preprocessing, cross-validation and visualization\n", + "algorithms using a unified interface.\n", + " ''', unsafe_allow_html=True)\n", + "\n", + " # Scikit-Learn installation and import\n", + " st.sidebar.markdown('__Install and import Scikit-Learn__')\n", + " st.sidebar.code('$ pip install scikit-learn')\n", + " st.sidebar.code('''\n", + "# Import Scikit-Learn convention\n", + ">>> import sklearn\n", + "''')\n", + "\n", + " # Add the Scikit-learn example\n", + " st.sidebar.markdown('__Scikit-learn Example__')\n", + " st.sidebar.markdown(\n", + " '''[](https://streamlit.io/)'''.format(\n", + " img_to_bytes(\"https://raw.githubusercontent.com/fralfaro/DS-Cheat-Sheets/main/docs/examples/scikit-learn/sk-tree.png\")), unsafe_allow_html=True)\n", + "\n", + " st.sidebar.code(\"\"\"\n", + " from sklearn import neighbors, datasets, preprocessing\n", + "from sklearn.model_selection import train_test_split\n", + "from sklearn.metrics import accuracy_score\n", + "\n", + "# Load the Iris dataset\n", + "iris = datasets.load_iris()\n", + "\n", + "# Split the dataset into features (X) and target (y)\n", + "X, y = iris.data[:, :2], iris.target\n", + "\n", + "# Split the dataset into training and testing sets\n", + "X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=33)\n", + "\n", + "# Standardize the features using StandardScaler\n", + "scaler = preprocessing.StandardScaler().fit(X_train)\n", + "X_train = scaler.transform(X_train)\n", + "X_test = scaler.transform(X_test)\n", + "\n", + "# Create a K-Nearest Neighbors classifier\n", + "knn = neighbors.KNeighborsClassifier(n_neighbors=5)\n", + "\n", + "# Train the classifier on the training data\n", + "knn.fit(X_train, y_train)\n", + "\n", + "# Predict the target values on the test data\n", + "y_pred = knn.predict(X_test)\n", + "\n", + "# Calculate the accuracy of the classifier\n", + "accuracy = accuracy_score(y_test, y_pred)\n", + "\"\"\")\n", + " return None\n", + "\n", + "\n", + "# Define the cs_body() function\n", + "def cs_body():\n", + " \"\"\"\n", + " Create content sections for the main body of the Streamlit cheat sheet with Scikit-learn examples.\n", + " \"\"\"\n", + " col1, col2, col3 = st.columns(3) # Create columns for layout\n", + "\n", + " #######################################\n", + " # COLUMN 1\n", + " #######################################\n", + "\n", + " # Loading The Data\n", + " col1.subheader('Loading The Data')\n", + " col1.code('''\n", + " from sklearn import datasets\n", + "\n", + " # Load the Iris dataset\n", + " iris = datasets.load_iris()\n", + "\n", + " # Split the dataset into features (X) and target (y)\n", + " X, y = iris.data, iris.target\n", + "\n", + " # Print the lengths of X and y\n", + " print(\"Size of X:\", X.shape) # (150, 4)\n", + " print(\"Size of y:\", y.shape) # (150, )\n", + " ''')\n", + "\n", + " # Training And Test Data\n", + " col1.subheader('Training And Test Data')\n", + " col1.code('''\n", + " # Import train_test_split from sklearn\n", + " from sklearn.model_selection import train_test_split\n", + "\n", + " # Split the data into training and test sets with test_size=0.2 (20% for test set)\n", + " X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0)\n", + " ''')\n", + "\n", + " # Create instances of the models\n", + " col1.subheader('Create instances of the models')\n", + " col1.code('''\n", + " # Import necessary classes from sklearn libraries\n", + " from sklearn.linear_model import LogisticRegression\n", + " from sklearn.neighbors import KNeighborsClassifier\n", + " from sklearn.svm import SVC\n", + " from sklearn.cluster import KMeans\n", + " from sklearn.decomposition import PCA\n", + "\n", + " # Create instances of supervised learning models\n", + " # Logistic Regression classifier (max_iter=1000)\n", + " lr = LogisticRegression(max_iter=1000)\n", + "\n", + " # k-Nearest Neighbors classifier with 5 neighbors\n", + " knn = KNeighborsClassifier(n_neighbors=5)\n", + "\n", + " # Support Vector Machine classifier\n", + " svc = SVC()\n", + "\n", + " # Create instances of unsupervised learning models\n", + " # k-Means clustering with 3 clusters and 10 initialization attempts\n", + " k_means = KMeans(n_clusters=3, n_init=10)\n", + "\n", + " # Principal Component Analysis with 2 components\n", + " pca = PCA(n_components=2)\n", + " ''')\n", + "\n", + "\n", + " # Model Fitting\n", + " col1.subheader('Model Fitting')\n", + " col1.code('''\n", + " # Supervised learning\n", + " lr.fit(X_train, y_train)\n", + " knn.fit(X_train, y_train)\n", + " svc.fit(X_train, y_train)\n", + "\n", + " # Unsupervised Learning\n", + " k_means.fit(X_train)\n", + " pca.fit_transform(X_train)\n", + " ''')\n", + "\n", + " # Prediction\n", + " col1.subheader('Prediction')\n", + " col1.code('''\n", + " # Supervised Estimators\n", + " y_pred = svc.predict(X_test) # Predict labels\n", + " y_pred = lr.predict(X_test) # Predict labels\n", + " y_pred = knn.predict_proba(X_test) # Estimate probability of a label\n", + "\n", + " # Unsupervised Estimators\n", + " y_pred = k_means.predict(X_test) # Predict labels in clustering algos\n", + " ''')\n", + "\n", + "\n", + "\n", + "\n", + "\n", + " #######################################\n", + " # COLUMN 2\n", + " #######################################\n", + "\n", + " # Preprocessing The Data\n", + "\n", + " # Standardization\n", + " col2.subheader('Standardization')\n", + " col2.code('''\n", + " from sklearn.preprocessing import StandardScaler\n", + "\n", + " # Create an instance of the StandardScaler and fit it to training data\n", + " scaler = StandardScaler().fit(X_train)\n", + "\n", + " # Transform the training and test data using the scaler\n", + " standardized_X = scaler.transform(X_train)\n", + " standardized_X_test = scaler.transform(X_test)\n", + " ''')\n", + "\n", + " # Normalization\n", + " col2.subheader('Normalization')\n", + " col2.code('''\n", + " from sklearn.preprocessing import Normalizer\n", + " scaler = Normalizer().fit(X_train)\n", + " normalized_X = scaler.transform(X_train)\n", + " normalized_X_test = scaler.transform(X_test)\n", + " ''')\n", + "\n", + " # Binarization\n", + " col2.subheader('Binarization')\n", + " col2.code('''\n", + " import numpy as np\n", + " from sklearn.preprocessing import Binarizer\n", + "\n", + " # Create a sample data array\n", + " data = np.array([[1.5, 2.7, 0.8],\n", + " [0.2, 3.9, 1.2],\n", + " [4.1, 1.0, 2.5]])\n", + "\n", + " # Create a Binarizer instance with a threshold of 2.0\n", + " binarizer = Binarizer(threshold=2.0)\n", + "\n", + " # Apply binarization to the data\n", + " binarized_data = binarizer.transform(data)\n", + " ''')\n", + "\n", + " # Encoding Categorical Features\n", + " col2.subheader('Encoding Categorical Features')\n", + " col2.code('''\n", + " from sklearn.preprocessing import LabelEncoder\n", + "\n", + " # Sample data: categorical labels\n", + " labels = ['cat', 'dog', 'dog', 'fish', 'cat', 'dog', 'fish']\n", + "\n", + " # Create a LabelEncoder instance\n", + " label_encoder = LabelEncoder()\n", + "\n", + " # Fit and transform the labels\n", + " encoded_labels = label_encoder.fit_transform(labels)\n", + " ''')\n", + "\n", + " # Imputing Missing Values\n", + " col2.subheader('Imputing Missing Values')\n", + " col2.code('''\n", + " import numpy as np\n", + " from sklearn.impute import SimpleImputer\n", + "\n", + " # Sample data with missing values\n", + " data = np.array([[1.0, 2.0, np.nan],\n", + " [4.0, np.nan, 6.0],\n", + " [7.0, 8.0, 9.0]])\n", + "\n", + " # Create a SimpleImputer instance with strategy='mean'\n", + " imputer = SimpleImputer(strategy='mean')\n", + "\n", + " # Fit and transform the imputer on the data\n", + " imputed_data = imputer.fit_transform(data)\n", + " ''')\n", + "\n", + " # Generating Polynomial Features\n", + " col2.subheader('Generating Polynomial Features')\n", + " col2.code('''\n", + " import numpy as np\n", + " from sklearn.preprocessing import PolynomialFeatures\n", + "\n", + " # Sample data\n", + " data = np.array([[1, 2],\n", + " [3, 4],\n", + " [5, 6]])\n", + "\n", + " # Create a PolynomialFeatures instance of degree 2\n", + " poly = PolynomialFeatures(degree=2)\n", + "\n", + " # Transform the data to include polynomial features\n", + " poly_data = poly.fit_transform(data)\n", + " ''')\n", + "\n", + "\n", + "\n", + " #######################################\n", + " # COLUMN 3\n", + " #######################################\n", + "\n", + " # Comparison operations\n", + " # Classification Metrics\n", + " col3.subheader('Classification Metrics')\n", + " col3.code('''\n", + " from sklearn.metrics import accuracy_score, classification_report, confusion_matrix\n", + "\n", + " # Accuracy Score\n", + " accuracy_knn = knn.score(X_test, y_test)\n", + " print(\"Accuracy Score (knn):\", knn.score(X_test, y_test))\n", + "\n", + " accuracy_y_pred = accuracy_score(y_test, y_pred_lr)\n", + " print(\"Accuracy Score (y_pred):\", accuracy_y_pred)\n", + "\n", + " # Classification Report\n", + " classification_rep_y_pred = classification_report(y_test, y_pred_lr)\n", + " print(\"Classification Report (y_pred):\", classification_rep_y_pred)\n", + "\n", + " classification_rep_y_pred_lr = classification_report(y_test, y_pred_lr)\n", + " print(\"Classification Report (y_pred_lr):\", classification_rep_y_pred_lr)\n", + "\n", + " # Confusion Matrix\n", + " conf_matrix_y_pred_lr = confusion_matrix(y_test, y_pred_lr)\n", + " print(\"Confusion Matrix (y_pred_lr):\", conf_matrix_y_pred_lr)\n", + " ''')\n", + "\n", + " # Regression Metrics\n", + " col3.subheader('Regression Metrics')\n", + " col3.code('''\n", + " from sklearn.metrics import mean_absolute_error, mean_squared_error, r2_score\n", + "\n", + " # Data: True/Predicted values \n", + " y_true = [3, -0.5, 2]\n", + " y_pred = [2.8, -0.3, 1.8]\n", + "\n", + " # Calculate Mean Absolute Error\n", + " mae = mean_absolute_error(y_true, y_pred)\n", + " print(\"Mean Absolute Error:\", mae)\n", + "\n", + " # Calculate Mean Squared Error\n", + " mse = mean_squared_error(y_true, y_pred)\n", + " print(\"Mean Squared Error:\", mse)\n", + "\n", + " # Calculate R² Score\n", + " r2 = r2_score(y_true, y_pred)\n", + " print(\"R² Score:\", r2)\n", + " ''')\n", + "\n", + " # Clustering Metrics\n", + " col3.subheader('Clustering Metrics')\n", + " col3.code('''\n", + " from sklearn.metrics import adjusted_rand_score, homogeneity_score, v_measure_score\n", + "\n", + " # Adjusted Rand Index\n", + " adjusted_rand_index = adjusted_rand_score(y_test, y_pred_kmeans)\n", + " print(\"Adjusted Rand Index:\", adjusted_rand_index)\n", + "\n", + " # Homogeneity Score\n", + " homogeneity = homogeneity_score(y_test, y_pred_kmeans)\n", + " print(\"Homogeneity Score:\", homogeneity)\n", + "\n", + " # V-Measure Score\n", + " v_measure = v_measure_score(y_test, y_pred_kmeans)\n", + " print(\"V-Measure Score:\", v_measure)\n", + " ''')\n", + "\n", + " # Cross-Validation\n", + " col3.subheader('Cross-Validation')\n", + " col3.code('''\n", + " # Import necessary library\n", + " from sklearn.model_selection import cross_val_score\n", + "\n", + " # Cross-validation with KNN estimator\n", + " knn_scores = cross_val_score(knn, X_train, y_train, cv=4)\n", + " print(knn_scores)\n", + "\n", + " # Cross-validation with Linear Regression estimator\n", + " lr_scores = cross_val_score(lr, X, y, cv=2)\n", + " print(lr_scores)\n", + " ''')\n", + "\n", + " # Grid Search\n", + " col3.subheader('Grid Search')\n", + " col3.code('''\n", + " # Import necessary library\n", + " from sklearn.model_selection import GridSearchCV\n", + "\n", + " # Define parameter grid\n", + " params = {\n", + " 'n_neighbors': np.arange(1, 3),\n", + " 'weights': ['uniform', 'distance']\n", + " }\n", + "\n", + " # Create GridSearchCV object\n", + " grid = GridSearchCV(estimator=knn, param_grid=params)\n", + "\n", + " # Fit the grid to the data\n", + " grid.fit(X_train, y_train)\n", + "\n", + " # Print the best parameters found\n", + " print(\"Best parameters:\", grid.best_params_)\n", + "\n", + " # Print the best cross-validation score\n", + " print(\"Best cross-validation score:\", grid.best_score_)\n", + "\n", + " # Print the accuracy on the test set using the best parameters\n", + " best_knn = grid.best_estimator_\n", + " test_accuracy = best_knn.score(X_test, y_test)\n", + " print(\"Test set accuracy:\", test_accuracy)\n", + " ''')\n", + "\n", + " # Asking for Help\n", + " col1.subheader('Asking for Help')\n", + " col1.code('''\n", + " import sklearn.cluster\n", + "\n", + " # Use the help() function to get information about the KMeans class\n", + " help(sklearn.cluster.KMeans)\n", + " ''')\n", + "\n", + "\n", + "\n", + "# Run the main function if the script is executed directly\n", + "if __name__ == '__main__':\n", + " main()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "5d966598", + "metadata": {}, + "outputs": [], + "source": [ + "!streamlit run app.py & npx localtunnel --port 8501" + ] + } + ], + "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.8.10" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/docs/examples/streamlit/app.py b/docs/examples/streamlit/app.py new file mode 100644 index 0000000..ba9f804 --- /dev/null +++ b/docs/examples/streamlit/app.py @@ -0,0 +1,394 @@ +import streamlit as st +from pathlib import Path +import base64 + +# Initial page config +st.set_page_config( + page_title='Streamlit cheat sheet', + layout="wide", + initial_sidebar_state="expanded", +) + +def main(): + """ + Main function to set up the Streamlit app layout. + """ + cs_sidebar() + cs_body() + return None + + +def img_to_bytes(img_path): + """ + Converts an image to base64 encoded bytes. + + Parameters: + img_path (str): Path to the image file. + + Returns: + str: Base64 encoded image bytes. + """ + img_bytes = Path(img_path).read_bytes() + encoded = base64.b64encode(img_bytes).decode() + return encoded + + +# Define the function for the sidebar +def cs_sidebar(): + """ + Populate the sidebar with various content sections. + """ + # Display Streamlit logo with link + st.sidebar.markdown( + '''[](https://streamlit.io/)'''.format( + img_to_bytes("docs/examples/streamlit/streamlit.png")), unsafe_allow_html=True) + + # Header and summary + st.sidebar.header('Streamlit cheat sheet') + st.sidebar.markdown(''' +Summary of the [docs](https://docs.streamlit.io/), as of [Streamlit v1.25.0](https://www.streamlit.io/). + ''', unsafe_allow_html=True) + + # Installation information + st.sidebar.markdown('__Install and import__') + st.sidebar.code('$ pip install streamlit') + st.sidebar.code(''' +# Import convention +>>> import streamlit as st +''') + + # Adding widgets to sidebar + st.sidebar.markdown('__Add widgets to sidebar__') + st.sidebar.code(''' +# Just add it after st.sidebar: +>>> a = st.sidebar.radio(\'Choose:\',[1,2]) + ''') + + # Magic commands + st.sidebar.markdown('__Magic commands__') + st.sidebar.code(''' +'_This_ is some __Markdown__' +a = 3 +'dataframe:', data +''') + + # Command line commands + st.sidebar.markdown('__Command line__') + st.sidebar.code(''' +$ streamlit --help +$ streamlit run your_script.py +$ streamlit hello +$ streamlit config show +$ streamlit cache clear +$ streamlit docs +$ streamlit --version + ''') + + # Pre-release features + st.sidebar.markdown('__Pre-release features__') + st.sidebar.code(''' +pip uninstall streamlit +pip install streamlit-nightly --upgrade + ''') + st.sidebar.markdown( + 'Learn more about [experimental features](https://docs.streamlit.io/library/advanced-features/prerelease#beta-and-experimental-features)', + unsafe_allow_html=True) + + # Attribution and footer + st.sidebar.markdown('''
''', unsafe_allow_html=True) + st.sidebar.markdown( + '''[Cheat sheet v1.25.0](https://github.com/daniellewisDL/streamlit-cheat-sheet) ''', + unsafe_allow_html=True) + + return None + + +# Define the main body of the cheat sheet +def cs_body(): + """ + Create content sections for the main body of the Streamlit cheat sheet. + """ + col1, col2, col3 = st.columns(3) # Create columns for layout + + ####################################### + # COLUMN 1 + ####################################### + + # Display text + col1.subheader('Display text') + col1.code(''' +# Display fixed width text +st.text('Fixed width text') +# Display Markdown formatted text +st.markdown('_Markdown_') +# Display captions and LaTeX equations +st.caption('Balloons. Hundreds of them...') +st.latex(r\'\'\' e^{i\pi} + 1 = 0 \'\'\') +# Display various objects using st.write +st.write('Most objects') # df, err, func, keras! +st.write(['st', 'is <', 3]) # Display list as text +st.title('My title') +st.header('My header') +st.subheader('My sub') +st.code('for i in range(8): foo()') + ''') + + # Display data + col1.subheader('Display data') + col1.code(''' +# Display DataFrame and table +st.dataframe(my_dataframe) +st.table(data.iloc[0:10]) +# Display JSON and metric +st.json({'foo':'bar','fu':'ba'}) +st.metric(label="Temp", value="273 K", delta="1.2 K") + ''') + + # Display media + col1.subheader('Display media') + col1.code(''' +# Display image, audio, and video +st.image('./header.png') +st.audio(data) +st.video(data) + ''') + + # Columns + col1.subheader('Columns') + col1.code(''' +# Create columns for layout +col1, col2 = st.columns(2) +col1.write('Column 1') +col2.write('Column 2') + +# Create columns with different widths +col1, col2, col3 = st.columns([3,1,1]) +# col1 is wider + +# Use 'with' notation to write content within columns +with col1: + st.write('This is column 1') + ''') + + # Tabs + col1.subheader('Tabs') + col1.code(''' +# Create tabs to organize content +tab1, tab2 = st.tabs(["Tab 1", "Tab2"]) +tab1.write("this is tab 1") +tab2.write("this is tab 2") + +# Use 'with' notation to write content within tabs +with tab1: + st.radio('Select one:', [1, 2]) + ''') + + # Control flow + col1.subheader('Control flow') + col1.code(''' +# Control flow tools +st.stop() # Stop execution immediately +st.experimental_rerun() # Rerun script immediately + +# Group widgets together using st.form +with st.form(key='my_form'): + username = st.text_input('Username') + password = st.text_input('Password') + st.form_submit_button('Login') + ''') + + # Personalize apps for users + col1.subheader('Personalize apps for users') + col1.code(''' +# Display different content based on user +if st.user.email == 'jane@email.com': + display_jane_content() +elif st.user.email == 'adam@foocorp.io': + display_adam_content() +else: + st.write("Please contact us to get access!") + ''') + + ####################################### + # COLUMN 2 + ####################################### + + # Display interactive widgets + col2.subheader('Display interactive widgets') + col2.code(''' +# Display various interactive widgets +st.button('Hit me') +st.data_editor('Edit data', data) +st.checkbox('Check me out') +st.radio('Pick one:', ['nose','ear']) +st.selectbox('Select', [1,2,3]) +st.multiselect('Multiselect', [1,2,3]) +st.slider('Slide me', min_value=0, max_value=10) +st.select_slider('Slide to select', options=[1,'2']) +st.text_input('Enter some text') +st.number_input('Enter a number') +st.text_area('Area for textual entry') +st.date_input('Date input') +st.time_input('Time entry') +st.file_uploader('File uploader') +st.download_button('On the dl', data) +st.camera_input("一二三,茄子!") +st.color_picker('Pick a color') + ''') + + col2.code(''' +# Capture returned widget values in variables +for i in range(int(st.number_input('Num:'))): + foo() +if st.sidebar.selectbox('I:', ['f']) == 'f': + b() +my_slider_val = st.slider('Quinn Mallory', 1, 88) +st.write(slider_val) + ''') + col2.code(''' +# Disable widgets to remove interactivity +st.slider('Pick a number', 0, 100, disabled=True) + ''') + + # Build chat-based apps + col2.subheader('Build chat-based apps') + col2.code(''' +# Create chat message container +with st.chat_message("user"): + st.write("Hello 👋") + st.line_chart(np.random.randn(30, 3)) + +# Display chat input widget +st.chat_input("Say something") + ''') + + col2.markdown( + 'Learn how to [build chat-based apps](https://docs.streamlit.io/knowledge-base/tutorials/build-conversational-apps)', + unsafe_allow_html=True) + + # Mutate data + col2.subheader('Mutate data') + col2.code(''' +# Add rows to DataFrame and chart after showing +element = st.dataframe(df1) +element.add_rows(df2) +element = st.line_chart(df1) +element.add_rows(df2) + ''') + + # Display code + col2.subheader('Display code') + col2.code(''' +st.echo() +with st.echo(): + st.write('Code will be executed and printed') + ''') + + # Placeholders, help, and options + col2.subheader('Placeholders, help, and options') + col2.code(''' +# Replace any single element +element = st.empty() +element.line_chart(...) +element.text_input(...) # Replaces previous. + +# Insert elements out of order +elements = st.container() +elements.line_chart(...) +st.write("Hello") +elements.text_input(...) # Appears above "Hello". + +st.help(pandas.DataFrame) +st.get_option(key) +st.set_option(key, value) +st.set_page_config(layout='wide') +st.experimental_show(objects) +st.experimental_get_query_params() +st.experimental_set_query_params(**params) + ''') + + ####################################### + # COLUMN 3 + ####################################### + + # Connect to data sources + col3.subheader('Connect to data sources') + col3.code(''' +# Connect to various data sources +st.experimental_connection('pets_db', type='sql') +conn = st.experimental_connection('sql') +conn = st.experimental_connection('snowpark') + +class MyConnection(ExperimentalBaseConnection[myconn.MyConnection]): + def _connect(self, **kwargs) -> MyConnection: + return myconn.connect(**self._secrets, **kwargs) + def query(self, query): + return self._instance.query(query) + ''') + + # Optimize performance + col3.subheader('Optimize performance') + col3.write('Cache data objects') + col3.code(''' +# Cache expensive function calls (data) +@st.cache_data +def foo(bar): + return data +d1 = foo(ref1) # Executes foo +d2 = foo(ref1) # Does not execute foo, returns cached value +d3 = foo(ref2) # Different arg, so foo executes + +# Clear cached entries +foo.clear() # Clear cached entries for specific function +st.cache_data.clear() # Clear all cached data entries + ''') + col3.write('Cache global resources') + col3.code(''' +# Cache expensive function calls (non-data) +@st.cache_resource +def foo(bar): + return session +s1 = foo(ref1) # Executes foo +s2 = foo(ref1) # Does not execute foo, returns cached value +s3 = foo(ref2) # Different arg, so foo executes + +# Clear cached entries +foo.clear() # Clear cached entries for specific function +st.cache_resource.clear() # Clear all cached resource entries + ''') + col3.write('Deprecated caching') + col3.code(''' +@st.cache +def foo(bar): + return data +d1 = foo(ref1) # Executes foo +d2 = foo(ref1) # Does not execute foo, returns cached value +d3 = foo(ref2) # Different arg, so foo executes + ''') + + # Display progress and status + col3.subheader('Display progress and status') + col3.code(''' +# Show spinner and progress bar +with st.spinner(text='In progress'): + time.sleep(3) + st.success('Done') +bar = st.progress(50) +time.sleep(3) +bar.progress(100) + +st.balloons() +st.snow() +st.toast('Mr Stay-Puft') +st.error('Error message') +st.warning('Warning message') +st.info('Info message') +st.success('Success message') +st.exception(e) + ''') + + return None + +# Run the main function if the script is executed directly +if __name__ == '__main__': + main() diff --git a/docs/examples/streamlit/streamlit.png b/docs/examples/streamlit/streamlit.png new file mode 100644 index 0000000..8cfb171 Binary files /dev/null and b/docs/examples/streamlit/streamlit.png differ diff --git a/docs/index.md b/docs/index.md new file mode 100644 index 0000000..d6b7e51 --- /dev/null +++ b/docs/index.md @@ -0,0 +1,86 @@ +# Cheat Sheets for Data Science Learning + + + + +This repository serves as a hub for various Cheat Sheets related to +the field of Data Science (with Python). What sets these Cheat Sheets apart is their +multi-dimensional approach to enhancing the learning experience. +Each Cheat Sheet is made available in three distinct formats: **PDF**, **Streamlit**, and **Google Colab**. + +This triad of accessibility ensures that learners can engage with the content in +a way that suits their preferences and learning style. + + +**Content** + + +| Topic | PDF | Streamlit | Google Colab | +|---------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| python | | | Open In Colab | +| numpy | | | Open In Colab | +| pandas | | | Open In Colab | +| matplotlib | | | Open In Colab | +| scikit-learn | | | Open In Colab | + +> **Note**: The PDF format cheat sheets included here are authored by other contributors and have been used as sources of inspiration for the content presented. + +## More Information + +### What is a Cheat Sheet ? + +A cheat sheet is a concise and informative reference guide that provides +quick and easy access to essential information or instructions about a specific topic. + +It's designed to help individuals quickly understand key concepts, commands, formulas, +or procedures without having to search through lengthy documentation or resources. +Cheat sheets are often used as handy reference tools for tasks that require familiarity +with specific details or steps, such as programming languages, software applications, +or academic subjects. They serve as a valuable aid for both beginners and experienced +practitioners by condensing important information into a single, easily digestible format. + +### What is Streamlit ? + + + + +[Streamlit](https://streamlit.io/) is an open-source Python library that simplifies and accelerates the +process of creating interactive web applications for data science and machine learning projects. +It allows developers, data scientists, and researchers to transform data scripts into shareable +web applications quickly and with minimal effort. + + + + +### What is Jupyter Notebook ? + + + + +[Jupyter Notebook](https://jupyter.org/) is an open-source web application that provides +an interactive and flexible environment for creating, sharing, and executing documents that contain live code, equations, visualizations, and explanatory text. It's widely used by researchers, data scientists, educators, and professionals +to develop and present code-based projects, analyses, and reports. + + + + +### What is Google Colab ? + + + + +[Google Colab](https://colab.research.google.com/), short for Google Colaboratory, is a cloud-based, +interactive development environment provided by Google +that enables users to write, execute, and share Python code in a +collaborative and convenient manner. It's particularly popular among researchers, +data scientists, and educators for its ease of use and the fact that it doesn't +require any setup or installation. + + + +## References + +* [Data Science Cheat Sheets - DataCamp](https://www.datacamp.com/cheat-sheet) +* [Cheatsheets and Handouts - Matplotlib](https://matplotlib.org/cheatsheets/) +* [Streamlit Cheat Sheet - Daniel Lewis](https://github.com/daniellewisDL/streamlit-cheat-sheet) + diff --git a/mkdocs.yml b/mkdocs.yml new file mode 100644 index 0000000..17af1ae --- /dev/null +++ b/mkdocs.yml @@ -0,0 +1,109 @@ +# Copyright (c) 2016-2022 Martin Donath + +# Project information +site_name: DS-Cheat-Sheets +site_url: https://github.com/fralfaro/DS-Cheat-Sheets +site_author: Francisco Alfaro +site_description: + +# Repository +repo_name: fralfaro/DS-Cheat-Sheets +repo_url: https://github.com/fralfaro/DS-Cheat-Sheets +edit_uri: '' + + +# Markdown extensions +markdown_extensions: + - attr_list + - admonition + - md_in_html + - pymdownx.arithmatex: + generic: true + - pymdownx.highlight: + anchor_linenums: true + - pymdownx.inlinehilite + - pymdownx.snippets + - pymdownx.superfences + - pymdownx.tasklist + - pymdownx.tabbed + +# Extra javascript +extra_javascript: + - javascripts/mathjax.js + - https://polyfill.io/v3/polyfill.min.js?features=es6 + - https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js + +# Theme +theme: + name: material + language: en + logo: images/python.png + favicon: images/python.png + features: + - navigation.instant + - navigation.top + - content.code.annotate + - search.suggest + - search.highlight + palette: + # Light mode + - media: '(prefers-color-scheme: light)' + scheme: default + primary: black + accent: light blue + toggle: + icon: material/toggle-switch-off-outline + name: Switch to dark mode + + # Dark mode + - media: '(prefers-color-scheme: dark)' + scheme: slate + primary: black + accent: light blue + toggle: + icon: material/toggle-switch + name: Switch to light mode + +# Customization +extra: + social: + - icon: fontawesome/brands/github + link: https://github.com/fralfaro + - icon: fontawesome/brands/gitlab + link: https://gitlab.com/fralfaro + - icon: fontawesome/brands/linkedin + link: https://www.linkedin.com/in/faam/ + - icon: fontawesome/brands/kaggle + link: https://www.kaggle.com/faamds + - icon: fontawesome/brands/medium + link: https://medium.com/@fralfaro + - icon: fontawesome/solid/globe + link: https://fralfaro.github.io/portfolio/ + +# Plugins +plugins: + - mkdocs-jupyter: + kernel_name: python3 + - search + +# TOC +nav: + - Home: index.md + - Examples: + - Jupyter Notebook: + - Python: examples/python/python.ipynb + - Numpy: examples/numpy/numpy.ipynb + - Pandas: examples/pandas/pandas.ipynb + - Matplotlib: examples/matplotlib/matplotlib.ipynb + - Scikit-Learn: examples/scikit-learn/sklearn.ipynb + - Streamlit: + - Python: examples/python/st_python.ipynb + - Numpy: examples/numpy/st_numpy.ipynb + - Pandas: examples/pandas/st_pandas.ipynb + - Matplotlib: examples/matplotlib/st_matplotlib.ipynb + - Scikit-Learn: examples/scikit-learn/st_sklearn.ipynb + + + + + diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..e656fdc --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,12 @@ +[tool.poetry] +name = "docs" +version = "0.1.0" +description = "mkdocs - courses" +authors = ["Francisco Alfaro "] +license = "MIT" +readme = "README.md" + +[tool.poetry.dependencies] +python = "^3.8" +mkdocs-material = "^8.2.15" +mkdocs-jupyter = "^0.21.0"