From ab00b5cd65d77c48872c4c688d9fe9bc0c0fc9ae Mon Sep 17 00:00:00 2001
From: Mirko Birbaumer <mirko.birbaumer@hslu.ch>
Date: Fri, 16 Sep 2022 20:09:36 +0000
Subject: [PATCH] Added Introduction to Numpy and Pandas notebook

---
 ...ck 4 - Convolutional Neural Networks.ipynb |   3 -
 .../Checking_Correct_Installation.ipynb       |   9 +-
 .../Examples script/stinkbug4.JPG             | Bin 31732 -> 0 bytes
 ...ook - Introduction Numpy and Pandas.ipynb} | 804 ++++++++++++++----
 .../Solution - Basics Numpy.ipynb             |   7 +
 5 files changed, 655 insertions(+), 168 deletions(-)
 delete mode 100644 notebooks/Preliminaries_Numpy_Pandas/Examples script/stinkbug4.JPG
 rename notebooks/Preliminaries_Numpy_Pandas/{Examples script/Preliminaries_Numpy_Pandas.ipynb => Jupyter Notebook - Introduction Numpy and Pandas.ipynb} (72%)

diff --git a/notebooks/Convolutional_Neural_Networks/Jupyter Notebook Block 4 - Convolutional Neural Networks.ipynb b/notebooks/Convolutional_Neural_Networks/Jupyter Notebook Block 4 - Convolutional Neural Networks.ipynb
index b0cc622..9cdf02f 100644
--- a/notebooks/Convolutional_Neural_Networks/Jupyter Notebook Block 4 - Convolutional Neural Networks.ipynb	
+++ b/notebooks/Convolutional_Neural_Networks/Jupyter Notebook Block 4 - Convolutional Neural Networks.ipynb	
@@ -30,9 +30,6 @@
      "output_type": "stream",
      "text": [
       "2.7.1\n",
-      "Downloading data from https://www.cs.toronto.edu/~kriz/cifar-10-python.tar.gz\n",
-      "170500096/170498071 [==============================] - 9s 0us/step\n",
-      "170508288/170498071 [==============================] - 9s 0us/step\n",
       "Train: X=(50000, 32, 32, 3), y=(50000, 1)\n",
       "Test: X=(10000, 32, 32, 3), y=(10000, 1)\n",
       "(50000, 1)\n",
diff --git a/notebooks/Preliminaries_Numpy_Pandas/Checking_Correct_Installation.ipynb b/notebooks/Preliminaries_Numpy_Pandas/Checking_Correct_Installation.ipynb
index 9c6d283..9d41c32 100644
--- a/notebooks/Preliminaries_Numpy_Pandas/Checking_Correct_Installation.ipynb
+++ b/notebooks/Preliminaries_Numpy_Pandas/Checking_Correct_Installation.ipynb
@@ -80,7 +80,7 @@
     {
      "data": {
       "text/plain": [
-       "<matplotlib.collections.PathCollection at 0x7fec50d77050>"
+       "<matplotlib.collections.PathCollection at 0x7fd13651a050>"
       ]
      },
      "execution_count": 5,
@@ -105,6 +105,13 @@
     "%matplotlib inline\n",
     "plt.scatter(range(100), np.sin(0.1 * np.array(range(100))))"
    ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": []
   }
  ],
  "metadata": {
diff --git a/notebooks/Preliminaries_Numpy_Pandas/Examples script/stinkbug4.JPG b/notebooks/Preliminaries_Numpy_Pandas/Examples script/stinkbug4.JPG
deleted file mode 100644
index eb88408c8e21bc0f89bb4706c7b25be747d589d0..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 31732
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

diff --git a/notebooks/Preliminaries_Numpy_Pandas/Examples script/Preliminaries_Numpy_Pandas.ipynb b/notebooks/Preliminaries_Numpy_Pandas/Jupyter Notebook - Introduction Numpy and Pandas.ipynb
similarity index 72%
rename from notebooks/Preliminaries_Numpy_Pandas/Examples script/Preliminaries_Numpy_Pandas.ipynb
rename to notebooks/Preliminaries_Numpy_Pandas/Jupyter Notebook - Introduction Numpy and Pandas.ipynb
index e4fc5e5..2a16323 100644
--- a/notebooks/Preliminaries_Numpy_Pandas/Examples script/Preliminaries_Numpy_Pandas.ipynb	
+++ b/notebooks/Preliminaries_Numpy_Pandas/Jupyter Notebook - Introduction Numpy and Pandas.ipynb	
@@ -11,7 +11,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 16,
+   "execution_count": 42,
    "metadata": {},
    "outputs": [
     {
@@ -45,7 +45,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 17,
+   "execution_count": 43,
    "metadata": {},
    "outputs": [
     {
@@ -87,7 +87,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 18,
+   "execution_count": 44,
    "metadata": {},
    "outputs": [
     {
@@ -115,7 +115,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 19,
+   "execution_count": 45,
    "metadata": {},
    "outputs": [
     {
@@ -171,7 +171,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 20,
+   "execution_count": 46,
    "metadata": {},
    "outputs": [],
    "source": [
@@ -221,7 +221,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 21,
+   "execution_count": 47,
    "metadata": {},
    "outputs": [
     {
@@ -230,7 +230,7 @@
        "array(5)"
       ]
      },
-     "execution_count": 21,
+     "execution_count": 47,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -252,7 +252,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 22,
+   "execution_count": 48,
    "metadata": {},
    "outputs": [
     {
@@ -261,7 +261,7 @@
        "0"
       ]
      },
-     "execution_count": 22,
+     "execution_count": 48,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -280,7 +280,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 23,
+   "execution_count": 49,
    "metadata": {},
    "outputs": [
     {
@@ -289,7 +289,7 @@
        "()"
       ]
      },
-     "execution_count": 23,
+     "execution_count": 49,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -311,7 +311,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 24,
+   "execution_count": 50,
    "metadata": {},
    "outputs": [
     {
@@ -320,7 +320,7 @@
        "numpy.int64"
       ]
      },
-     "execution_count": 24,
+     "execution_count": 50,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -355,7 +355,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 25,
+   "execution_count": 51,
    "metadata": {},
    "outputs": [
     {
@@ -364,7 +364,7 @@
        "array([1, 2, 3])"
       ]
      },
-     "execution_count": 25,
+     "execution_count": 51,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -384,7 +384,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 26,
+   "execution_count": 52,
    "metadata": {},
    "outputs": [
     {
@@ -393,7 +393,7 @@
        "(3,)"
       ]
      },
-     "execution_count": 26,
+     "execution_count": 52,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -411,7 +411,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 27,
+   "execution_count": 53,
    "metadata": {},
    "outputs": [
     {
@@ -420,7 +420,7 @@
        "1"
       ]
      },
-     "execution_count": 27,
+     "execution_count": 53,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -442,7 +442,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 28,
+   "execution_count": 54,
    "metadata": {},
    "outputs": [
     {
@@ -451,7 +451,7 @@
        "2"
       ]
      },
-     "execution_count": 28,
+     "execution_count": 54,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -470,7 +470,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 29,
+   "execution_count": 55,
    "metadata": {},
    "outputs": [
     {
@@ -479,7 +479,7 @@
        "array([2, 3])"
       ]
      },
-     "execution_count": 29,
+     "execution_count": 55,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -511,7 +511,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 30,
+   "execution_count": 56,
    "metadata": {},
    "outputs": [
     {
@@ -522,7 +522,7 @@
        "       [7, 8, 9]])"
       ]
      },
-     "execution_count": 30,
+     "execution_count": 56,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -542,7 +542,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 31,
+   "execution_count": 57,
    "metadata": {},
    "outputs": [
     {
@@ -551,7 +551,7 @@
        "2"
       ]
      },
-     "execution_count": 31,
+     "execution_count": 57,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -569,7 +569,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 32,
+   "execution_count": 58,
    "metadata": {},
    "outputs": [
     {
@@ -578,7 +578,7 @@
        "(3, 3)"
       ]
      },
-     "execution_count": 32,
+     "execution_count": 58,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -597,7 +597,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 33,
+   "execution_count": 59,
    "metadata": {},
    "outputs": [
     {
@@ -606,7 +606,7 @@
        "6"
       ]
      },
-     "execution_count": 33,
+     "execution_count": 59,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -627,7 +627,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 34,
+   "execution_count": 60,
    "metadata": {},
    "outputs": [
     {
@@ -663,7 +663,7 @@
        "         [17]]]])"
       ]
      },
-     "execution_count": 34,
+     "execution_count": 60,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -683,7 +683,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 35,
+   "execution_count": 61,
    "metadata": {},
    "outputs": [
     {
@@ -692,7 +692,7 @@
        "(3, 3, 2, 1)"
       ]
      },
-     "execution_count": 35,
+     "execution_count": 61,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -703,7 +703,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 36,
+   "execution_count": 62,
    "metadata": {},
    "outputs": [
     {
@@ -712,7 +712,7 @@
        "4"
       ]
      },
-     "execution_count": 36,
+     "execution_count": 62,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -730,7 +730,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 37,
+   "execution_count": 63,
    "metadata": {},
    "outputs": [
     {
@@ -739,7 +739,7 @@
        "16"
       ]
      },
-     "execution_count": 37,
+     "execution_count": 63,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -763,7 +763,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 38,
+   "execution_count": 64,
    "metadata": {},
    "outputs": [
     {
@@ -772,7 +772,7 @@
        "(4,)"
       ]
      },
-     "execution_count": 38,
+     "execution_count": 64,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -792,7 +792,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 39,
+   "execution_count": 65,
    "metadata": {},
    "outputs": [
     {
@@ -801,7 +801,7 @@
        "array([[1, 2, 3, 4]])"
       ]
      },
-     "execution_count": 39,
+     "execution_count": 65,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -821,7 +821,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 40,
+   "execution_count": 66,
    "metadata": {},
    "outputs": [
     {
@@ -833,7 +833,7 @@
        "       [4]])"
       ]
      },
-     "execution_count": 40,
+     "execution_count": 66,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -857,7 +857,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 41,
+   "execution_count": 67,
    "metadata": {},
    "outputs": [
     {
@@ -866,7 +866,7 @@
        "array([[1, 2, 3, 4]])"
       ]
      },
-     "execution_count": 41,
+     "execution_count": 67,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -878,7 +878,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 42,
+   "execution_count": 68,
    "metadata": {},
    "outputs": [
     {
@@ -887,7 +887,7 @@
        "(1, 4)"
       ]
      },
-     "execution_count": 42,
+     "execution_count": 68,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -898,7 +898,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 43,
+   "execution_count": 69,
    "metadata": {},
    "outputs": [
     {
@@ -910,7 +910,7 @@
        "       [4]])"
       ]
      },
-     "execution_count": 43,
+     "execution_count": 69,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -922,7 +922,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 44,
+   "execution_count": 70,
    "metadata": {},
    "outputs": [
     {
@@ -931,7 +931,7 @@
        "(4, 1)"
       ]
      },
-     "execution_count": 44,
+     "execution_count": 70,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -963,24 +963,27 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 45,
+   "execution_count": 71,
    "metadata": {},
    "outputs": [
     {
      "name": "stdout",
      "output_type": "stream",
      "text": [
-      "1.03 µs ± 447 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)\n"
+      "0.00015544891357421875\n",
+      "[6, 7, 8, 9, 10]\n"
      ]
     }
    ],
    "source": [
-    "%%timeit\n",
+    "import time\n",
+    "start = time.time()\n",
     "values = [1,2,3,4,5]\n",
     "for i in range(len(values)):\n",
     "    values[i] += 5\n",
-    "    \n",
-    "values"
+    "end = time.time()\n",
+    "print(end - start)    \n",
+    "print(values)"
    ]
   },
   {
@@ -1007,22 +1010,25 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 46,
+   "execution_count": 72,
    "metadata": {},
    "outputs": [
     {
      "name": "stdout",
      "output_type": "stream",
      "text": [
-      "3.44 µs ± 427 ns per loop (mean ± std. dev. of 7 runs, 100000 loops each)\n"
+      "0.00020384788513183594\n",
+      "[ 6  7  8  9 10]\n"
      ]
     }
    ],
    "source": [
-    "%%timeit\n",
+    "start = time.time()\n",
     "values = [1,2,3,4,5]\n",
     "values = np.array(values) + 5\n",
-    "values"
+    "end = time.time()\n",
+    "print(end - start) \n",
+    "print(values)"
    ]
   },
   {
@@ -1035,23 +1041,26 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 47,
+   "execution_count": 73,
    "metadata": {},
    "outputs": [
     {
      "name": "stdout",
      "output_type": "stream",
      "text": [
-      "3.78 µs ± 381 ns per loop (mean ± std. dev. of 7 runs, 100000 loops each)\n"
+      "0.00024271011352539062\n",
+      "[ 6  7  8  9 10]\n"
      ]
     }
    ],
    "source": [
-    "%%timeit\n",
+    "start = time.time()\n",
     "values = [1,2,3,4,5]\n",
     "values = np.array(values)\n",
     "values += 5\n",
-    "values"
+    "end = time.time()\n",
+    "print(end - start) \n",
+    "print(values)"
    ]
   },
   {
@@ -1064,7 +1073,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 48,
+   "execution_count": 74,
    "metadata": {},
    "outputs": [
     {
@@ -1073,7 +1082,7 @@
        "array([ 5, 10, 15, 20])"
       ]
      },
-     "execution_count": 48,
+     "execution_count": 74,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -1085,7 +1094,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 49,
+   "execution_count": 75,
    "metadata": {},
    "outputs": [
     {
@@ -1094,7 +1103,7 @@
        "array([ 5, 10, 15, 20])"
       ]
      },
-     "execution_count": 49,
+     "execution_count": 75,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -1118,7 +1127,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 50,
+   "execution_count": 76,
    "metadata": {},
    "outputs": [
     {
@@ -1129,7 +1138,7 @@
        "       [0, 0, 0]])"
       ]
      },
-     "execution_count": 50,
+     "execution_count": 76,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -1160,7 +1169,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 51,
+   "execution_count": 77,
    "metadata": {},
    "outputs": [
     {
@@ -1170,7 +1179,7 @@
        "       [5, 7]])"
       ]
      },
-     "execution_count": 51,
+     "execution_count": 77,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -1182,7 +1191,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 52,
+   "execution_count": 78,
    "metadata": {},
    "outputs": [
     {
@@ -1192,7 +1201,7 @@
        "       [6, 8]])"
       ]
      },
-     "execution_count": 52,
+     "execution_count": 78,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -1204,7 +1213,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 53,
+   "execution_count": 79,
    "metadata": {},
    "outputs": [
     {
@@ -1214,7 +1223,7 @@
        "       [11, 15]])"
       ]
      },
-     "execution_count": 53,
+     "execution_count": 79,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -1232,7 +1241,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 54,
+   "execution_count": 80,
    "metadata": {},
    "outputs": [
     {
@@ -1242,7 +1251,7 @@
        "       [5, 7]])"
       ]
      },
-     "execution_count": 54,
+     "execution_count": 80,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -1254,7 +1263,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 55,
+   "execution_count": 81,
    "metadata": {},
    "outputs": [
     {
@@ -1265,7 +1274,7 @@
        "       [1, 8, 7]])"
       ]
      },
-     "execution_count": 55,
+     "execution_count": 81,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -1277,7 +1286,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 56,
+   "execution_count": 82,
    "metadata": {},
    "outputs": [
     {
@@ -1286,7 +1295,7 @@
        "(2, 2)"
       ]
      },
-     "execution_count": 56,
+     "execution_count": 82,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -1297,7 +1306,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 57,
+   "execution_count": 83,
    "metadata": {},
    "outputs": [
     {
@@ -1306,7 +1315,7 @@
        "(3, 3)"
       ]
      },
-     "execution_count": 57,
+     "execution_count": 83,
      "metadata": {},
      "output_type": "execute_result"
     }
@@ -1317,7 +1326,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 58,
+   "execution_count": 84,
    "metadata": {},
    "outputs": [
     {
@@ -1327,7 +1336,7 @@
      "traceback": [
       "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
       "\u001b[0;31mValueError\u001b[0m                                Traceback (most recent call last)",
-      "\u001b[0;32m<ipython-input-58-e81e582b6fa9>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0ma\u001b[0m \u001b[0;34m+\u001b[0m \u001b[0mc\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m",
+      "\u001b[0;32m<ipython-input-84-e81e582b6fa9>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0ma\u001b[0m \u001b[0;34m+\u001b[0m \u001b[0mc\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m",
       "\u001b[0;31mValueError\u001b[0m: operands could not be broadcast together with shapes (2,2) (3,3) "
      ]
     }
@@ -1338,9 +1347,21 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 85,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "array([[1, 2, 3],\n",
+       "       [4, 5, 6]])"
+      ]
+     },
+     "execution_count": 85,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
    "source": [
     "m = np.array([[1,2,3],[4,5,6]])\n",
     "m"
@@ -1348,9 +1369,21 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 86,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "array([[0.25, 0.5 , 0.75],\n",
+       "       [1.  , 1.25, 1.5 ]])"
+      ]
+     },
+     "execution_count": 86,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
    "source": [
     "n = m * 0.25\n",
     "n"
@@ -1358,18 +1391,42 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 87,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "array([[0.25, 1.  , 2.25],\n",
+       "       [4.  , 6.25, 9.  ]])"
+      ]
+     },
+     "execution_count": 87,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
    "source": [
     "m * n"
    ]
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 88,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "array([[0.25, 1.  , 2.25],\n",
+       "       [4.  , 6.25, 9.  ]])"
+      ]
+     },
+     "execution_count": 88,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
    "source": [
     "np.multiply(m, n)"
    ]
@@ -1385,9 +1442,21 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 89,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "array([[1, 2, 3, 4],\n",
+       "       [5, 6, 7, 8]])"
+      ]
+     },
+     "execution_count": 89,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
    "source": [
     "a = np.array([[1,2,3,4],[5,6,7,8]])\n",
     "a"
@@ -1395,18 +1464,43 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 90,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "(2, 4)"
+      ]
+     },
+     "execution_count": 90,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
    "source": [
     "a.shape"
    ]
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 91,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "array([[ 1,  2,  3],\n",
+       "       [ 4,  5,  6],\n",
+       "       [ 7,  8,  9],\n",
+       "       [10, 11, 12]])"
+      ]
+     },
+     "execution_count": 91,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
    "source": [
     "b = np.array([[1,2,3],[4,5,6],[7,8,9],[10,11,12]])\n",
     "b"
@@ -1414,18 +1508,41 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 92,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "(4, 3)"
+      ]
+     },
+     "execution_count": 92,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
    "source": [
     "b.shape"
    ]
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 93,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "array([[ 70,  80,  90],\n",
+       "       [158, 184, 210]])"
+      ]
+     },
+     "execution_count": 93,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
    "source": [
     "c = np.matmul(a, b)\n",
     "c"
@@ -1433,9 +1550,20 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 94,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "(2, 3)"
+      ]
+     },
+     "execution_count": 94,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
    "source": [
     "c.shape"
    ]
