From da0fc99dec414c16e6b16da68324b8db548a4996 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aur=C3=A9lien=20Geron?= Date: Fri, 19 Feb 2016 15:29:24 +0100 Subject: [PATCH] Remove tons of unecessary print() calls --- tools_numpy.ipynb | 931 +++++++++++++++++++++++++++++----------------- 1 file changed, 599 insertions(+), 332 deletions(-) diff --git a/tools_numpy.ipynb b/tools_numpy.ipynb index 0364c03..bd4cfbb 100644 --- a/tools_numpy.ipynb +++ b/tools_numpy.ipynb @@ -64,7 +64,7 @@ }, "outputs": [], "source": [ - "print(np.zeros(5))" + "np.zeros(5)" ] }, { @@ -82,7 +82,7 @@ }, "outputs": [], "source": [ - "print(np.zeros((3,4)))" + "np.zeros((3,4))" ] }, { @@ -110,10 +110,40 @@ "outputs": [], "source": [ "a = np.zeros((3,4))\n", - "print(a)\n", - "print(\"Shape:\", a.shape)\n", - "print(\"Rank:\", a.ndim)\n", - "print(\"Size:\", a.size)" + "a" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "a.shape" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "a.ndim # equal to len(a.shape)" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "a.size" ] }, { @@ -126,13 +156,13 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 9, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(np.zeros((2,3,4)))" + "np.zeros((2,3,4))" ] }, { @@ -145,13 +175,13 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 10, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(type(np.zeros((3,4))))" + "type(np.zeros((3,4)))" ] }, { @@ -166,13 +196,13 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 11, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(np.ones((3,4)))" + "np.ones((3,4))" ] }, { @@ -185,13 +215,13 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 12, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(np.full((3,4), np.pi))" + "np.full((3,4), np.pi)" ] }, { @@ -204,14 +234,14 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": 13, "metadata": { "collapsed": false, "scrolled": true }, "outputs": [], "source": [ - "print(np.empty((2,3)))" + "np.empty((2,3))" ] }, { @@ -224,15 +254,13 @@ }, { "cell_type": "code", - "execution_count": 11, + "execution_count": 14, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "b = np.array([[1,2,3,4], [10, 20, 30, 40]])\n", - "print(type(b))\n", - "print(b)" + "np.array([[1,2,3,4], [10, 20, 30, 40]])" ] }, { @@ -245,14 +273,14 @@ }, { "cell_type": "code", - "execution_count": 12, + "execution_count": 15, "metadata": { "collapsed": false, "scrolled": true }, "outputs": [], "source": [ - "print(np.arange(1, 5))" + "np.arange(1, 5)" ] }, { @@ -264,13 +292,13 @@ }, { "cell_type": "code", - "execution_count": 13, + "execution_count": 16, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(np.arange(1.0, 5.0))" + "np.arange(1.0, 5.0)" ] }, { @@ -282,13 +310,13 @@ }, { "cell_type": "code", - "execution_count": 14, + "execution_count": 17, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(np.arange(1, 5, 0.5))" + "np.arange(1, 5, 0.5)" ] }, { @@ -300,7 +328,7 @@ }, { "cell_type": "code", - "execution_count": 15, + "execution_count": 18, "metadata": { "collapsed": false }, @@ -321,7 +349,7 @@ }, { "cell_type": "code", - "execution_count": 16, + "execution_count": 19, "metadata": { "collapsed": false }, @@ -341,13 +369,13 @@ }, { "cell_type": "code", - "execution_count": 17, + "execution_count": 20, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(np.random.rand(3,4))" + "np.random.rand(3,4)" ] }, { @@ -359,13 +387,13 @@ }, { "cell_type": "code", - "execution_count": 18, + "execution_count": 21, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(np.random.randn(3,4))" + "np.random.randn(3,4)" ] }, { @@ -377,7 +405,7 @@ }, { "cell_type": "code", - "execution_count": 154, + "execution_count": 182, "metadata": { "collapsed": false, "scrolled": false @@ -406,7 +434,7 @@ }, { "cell_type": "code", - "execution_count": 20, + "execution_count": 23, "metadata": { "collapsed": false }, @@ -415,7 +443,7 @@ "def my_function(z, y, x):\n", " return x * y + z\n", "\n", - "print(np.fromfunction(my_function, (3, 2, 10)))" + "np.fromfunction(my_function, (3, 2, 10))" ] }, { @@ -448,7 +476,7 @@ }, { "cell_type": "code", - "execution_count": 21, + "execution_count": 24, "metadata": { "collapsed": false, "scrolled": true @@ -456,8 +484,17 @@ "outputs": [], "source": [ "c = np.arange(1, 5)\n", - "print(c.dtype, c)\n", - "\n", + "print(c.dtype, c)" + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ "c = np.arange(1.0, 5.0)\n", "print(c.dtype, c)" ] @@ -471,7 +508,7 @@ }, { "cell_type": "code", - "execution_count": 22, + "execution_count": 26, "metadata": { "collapsed": false }, @@ -493,14 +530,14 @@ }, { "cell_type": "code", - "execution_count": 23, + "execution_count": 27, "metadata": { "collapsed": false }, "outputs": [], "source": [ "e = np.arange(1, 5, dtype=np.complex64)\n", - "print(e.itemsize)" + "e.itemsize" ] }, { @@ -513,7 +550,7 @@ }, { "cell_type": "code", - "execution_count": 24, + "execution_count": 28, "metadata": { "collapsed": false, "scrolled": false @@ -521,17 +558,30 @@ "outputs": [], "source": [ "f = np.array([[1,2],[1000, 2000]], dtype=np.int32)\n", - "print(\"Array:\")\n", - "print(f)\n", - "print(\"Buffer type:\")\n", - "print(type(f.data))\n", - "\n", + "f.data" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "In python 2, `f.data` is a buffer. In python 3, it is a memoryview." + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ "if (hasattr(f.data, \"tobytes\")):\n", - " data_bytes = f.data.tobytes() # in python 3, f.data is a memoryview\n", + " data_bytes = f.data.tobytes() # python 3\n", "else:\n", - " data_bytes = memoryview(f.data).tobytes() # in python 2, f.data is a buffer\n", - "print(\"Raw data:\")\n", - "print(repr(data_bytes))" + " data_bytes = memoryview(f.data).tobytes() # python 2\n", + "\n", + "data_bytes" ] }, { @@ -552,7 +602,7 @@ }, { "cell_type": "code", - "execution_count": 25, + "execution_count": 30, "metadata": { "collapsed": false }, @@ -565,7 +615,7 @@ }, { "cell_type": "code", - "execution_count": 26, + "execution_count": 31, "metadata": { "collapsed": false }, @@ -578,7 +628,7 @@ }, { "cell_type": "code", - "execution_count": 27, + "execution_count": 32, "metadata": { "collapsed": false, "scrolled": true @@ -600,7 +650,7 @@ }, { "cell_type": "code", - "execution_count": 28, + "execution_count": 33, "metadata": { "collapsed": false, "scrolled": true @@ -621,14 +671,14 @@ }, { "cell_type": "code", - "execution_count": 29, + "execution_count": 34, "metadata": { "collapsed": false }, "outputs": [], "source": [ "g2[1, 2] = 999\n", - "print(g2)" + "g2" ] }, { @@ -640,13 +690,13 @@ }, { "cell_type": "code", - "execution_count": 30, + "execution_count": 35, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(g)" + "g" ] }, { @@ -659,14 +709,13 @@ }, { "cell_type": "code", - "execution_count": 31, + "execution_count": 36, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "g3 = g.ravel()\n", - "print(g3)" + "g.ravel()" ] }, { @@ -679,7 +728,7 @@ }, { "cell_type": "code", - "execution_count": 32, + "execution_count": 37, "metadata": { "collapsed": false, "scrolled": false @@ -725,14 +774,14 @@ }, { "cell_type": "code", - "execution_count": 33, + "execution_count": 38, "metadata": { "collapsed": false }, "outputs": [], "source": [ "h = np.arange(5).reshape(1, 1, 5)\n", - "print(h)" + "h" ] }, { @@ -744,13 +793,13 @@ }, { "cell_type": "code", - "execution_count": 34, + "execution_count": 39, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(h + [10, 20, 30, 40, 50]) # same as: h + [[[10, 20, 30, 40, 50]]]" + "h + [10, 20, 30, 40, 50] # same as: h + [[[10, 20, 30, 40, 50]]]" ] }, { @@ -763,14 +812,14 @@ }, { "cell_type": "code", - "execution_count": 35, + "execution_count": 40, "metadata": { "collapsed": false }, "outputs": [], "source": [ "k = np.arange(6).reshape(2, 3)\n", - "print(k)" + "k" ] }, { @@ -782,13 +831,13 @@ }, { "cell_type": "code", - "execution_count": 36, + "execution_count": 41, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(k + [[100], [200]]) # same as: k + [[100, 100, 100], [200, 200, 200]]" + "k + [[100], [200]] # same as: k + [[100, 100, 100], [200, 200, 200]]" ] }, { @@ -800,13 +849,13 @@ }, { "cell_type": "code", - "execution_count": 37, + "execution_count": 42, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(k + [100, 200, 300]) # after rule 1: [[100, 200, 300]], and after rule 2: [[100, 200, 300], [100, 200, 300]]" + "k + [100, 200, 300] # after rule 1: [[100, 200, 300]], and after rule 2: [[100, 200, 300], [100, 200, 300]]" ] }, { @@ -818,13 +867,13 @@ }, { "cell_type": "code", - "execution_count": 38, + "execution_count": 43, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(k + 1000) # same as: k + [[1000, 1000, 1000], [1000, 1000, 1000]]" + "k + 1000 # same as: k + [[1000, 1000, 1000], [1000, 1000, 1000]]" ] }, { @@ -837,14 +886,14 @@ }, { "cell_type": "code", - "execution_count": 39, + "execution_count": 44, "metadata": { "collapsed": false }, "outputs": [], "source": [ "try:\n", - " print(k + [33, 44])\n", + " k + [33, 44]\n", "except ValueError as e:\n", " print(e)" ] @@ -867,7 +916,7 @@ }, { "cell_type": "code", - "execution_count": 40, + "execution_count": 45, "metadata": { "collapsed": false }, @@ -879,7 +928,7 @@ }, { "cell_type": "code", - "execution_count": 41, + "execution_count": 46, "metadata": { "collapsed": false }, @@ -898,7 +947,7 @@ }, { "cell_type": "code", - "execution_count": 42, + "execution_count": 47, "metadata": { "collapsed": false }, @@ -924,14 +973,14 @@ }, { "cell_type": "code", - "execution_count": 43, + "execution_count": 48, "metadata": { "collapsed": false }, "outputs": [], "source": [ "m = np.array([20, -5, 30, 40])\n", - "print(m < [15, 16, 35, 36])" + "m < [15, 16, 35, 36]" ] }, { @@ -943,13 +992,13 @@ }, { "cell_type": "code", - "execution_count": 44, + "execution_count": 49, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(m < 25) # equivalent to m < [25, 25, 25, 25]" + "m < 25 # equivalent to m < [25, 25, 25, 25]" ] }, { @@ -961,13 +1010,13 @@ }, { "cell_type": "code", - "execution_count": 45, + "execution_count": 50, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(m[m < 25])" + "m[m < 25]" ] }, { @@ -989,7 +1038,7 @@ }, { "cell_type": "code", - "execution_count": 46, + "execution_count": 51, "metadata": { "collapsed": false }, @@ -1011,7 +1060,7 @@ }, { "cell_type": "code", - "execution_count": 47, + "execution_count": 52, "metadata": { "collapsed": false }, @@ -1030,36 +1079,36 @@ }, { "cell_type": "code", - "execution_count": 48, + "execution_count": 53, "metadata": { "collapsed": false }, "outputs": [], "source": [ "c=np.arange(24).reshape(2,3,4)\n", - "print(c)" + "c" ] }, { "cell_type": "code", - "execution_count": 49, + "execution_count": 54, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(c.sum(axis=0)) # sum across matrices" + "c.sum(axis=0) # sum across matrices" ] }, { "cell_type": "code", - "execution_count": 50, + "execution_count": 55, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(c.sum(axis=1)) # sum across rows" + "c.sum(axis=1) # sum across rows" ] }, { @@ -1071,14 +1120,24 @@ }, { "cell_type": "code", - "execution_count": 51, + "execution_count": 56, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(c.sum(axis=(0,2))) # sum across matrices and columns\n", - "print(0+1+2+3 + 12+13+14+15, 4+5+6+7 + 16+17+18+19, 8+9+10+11 + 20+21+22+23)" + "c.sum(axis=(0,2)) # sum across matrices and columns" + ] + }, + { + "cell_type": "code", + "execution_count": 57, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "0+1+2+3 + 12+13+14+15, 4+5+6+7 + 16+17+18+19, 8+9+10+11 + 20+21+22+23" ] }, { @@ -1091,14 +1150,14 @@ }, { "cell_type": "code", - "execution_count": 52, + "execution_count": 58, "metadata": { "collapsed": false }, "outputs": [], "source": [ "a = np.array([[-2.5, 3.1, 7], [10, 11, 12]])\n", - "print(np.square(a))" + "np.square(a)" ] }, { @@ -1110,7 +1169,7 @@ }, { "cell_type": "code", - "execution_count": 53, + "execution_count": 59, "metadata": { "collapsed": false }, @@ -1133,7 +1192,7 @@ }, { "cell_type": "code", - "execution_count": 54, + "execution_count": 60, "metadata": { "collapsed": false }, @@ -1141,40 +1200,40 @@ "source": [ "a = np.array([1, -2, 3, 4])\n", "b = np.array([2, 8, -1, 7])\n", - "print(np.add(a, b)) # equivalent to a + b" + "np.add(a, b) # equivalent to a + b" ] }, { "cell_type": "code", - "execution_count": 55, + "execution_count": 61, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(np.greater(a, b)) # equivalent to a > b" + "np.greater(a, b) # equivalent to a > b" ] }, { "cell_type": "code", - "execution_count": 56, + "execution_count": 62, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(np.maximum(a, b))" + "np.maximum(a, b)" ] }, { "cell_type": "code", - "execution_count": 57, + "execution_count": 63, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(np.copysign(a, b))" + "np.copysign(a, b)" ] }, { @@ -1188,69 +1247,69 @@ }, { "cell_type": "code", - "execution_count": 58, + "execution_count": 64, "metadata": { "collapsed": false }, "outputs": [], "source": [ "a = np.array([1, 5, 3, 19, 13, 7, 3])\n", - "print(a[3])" + "a[3]" ] }, { "cell_type": "code", - "execution_count": 59, + "execution_count": 65, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(a[2:5])" + "a[2:5]" ] }, { "cell_type": "code", - "execution_count": 60, + "execution_count": 66, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(a[2:-1])" + "a[2:-1]" ] }, { "cell_type": "code", - "execution_count": 61, + "execution_count": 67, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(a[:2])" + "a[:2]" ] }, { "cell_type": "code", - "execution_count": 62, + "execution_count": 68, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(a[2::2])" + "a[2::2]" ] }, { "cell_type": "code", - "execution_count": 63, + "execution_count": 69, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(a[::-1])" + "a[::-1]" ] }, { @@ -1262,14 +1321,14 @@ }, { "cell_type": "code", - "execution_count": 64, + "execution_count": 70, "metadata": { "collapsed": false }, "outputs": [], "source": [ "a[3]=999\n", - "print(a)" + "a" ] }, { @@ -1281,14 +1340,14 @@ }, { "cell_type": "code", - "execution_count": 65, + "execution_count": 71, "metadata": { "collapsed": false }, "outputs": [], "source": [ "a[2:5] = [997, 998, 999]\n", - "print(a)" + "a" ] }, { @@ -1301,14 +1360,14 @@ }, { "cell_type": "code", - "execution_count": 66, + "execution_count": 72, "metadata": { "collapsed": false }, "outputs": [], "source": [ "a[2:5] = -1\n", - "print(a)" + "a" ] }, { @@ -1320,7 +1379,7 @@ }, { "cell_type": "code", - "execution_count": 67, + "execution_count": 73, "metadata": { "collapsed": false, "scrolled": false @@ -1342,7 +1401,7 @@ }, { "cell_type": "code", - "execution_count": 68, + "execution_count": 74, "metadata": { "collapsed": false }, @@ -1363,7 +1422,7 @@ }, { "cell_type": "code", - "execution_count": 69, + "execution_count": 75, "metadata": { "collapsed": false }, @@ -1371,19 +1430,19 @@ "source": [ "a_slice = a[2:6]\n", "a_slice[1] = 1000\n", - "print(a) # the original array was modified!" + "a # the original array was modified!" ] }, { "cell_type": "code", - "execution_count": 70, + "execution_count": 76, "metadata": { "collapsed": false }, "outputs": [], "source": [ "a[3] = 2000\n", - "print(a_slice) # similarly, modifying the original array modifies the slice!" + "a_slice # similarly, modifying the original array modifies the slice!" ] }, { @@ -1395,7 +1454,7 @@ }, { "cell_type": "code", - "execution_count": 71, + "execution_count": 77, "metadata": { "collapsed": false }, @@ -1403,19 +1462,19 @@ "source": [ "another_slice = a[2:6].copy()\n", "another_slice[1] = 3000\n", - "print(a) # the original array is untouched" + "a # the original array is untouched" ] }, { "cell_type": "code", - "execution_count": 72, + "execution_count": 78, "metadata": { "collapsed": false }, "outputs": [], "source": [ "a[3] = 4000\n", - "print(another_slice) # similary, modifying the original array does not affect the slice copy" + "another_slice # similary, modifying the original array does not affect the slice copy" ] }, { @@ -1428,47 +1487,47 @@ }, { "cell_type": "code", - "execution_count": 73, + "execution_count": 79, "metadata": { "collapsed": false }, "outputs": [], "source": [ "b = np.arange(48).reshape(4, 12)\n", - "print(b)" + "b" ] }, { "cell_type": "code", - "execution_count": 74, + "execution_count": 80, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(b[1, 2]) # row 1, col 2" + "b[1, 2] # row 1, col 2" ] }, { "cell_type": "code", - "execution_count": 75, + "execution_count": 81, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(b[1, :]) # row 1, all columns" + "b[1, :] # row 1, all columns" ] }, { "cell_type": "code", - "execution_count": 76, + "execution_count": 82, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(b[:, 1]) # all rows, column 1" + "b[:, 1] # all rows, column 1" ] }, { @@ -1480,15 +1539,25 @@ }, { "cell_type": "code", - "execution_count": 77, + "execution_count": 83, "metadata": { "collapsed": false, "scrolled": true }, "outputs": [], "source": [ - "print(b[1, :])\n", - "print(b[1:2, :])" + "b[1, :]" + ] + }, + { + "cell_type": "code", + "execution_count": 84, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "b[1:2, :]" ] }, { @@ -1508,25 +1577,25 @@ }, { "cell_type": "code", - "execution_count": 78, + "execution_count": 85, "metadata": { "collapsed": false, "scrolled": true }, "outputs": [], "source": [ - "print(b[(0,2), 2:5]) # rows 0 and 2, columns 2 to 4 (5-1)" + "b[(0,2), 2:5] # rows 0 and 2, columns 2 to 4 (5-1)" ] }, { "cell_type": "code", - "execution_count": 79, + "execution_count": 86, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(b[:, (-1, 2, -1)]) # all rows, columns -1 (last), 2 and -1 (again, and in this order)" + "b[:, (-1, 2, -1)] # all rows, columns -1 (last), 2 and -1 (again, and in this order)" ] }, { @@ -1538,13 +1607,13 @@ }, { "cell_type": "code", - "execution_count": 80, + "execution_count": 87, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(b[(-1, 2, -1, 2), (5, 9, 1, 9)]) # returns a 1D array with b[-1, 5], b[2, 9], b[-1, 1] and b[2, 9] (again)" + "b[(-1, 2, -1, 2), (5, 9, 1, 9)] # returns a 1D array with b[-1, 5], b[2, 9], b[-1, 1] and b[2, 9] (again)" ] }, { @@ -1557,36 +1626,36 @@ }, { "cell_type": "code", - "execution_count": 81, + "execution_count": 88, "metadata": { "collapsed": false }, "outputs": [], "source": [ "c = b.reshape(4,2,6)\n", - "print(c)" + "c" ] }, { "cell_type": "code", - "execution_count": 82, + "execution_count": 89, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(c[2, 1, 4]) # matrix 2, row 1, col 4" + "c[2, 1, 4] # matrix 2, row 1, col 4" ] }, { "cell_type": "code", - "execution_count": 83, + "execution_count": 90, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(c[2, :, 3]) # matrix 2, all rows, col 3" + "c[2, :, 3] # matrix 2, all rows, col 3" ] }, { @@ -1598,13 +1667,13 @@ }, { "cell_type": "code", - "execution_count": 84, + "execution_count": 91, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(c[2, 1]) # Return matrix 2, row 1, all columns. This is equivalent to c[2, 1, :]" + "c[2, 1] # Return matrix 2, row 1, all columns. This is equivalent to c[2, 1, :]" ] }, { @@ -1617,47 +1686,47 @@ }, { "cell_type": "code", - "execution_count": 85, + "execution_count": 92, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(c[2, ...]) # matrix 2, all rows, all columns. This is equivalent to c[2, :, :]" + "c[2, ...] # matrix 2, all rows, all columns. This is equivalent to c[2, :, :]" ] }, { "cell_type": "code", - "execution_count": 86, + "execution_count": 93, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(c[2, 1, ...]) # matrix 2, row 1, all columns. This is equivalent to c[2, 1, :]" + "c[2, 1, ...] # matrix 2, row 1, all columns. This is equivalent to c[2, 1, :]" ] }, { "cell_type": "code", - "execution_count": 87, + "execution_count": 94, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(c[2, ..., 3]) # matrix 2, all rows, column 3. This is equivalent to c[2, :, 3]" + "c[2, ..., 3] # matrix 2, all rows, column 3. This is equivalent to c[2, :, 3]" ] }, { "cell_type": "code", - "execution_count": 88, + "execution_count": 95, "metadata": { "collapsed": false, "scrolled": false }, "outputs": [], "source": [ - "print(c[..., 3]) # all matrices, all rows, column 3. This is equivalent to c[:, :, 3]" + "c[..., 3] # all matrices, all rows, column 3. This is equivalent to c[:, :, 3]" ] }, { @@ -1670,38 +1739,38 @@ }, { "cell_type": "code", - "execution_count": 89, + "execution_count": 96, "metadata": { "collapsed": false }, "outputs": [], "source": [ "b = np.arange(48).reshape(4, 12)\n", - "print(b)" + "b" ] }, { "cell_type": "code", - "execution_count": 90, + "execution_count": 97, "metadata": { "collapsed": false }, "outputs": [], "source": [ "rows_on = np.array([True, False, True, False])\n", - "print(b[rows_on, :]) # Rows 0 and 2, all columns. Equivalent to b[(0, 2), :]" + "b[rows_on, :] # Rows 0 and 2, all columns. Equivalent to b[(0, 2), :]" ] }, { "cell_type": "code", - "execution_count": 91, + "execution_count": 98, "metadata": { "collapsed": false }, "outputs": [], "source": [ "cols_on = np.array([False, True, False] * 4)\n", - "print(b[:, cols_on]) # All rows, columns 1, 4, 7 and 10" + "b[:, cols_on] # All rows, columns 1, 4, 7 and 10" ] }, { @@ -1714,24 +1783,24 @@ }, { "cell_type": "code", - "execution_count": 92, + "execution_count": 99, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(b[np.ix_(rows_on, cols_on)])" + "b[np.ix_(rows_on, cols_on)]" ] }, { "cell_type": "code", - "execution_count": 93, + "execution_count": 100, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(np.ix_(rows_on, cols_on))" + "np.ix_(rows_on, cols_on)" ] }, { @@ -1743,13 +1812,13 @@ }, { "cell_type": "code", - "execution_count": 94, + "execution_count": 101, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(b[b % 3 == 1])" + "b[b % 3 == 1]" ] }, { @@ -1762,19 +1831,19 @@ }, { "cell_type": "code", - "execution_count": 95, + "execution_count": 102, "metadata": { "collapsed": false }, "outputs": [], "source": [ "c = np.arange(24).reshape(2, 3, 4) # A 3D array (composed of two 3x4 matrices)\n", - "print(c)" + "c" ] }, { "cell_type": "code", - "execution_count": 96, + "execution_count": 103, "metadata": { "collapsed": false }, @@ -1787,7 +1856,7 @@ }, { "cell_type": "code", - "execution_count": 97, + "execution_count": 104, "metadata": { "collapsed": false }, @@ -1807,7 +1876,7 @@ }, { "cell_type": "code", - "execution_count": 98, + "execution_count": 105, "metadata": { "collapsed": false }, @@ -1827,21 +1896,38 @@ }, { "cell_type": "code", - "execution_count": 99, + "execution_count": 106, "metadata": { "collapsed": false }, "outputs": [], "source": [ "q1 = np.full((3,4), 1.0)\n", + "q1" + ] + }, + { + "cell_type": "code", + "execution_count": 107, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ "q2 = np.full((4,4), 2.0)\n", + "q2" + ] + }, + { + "cell_type": "code", + "execution_count": 108, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ "q3 = np.full((3,4), 3.0)\n", - "print(\"q1\")\n", - "print(q1)\n", - "print(\"q2\")\n", - "print(q2)\n", - "print(\"q3\")\n", - "print(q3)" + "q3" ] }, { @@ -1854,15 +1940,25 @@ }, { "cell_type": "code", - "execution_count": 100, + "execution_count": 109, "metadata": { "collapsed": false }, "outputs": [], "source": [ "q4 = np.vstack((q1, q2, q3))\n", - "print(q4)\n", - "print(\"shape =\", q4.shape)" + "q4" + ] + }, + { + "cell_type": "code", + "execution_count": 110, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "q4.shape" ] }, { @@ -1877,15 +1973,25 @@ }, { "cell_type": "code", - "execution_count": 101, + "execution_count": 111, "metadata": { "collapsed": false }, "outputs": [], "source": [ "q5 = np.hstack((q1, q3))\n", - "print(q5)\n", - "print(\"shape =\", q5.shape)" + "q5" + ] + }, + { + "cell_type": "code", + "execution_count": 112, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "q5.shape" ] }, { @@ -1897,7 +2003,7 @@ }, { "cell_type": "code", - "execution_count": 102, + "execution_count": 113, "metadata": { "collapsed": false }, @@ -1919,15 +2025,25 @@ }, { "cell_type": "code", - "execution_count": 103, + "execution_count": 114, "metadata": { "collapsed": false }, "outputs": [], "source": [ "q7 = np.concatenate((q1, q2, q3), axis=0) # Equivalent to vstack\n", - "print(q7)\n", - "print(\"shape =\", q7.shape)" + "q7" + ] + }, + { + "cell_type": "code", + "execution_count": 115, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "q7.shape" ] }, { @@ -1947,15 +2063,25 @@ }, { "cell_type": "code", - "execution_count": 104, + "execution_count": 116, "metadata": { "collapsed": false }, "outputs": [], "source": [ "q8 = np.stack((q1, q3))\n", - "print(q8)\n", - "print(\"shape =\", q8.shape)" + "q8" + ] + }, + { + "cell_type": "code", + "execution_count": 117, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "q8.shape" ] }, { @@ -1970,14 +2096,14 @@ }, { "cell_type": "code", - "execution_count": 105, + "execution_count": 118, "metadata": { "collapsed": false }, "outputs": [], "source": [ "r = np.arange(24).reshape(6,4)\n", - "print(r)" + "r" ] }, { @@ -1989,19 +2115,36 @@ }, { "cell_type": "code", - "execution_count": 106, + "execution_count": 119, "metadata": { "collapsed": false }, "outputs": [], "source": [ "r1, r2, r3 = np.vsplit(r, 3)\n", - "print(\"r1\")\n", - "print(r1)\n", - "print(\"r2\")\n", - "print(r2)\n", - "print(\"r3\")\n", - "print(r3)" + "r1" + ] + }, + { + "cell_type": "code", + "execution_count": 120, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "r2" + ] + }, + { + "cell_type": "code", + "execution_count": 121, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "r3" ] }, { @@ -2013,17 +2156,25 @@ }, { "cell_type": "code", - "execution_count": 107, + "execution_count": 122, "metadata": { "collapsed": false }, "outputs": [], "source": [ "r4, r5 = np.hsplit(r, 2)\n", - "print(\"r4\")\n", - "print(r4)\n", - "print(\"r5\")\n", - "print(r5)" + "r4" + ] + }, + { + "cell_type": "code", + "execution_count": 123, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "r5" ] }, { @@ -2038,14 +2189,14 @@ }, { "cell_type": "code", - "execution_count": 108, + "execution_count": 124, "metadata": { "collapsed": false }, "outputs": [], "source": [ "t = np.arange(24).reshape(4,2,3)\n", - "print(t)" + "t" ] }, { @@ -2057,15 +2208,25 @@ }, { "cell_type": "code", - "execution_count": 109, + "execution_count": 125, "metadata": { "collapsed": false }, "outputs": [], "source": [ "t1 = t.transpose((1,2,0))\n", - "print(t1)\n", - "print(\"shape =\", t1.shape)" + "t1" + ] + }, + { + "cell_type": "code", + "execution_count": 126, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "t1.shape" ] }, { @@ -2077,15 +2238,25 @@ }, { "cell_type": "code", - "execution_count": 110, + "execution_count": 127, "metadata": { "collapsed": false }, "outputs": [], "source": [ "t2 = t.transpose() # equivalent to t.transpose((2, 1, 0))\n", - "print(t2)\n", - "print(\"shape =\", t2.shape)" + "t2" + ] + }, + { + "cell_type": "code", + "execution_count": 128, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "t2.shape" ] }, { @@ -2097,15 +2268,25 @@ }, { "cell_type": "code", - "execution_count": 111, + "execution_count": 129, "metadata": { "collapsed": false }, "outputs": [], "source": [ "t3 = t.swapaxes(0,1) # equivalent to t.transpose((1, 0, 2))\n", - "print(t3)\n", - "print(\"shape =\", t3.shape)" + "t3" + ] + }, + { + "cell_type": "code", + "execution_count": 130, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "t3.shape" ] }, { @@ -2121,25 +2302,25 @@ }, { "cell_type": "code", - "execution_count": 112, + "execution_count": 131, "metadata": { "collapsed": false }, "outputs": [], "source": [ "m1 = np.arange(10).reshape(2,5)\n", - "print(m1)" + "m1" ] }, { "cell_type": "code", - "execution_count": 113, + "execution_count": 132, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(m1.T)" + "m1.T" ] }, { @@ -2151,7 +2332,7 @@ }, { "cell_type": "code", - "execution_count": 114, + "execution_count": 133, "metadata": { "collapsed": false, "scrolled": true @@ -2159,19 +2340,19 @@ "outputs": [], "source": [ "m2 = np.arange(5)\n", - "print(m2)" + "m2" ] }, { "cell_type": "code", - "execution_count": 115, + "execution_count": 134, "metadata": { "collapsed": false, "scrolled": true }, "outputs": [], "source": [ - "print(m2.T)" + "m2.T" ] }, { @@ -2183,25 +2364,25 @@ }, { "cell_type": "code", - "execution_count": 116, + "execution_count": 135, "metadata": { "collapsed": false }, "outputs": [], "source": [ "m2r = m2.reshape(1,5)\n", - "print(m2r)" + "m2r" ] }, { "cell_type": "code", - "execution_count": 117, + "execution_count": 136, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(m2r.T)" + "m2r.T" ] }, { @@ -2209,42 +2390,42 @@ "metadata": {}, "source": [ "### Matrix dot product\n", - "Let's create two matrices and execute a matrix dot product using the `dot` method." + "Let's create two matrices and execute a matrix [dot product](https://en.wikipedia.org/wiki/Dot_product) using the `dot` method." ] }, { "cell_type": "code", - "execution_count": 118, + "execution_count": 137, "metadata": { "collapsed": false }, "outputs": [], "source": [ "n1 = np.arange(10).reshape(2, 5)\n", - "print(n1)" + "n1" ] }, { "cell_type": "code", - "execution_count": 119, + "execution_count": 138, "metadata": { "collapsed": false }, "outputs": [], "source": [ "n2 = np.arange(15).reshape(5,3)\n", - "print(n2)" + "n2" ] }, { "cell_type": "code", - "execution_count": 120, + "execution_count": 139, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(n1.dot(n2))" + "n1.dot(n2)" ] }, { @@ -2264,7 +2445,7 @@ }, { "cell_type": "code", - "execution_count": 121, + "execution_count": 140, "metadata": { "collapsed": false }, @@ -2273,18 +2454,18 @@ "import numpy.linalg as linalg\n", "\n", "m3 = np.array([[1,2,3],[5,7,11],[21,29,31]])\n", - "print(m3)" + "m3" ] }, { "cell_type": "code", - "execution_count": 122, + "execution_count": 141, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(linalg.inv(m3))" + "linalg.inv(m3)" ] }, { @@ -2296,13 +2477,13 @@ }, { "cell_type": "code", - "execution_count": 123, + "execution_count": 142, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(linalg.pinv(m3))" + "linalg.pinv(m3)" ] }, { @@ -2315,13 +2496,13 @@ }, { "cell_type": "code", - "execution_count": 124, + "execution_count": 143, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(m3.dot(linalg.inv(m3)))" + "m3.dot(linalg.inv(m3))" ] }, { @@ -2333,13 +2514,13 @@ }, { "cell_type": "code", - "execution_count": 125, + "execution_count": 144, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(np.eye(3))" + "np.eye(3)" ] }, { @@ -2352,19 +2533,36 @@ }, { "cell_type": "code", - "execution_count": 126, + "execution_count": 145, "metadata": { "collapsed": false }, "outputs": [], "source": [ "q, r = linalg.qr(m3)\n", - "print(\"q\")\n", - "print(q)\n", - "print(\"r\")\n", - "print(r)\n", - "print(\"q.r (equal to m3)\")\n", - "print(q.dot(r))" + "q" + ] + }, + { + "cell_type": "code", + "execution_count": 146, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "r" + ] + }, + { + "cell_type": "code", + "execution_count": 147, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "q.dot(r) # q.r equals m3" ] }, { @@ -2377,13 +2575,13 @@ }, { "cell_type": "code", - "execution_count": 127, + "execution_count": 148, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(linalg.det(m3)) # Computes the matrix determinant" + "linalg.det(m3) # Computes the matrix determinant" ] }, { @@ -2396,19 +2594,36 @@ }, { "cell_type": "code", - "execution_count": 128, + "execution_count": 149, "metadata": { "collapsed": false }, "outputs": [], "source": [ "eigenvalues, eigenvectors = linalg.eig(m3)\n", - "print(\"Eigen values (λ)\")\n", - "print(eigenvalues)\n", - "print(\"Eigen vectors (v)\")\n", - "print(eigenvectors)\n", - "print(\"m3.v - λ*v (equals 0)\")\n", - "print(m3.dot(eigenvectors) - eigenvalues * eigenvectors)" + "eigenvalues # λ" + ] + }, + { + "cell_type": "code", + "execution_count": 150, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "eigenvectors # v" + ] + }, + { + "cell_type": "code", + "execution_count": 151, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "m3.dot(eigenvectors) - eigenvalues * eigenvectors # m3.v - λ*v = 0" ] }, { @@ -2421,35 +2636,79 @@ }, { "cell_type": "code", - "execution_count": 129, + "execution_count": 152, "metadata": { "collapsed": false }, "outputs": [], "source": [ "m4 = np.array([[1,0,0,0,2], [0,0,3,0,0], [0,0,0,0,0], [0,2,0,0,0]])\n", - "print(m4)" + "m4" ] }, { "cell_type": "code", - "execution_count": 130, + "execution_count": 153, "metadata": { "collapsed": false }, "outputs": [], "source": [ "U, S_diag, V = linalg.svd(m4)\n", + "U" + ] + }, + { + "cell_type": "code", + "execution_count": 154, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "S_diag" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The `svd` function just returns the values in the diagonal of Σ, but we want the full Σ matrix, so let's create it:" + ] + }, + { + "cell_type": "code", + "execution_count": 155, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ "S = np.zeros((4, 5))\n", "S[np.diag_indices(4)] = S_diag\n", - "print(\"U\")\n", - "print(U)\n", - "print(\"Σ\")\n", - "print(S)\n", - "print(\"V\")\n", - "print(V)\n", - "print(\"U.Σ.V (equals m4)\")\n", - "print(U.dot(S).dot(V)) # equal to m4" + "S # Σ" + ] + }, + { + "cell_type": "code", + "execution_count": 156, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "V" + ] + }, + { + "cell_type": "code", + "execution_count": 157, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "U.dot(S).dot(V) # U.Σ.V == m4" ] }, { @@ -2461,24 +2720,24 @@ }, { "cell_type": "code", - "execution_count": 131, + "execution_count": 158, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(np.diag(m3)) # the values in the diagonal of m3 (top left to bottom right)" + "np.diag(m3) # the values in the diagonal of m3 (top left to bottom right)" ] }, { "cell_type": "code", - "execution_count": 132, + "execution_count": 159, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(np.trace(m3)) # equivalent to np.diag(m3).sum()" + "np.trace(m3) # equivalent to np.diag(m3).sum()" ] }, { @@ -2500,7 +2759,7 @@ }, { "cell_type": "code", - "execution_count": 133, + "execution_count": 160, "metadata": { "collapsed": false }, @@ -2509,7 +2768,7 @@ "coeffs = np.array([[2, 6], [5, 3]])\n", "depvars = np.array([6, -9])\n", "solution = linalg.solve(coeffs, depvars)\n", - "print(solution)" + "solution" ] }, { @@ -2521,14 +2780,13 @@ }, { "cell_type": "code", - "execution_count": 134, + "execution_count": 161, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(coeffs.dot(solution))\n", - "print(depvars)" + "coeffs.dot(solution), depvars # yep, it's the same" ] }, { @@ -2540,14 +2798,14 @@ }, { "cell_type": "code", - "execution_count": 135, + "execution_count": 162, "metadata": { "collapsed": false, "scrolled": true }, "outputs": [], "source": [ - "print(np.allclose(coeffs.dot(solution), depvars))" + "np.allclose(coeffs.dot(solution), depvars)" ] }, { @@ -2562,7 +2820,7 @@ }, { "cell_type": "code", - "execution_count": 136, + "execution_count": 163, "metadata": { "collapsed": false }, @@ -2584,7 +2842,7 @@ }, { "cell_type": "code", - "execution_count": 137, + "execution_count": 164, "metadata": { "collapsed": false }, @@ -2593,11 +2851,18 @@ "x_coords = np.arange(0, 1024) # [0, 1, 2, ..., 1023]\n", "y_coords = np.arange(0, 768) # [0, 1, 2, ..., 767]\n", "X, Y = np.meshgrid(x_coords, y_coords)\n", - "print(\"X\")\n", - "print(X)\n", - "print\n", - "print(\"Y\")\n", - "print(Y)" + "X" + ] + }, + { + "cell_type": "code", + "execution_count": 165, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "Y" ] }, { @@ -2611,7 +2876,7 @@ }, { "cell_type": "code", - "execution_count": 138, + "execution_count": 166, "metadata": { "collapsed": false }, @@ -2629,7 +2894,7 @@ }, { "cell_type": "code", - "execution_count": 139, + "execution_count": 167, "metadata": { "collapsed": false }, @@ -2655,7 +2920,7 @@ }, { "cell_type": "code", - "execution_count": 140, + "execution_count": 168, "metadata": { "collapsed": false, "scrolled": true @@ -2663,12 +2928,12 @@ "outputs": [], "source": [ "a = np.random.rand(2,3)\n", - "print(a)" + "a" ] }, { "cell_type": "code", - "execution_count": 141, + "execution_count": 169, "metadata": { "collapsed": false }, @@ -2686,7 +2951,7 @@ }, { "cell_type": "code", - "execution_count": 142, + "execution_count": 170, "metadata": { "collapsed": false }, @@ -2694,7 +2959,8 @@ "source": [ "with open(\"my_array.npy\", \"rb\") as f:\n", " content = f.read()\n", - " print(repr(content))" + "\n", + "content" ] }, { @@ -2706,14 +2972,14 @@ }, { "cell_type": "code", - "execution_count": 143, + "execution_count": 171, "metadata": { "collapsed": false }, "outputs": [], "source": [ "a_loaded = np.load(\"my_array.npy\")\n", - "print(a_loaded)" + "a_loaded" ] }, { @@ -2726,7 +2992,7 @@ }, { "cell_type": "code", - "execution_count": 144, + "execution_count": 172, "metadata": { "collapsed": false }, @@ -2744,15 +3010,14 @@ }, { "cell_type": "code", - "execution_count": 145, + "execution_count": 173, "metadata": { "collapsed": false }, "outputs": [], "source": [ "with open(\"my_array.csv\", \"rt\") as f:\n", - " content = f.read()\n", - " print(content)" + " print(f.read())" ] }, { @@ -2764,7 +3029,7 @@ }, { "cell_type": "code", - "execution_count": 146, + "execution_count": 174, "metadata": { "collapsed": true }, @@ -2782,14 +3047,14 @@ }, { "cell_type": "code", - "execution_count": 147, + "execution_count": 175, "metadata": { "collapsed": false }, "outputs": [], "source": [ "a_loaded = np.loadtxt(\"my_array.csv\", delimiter=\",\")\n", - "print(a_loaded)" + "a_loaded" ] }, { @@ -2802,19 +3067,19 @@ }, { "cell_type": "code", - "execution_count": 148, + "execution_count": 176, "metadata": { "collapsed": false }, "outputs": [], "source": [ "b = np.arange(24, dtype=np.uint8).reshape(2, 3, 4)\n", - "print(b)" + "b" ] }, { "cell_type": "code", - "execution_count": 149, + "execution_count": 177, "metadata": { "collapsed": true }, @@ -2832,7 +3097,7 @@ }, { "cell_type": "code", - "execution_count": 150, + "execution_count": 178, "metadata": { "collapsed": false }, @@ -2840,7 +3105,8 @@ "source": [ "with open(\"my_arrays.npz\", \"rb\") as f:\n", " content = f.read()\n", - " print(repr(content)[:200], \"[...]\")" + "\n", + "repr(content)[:180] + \"[...]\"" ] }, { @@ -2852,13 +3118,14 @@ }, { "cell_type": "code", - "execution_count": 151, + "execution_count": 179, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "my_arrays = np.load(\"my_arrays.npz\")" + "my_arrays = np.load(\"my_arrays.npz\")\n", + "my_arrays" ] }, { @@ -2870,24 +3137,24 @@ }, { "cell_type": "code", - "execution_count": 152, + "execution_count": 180, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(my_arrays.keys())" + "my_arrays.keys()" ] }, { "cell_type": "code", - "execution_count": 153, + "execution_count": 181, "metadata": { "collapsed": false }, "outputs": [], "source": [ - "print(my_arrays[\"my_a\"])" + "my_arrays[\"my_a\"]" ] }, {