@@ -1449,9 +1577,21 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 95,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "ename": "ValueError",
+     "evalue": "matmul: Input operand 1 has a mismatch in its core dimension 0, with gufunc signature (n?,k),(k,m?)->(n?,m?) (size 2 is different from 3)",
+     "output_type": "error",
+     "traceback": [
+      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
+      "\u001b[0;31mValueError\u001b[0m                                Traceback (most recent call last)",
+      "\u001b[0;32m<ipython-input-95-af3b88aa2232>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mmatmul\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mb\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0ma\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m",
+      "\u001b[0;31mValueError\u001b[0m: matmul: Input operand 1 has a mismatch in its core dimension 0, with gufunc signature (n?,k),(k,m?)->(n?,m?) (size 2 is different from 3)"
+     ]
+    }
+   ],
    "source": [
     "np.matmul(b, a)"
    ]
@@ -1470,9 +1610,21 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 96,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "array([[1, 2],\n",
+       "       [3, 4]])"
+      ]
+     },
+     "execution_count": 96,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
    "source": [
     "a = np.array([[1,2],[3,4]])\n",
     "a"
@@ -1480,27 +1632,63 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 97,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "array([[ 7, 10],\n",
+       "       [15, 22]])"
+      ]
+     },
+     "execution_count": 97,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
    "source": [
     "np.dot(a,a)"
    ]
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 98,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "array([[ 7, 10],\n",
+       "       [15, 22]])"
+      ]
+     },
+     "execution_count": 98,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
    "source": [
     "a.dot(a)"
    ]
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 99,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "array([[ 7, 10],\n",
+       "       [15, 22]])"
+      ]
+     },
+     "execution_count": 99,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
    "source": [
     "np.matmul(a,a)"
    ]
@@ -1527,9 +1715,22 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 100,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "array([[ 1,  2,  3,  4],\n",
+       "       [ 5,  6,  7,  8],\n",
+       "       [ 9, 10, 11, 12]])"
+      ]
+     },
+     "execution_count": 100,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
    "source": [
     "m = np.array([[1,2,3,4], [5,6,7,8], [9,10,11,12]])\n",
     "m"
@@ -1537,9 +1738,23 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 101,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "array([[ 1,  5,  9],\n",
+       "       [ 2,  6, 10],\n",
+       "       [ 3,  7, 11],\n",
+       "       [ 4,  8, 12]])"
+      ]
+     },
+     "execution_count": 101,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
    "source": [
     "m.T"
    ]
@@ -1560,9 +1775,23 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 102,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "array([[  1,   5,   9],\n",
+       "       [  2,   6,  10],\n",
+       "       [  3,   7,  11],\n",
+       "       [  4, 200,  12]])"
+      ]
+     },
+     "execution_count": 102,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
    "source": [
     "m_t = m.T\n",
     "m_t[3][1] = 200\n",
@@ -1571,9 +1800,22 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 103,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "array([[  1,   2,   3,   4],\n",
+       "       [  5,   6,   7, 200],\n",
+       "       [  9,  10,  11,  12]])"
+      ]
+     },
+     "execution_count": 103,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
    "source": [
     "m"
    ]
@@ -1606,9 +1848,23 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 104,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "ename": "FileNotFoundError",
+     "evalue": "[Errno 2] No such file or directory: 'stinkbug4.JPG'",
+     "output_type": "error",
+     "traceback": [
+      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
+      "\u001b[0;31mFileNotFoundError\u001b[0m                         Traceback (most recent call last)",
+      "\u001b[0;32m<ipython-input-104-3d285766ff57>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[1;32m      4\u001b[0m \u001b[0;32mimport\u001b[0m \u001b[0mmatplotlib\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mpyplot\u001b[0m \u001b[0;32mas\u001b[0m \u001b[0mplt\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m      5\u001b[0m \u001b[0;32mimport\u001b[0m \u001b[0mmatplotlib\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mimage\u001b[0m \u001b[0;32mas\u001b[0m \u001b[0mmpimg\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 6\u001b[0;31m \u001b[0mimg\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mmpimg\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mimread\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'stinkbug4.JPG'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m      7\u001b[0m \u001b[0mplt\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mimshow\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mimg\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
+      "\u001b[0;32m/opt/conda/lib/python3.7/site-packages/matplotlib/image.py\u001b[0m in \u001b[0;36mimread\u001b[0;34m(fname, format)\u001b[0m\n\u001b[1;32m   1484\u001b[0m                     \u001b[0mresponse\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mio\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mBytesIO\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mresponse\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mread\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m   1485\u001b[0m                 \u001b[0;32mreturn\u001b[0m \u001b[0mimread\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mresponse\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mformat\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mext\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 1486\u001b[0;31m     \u001b[0;32mwith\u001b[0m \u001b[0mimg_open\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mfname\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32mas\u001b[0m \u001b[0mimage\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m   1487\u001b[0m         return (_pil_png_to_float_array(image)\n\u001b[1;32m   1488\u001b[0m                 \u001b[0;32mif\u001b[0m \u001b[0misinstance\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mimage\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mPIL\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mPngImagePlugin\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mPngImageFile\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
+      "\u001b[0;32m/opt/conda/lib/python3.7/site-packages/PIL/Image.py\u001b[0m in \u001b[0;36mopen\u001b[0;34m(fp, mode, formats)\u001b[0m\n\u001b[1;32m   2889\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m   2890\u001b[0m     \u001b[0;32mif\u001b[0m \u001b[0mfilename\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 2891\u001b[0;31m         \u001b[0mfp\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mbuiltins\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mopen\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mfilename\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m\"rb\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m   2892\u001b[0m         \u001b[0mexclusive_fp\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;32mTrue\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m   2893\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n",
+      "\u001b[0;31mFileNotFoundError\u001b[0m: [Errno 2] No such file or directory: 'stinkbug4.JPG'"
+     ]
+    }
+   ],
    "source": [
     "%matplotlib inline \n",
     "\n",
@@ -1630,9 +1886,21 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 105,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "ename": "ModuleNotFoundError",
+     "evalue": "No module named 'skimage'",
+     "output_type": "error",
+     "traceback": [
+      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
+      "\u001b[0;31mModuleNotFoundError\u001b[0m                       Traceback (most recent call last)",
+      "\u001b[0;32m<ipython-input-105-16d8c7ff678e>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0;32mimport\u001b[0m \u001b[0mskimage\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m      2\u001b[0m \u001b[0;32mfrom\u001b[0m \u001b[0mskimage\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mtransform\u001b[0m \u001b[0;32mimport\u001b[0m \u001b[0mrescale\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m      3\u001b[0m \u001b[0mimg\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mrescale\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mimg\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;36m.2\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m      4\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m      5\u001b[0m \u001b[0mimg\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdelete\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mimg\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0marange\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;36m20\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0maxis\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
+      "\u001b[0;31mModuleNotFoundError\u001b[0m: No module named 'skimage'"
+     ]
+    }
+   ],
    "source": [
     "import skimage\n",
     "from skimage.transform import rescale\n",
@@ -1674,9 +1942,26 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 106,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "[[-0.27  0.45  0.64  0.31]] (1, 4)\n",
+      "[[ 0.02   0.001 -0.03   0.036]\n",
+      " [ 0.04  -0.003  0.025  0.009]\n",
+      " [ 0.012 -0.045  0.28  -0.067]] (3, 4)\n",
+      "Matrix multiplication gives:\n",
+      " [[-0.01299  0.00664  0.13494]] \n",
+      "or, equivalently:\n",
+      " [[-0.01299]\n",
+      " [ 0.00664]\n",
+      " [ 0.13494]]\n"
+     ]
+    }
+   ],
    "source": [
     "inputs = np.array([[-0.27, 0.45, 0.64, 0.31]])\n",
     "print(inputs, inputs.shape)\n",
@@ -1698,9 +1983,26 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 107,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "\n",
+      "Showing some basic math on arrays\n",
+      "Max: 4\n",
+      "Average: 2.0\n",
+      "Max index: 2\n",
+      "\n",
+      "Use numpy to create a [3,3] dimension array with random number\n",
+      "[[0.55382541 0.36160037 0.68662274]\n",
+      " [0.35028249 0.09885074 0.38463975]\n",
+      " [0.10113939 0.74698869 0.02460112]]\n"
+     ]
+    }
+   ],
    "source": [
     "print(\"\\nShowing some basic math on arrays\")\n",
     "\n",
@@ -1737,9 +2039,24 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 108,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "0     1\n",
+      "1     5\n",
+      "2     9\n",
+      "3    15\n",
+      "4    20\n",
+      "5    25\n",
+      "6    25\n",
+      "dtype: int64\n"
+     ]
+    }
+   ],
    "source": [
     "import pandas as pd\n",
     "from pandas import Series, DataFrame\n",
@@ -1759,9 +2076,17 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 109,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "9\n"
+     ]
+    }
+   ],
    "source": [
     "import pandas as pd\n",
     "from pandas import Series, DataFrame\n",
@@ -1780,9 +2105,24 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 110,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "jan     1\n",
+      "feb     5\n",
+      "mar     9\n",
+      "apr    15\n",
+      "mai    20\n",
+      "jun    25\n",
+      "jul    25\n",
+      "dtype: int64\n"
+     ]
+    }
+   ],
    "source": [
     "import pandas as pd\n",
     "from pandas import Series, DataFrame\n",
@@ -1804,9 +2144,17 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 111,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "9\n"
+     ]
+    }
+   ],
    "source": [
     "import pandas as pd\n",
     "from pandas import Series, DataFrame\n",
@@ -1826,9 +2174,24 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 112,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "     Luzern  Basel  Zuerich\n",
+      "jan       1      3        8\n",
+      "feb       5      4        6\n",
+      "mar       9     12       10\n",
+      "apr      15     16       17\n",
+      "mai      20     18       23\n",
+      "jun      25     23       22\n",
+      "jul      25     32       24\n"
+     ]
+    }
+   ],
    "source": [
     "import pandas as pd\n",
     "from pandas import Series, DataFrame\n",
@@ -1855,9 +2218,17 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 113,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Index(['Luzern', 'Basel', 'Zuerich'], dtype='object')\n"
+     ]
+    }
+   ],
    "source": [
     "import pandas as pd\n",
     "from pandas import Series, DataFrame\n",
@@ -1883,9 +2254,24 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 114,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "jan     1\n",
+      "feb     5\n",
+      "mar     9\n",
+      "apr    15\n",
+      "mai    20\n",
+      "jun    25\n",
+      "jul    25\n",
+      "Name: Luzern, dtype: int64\n"
+     ]
+    }
+   ],
    "source": [
     "import pandas as pd\n",
     "from pandas import Series, DataFrame\n",
@@ -1909,9 +2295,24 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 115,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "jan     1\n",
+      "feb     5\n",
+      "mar     9\n",
+      "apr    15\n",
+      "mai    20\n",
+      "jun    25\n",
+      "jul    25\n",
+      "Name: Luzern, dtype: int64\n"
+     ]
+    }
+   ],
    "source": [
     "import pandas as pd\n",
     "from pandas import Series, DataFrame\n",
@@ -1935,9 +2336,20 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 116,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "mai    20\n",
+      "jun    25\n",
+      "jul    25\n",
+      "Name: Luzern, dtype: int64\n"
+     ]
+    }
+   ],
    "source": [
     "import pandas as pd\n",
     "from pandas import Series, DataFrame\n",
@@ -1961,9 +2373,19 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 117,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "     Basel  Zuerich\n",
+      "mai     18       23\n",
+      "jul     32       24\n"
+     ]
+    }
+   ],
    "source": [
     "import pandas as pd\n",
     "from pandas import Series, DataFrame\n",
@@ -1987,9 +2409,17 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 118,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "23\n"
+     ]
+    }
+   ],
    "source": [
     "import pandas as pd\n",
     "from pandas import Series, DataFrame\n",
@@ -2024,9 +2454,17 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 119,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Index(['jan', 'feb', 'mar', 'apr', 'mai', 'jun', 'jul'], dtype='object')\n"
+     ]
+    }
+   ],
    "source": [
     "import pandas as pd\n",
     "from pandas import Series, DataFrame\n",
@@ -2046,9 +2484,17 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 120,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "14.285714285714286\n"
+     ]
+    }
+   ],
    "source": [
     "import pandas as pd\n",
     "from pandas import Series, DataFrame\n",
@@ -2075,9 +2521,24 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 121,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "jan     4.000000\n",
+      "feb     5.000000\n",
+      "mar    10.333333\n",
+      "apr    16.000000\n",
+      "mai    20.333333\n",
+      "jun    23.333333\n",
+      "jul    27.000000\n",
+      "dtype: float64\n"
+     ]
+    }
+   ],
    "source": [
     "import pandas as pd\n",
     "from pandas import Series, DataFrame\n",
@@ -2101,9 +2562,24 @@
   },
   {
    "cell_type": "code",
-   "execution_count": null,
+   "execution_count": 122,
    "metadata": {},
-   "outputs": [],
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "jan     1\n",
+      "feb     4\n",
+      "mar     9\n",
+      "apr    15\n",
+      "mai    18\n",
+      "jun    22\n",
+      "jul    24\n",
+      "dtype: int64\n"
+     ]
+    }
+   ],
    "source": [
     "import pandas as pd\n",
     "from pandas import Series, DataFrame\n",
diff --git a/notebooks/Preliminaries_Numpy_Pandas/Solution - Basics Numpy.ipynb b/notebooks/Preliminaries_Numpy_Pandas/Solution - Basics Numpy.ipynb
index c3aa330..eb5eeee 100644
--- a/notebooks/Preliminaries_Numpy_Pandas/Solution - Basics Numpy.ipynb	
+++ b/notebooks/Preliminaries_Numpy_Pandas/Solution - Basics Numpy.ipynb	
@@ -1481,6 +1481,13 @@
     "avg_kg = t_kg.mean()\n",
     "print(\"\\nAverage Kilometer per liter is: \\n{}\".format(round(avg_kml, 2)), \"\\nAverage weight in kilogram is: \\n{}\".format(round(avg_kg,2)))"
    ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": []
   }
  ],
  "metadata": {
-- 
GitLab