diff --git a/content/week_1_3/PA_1_3_Data_Clearning_and_Boosting_Productivity.ipynb b/content/week_1_3/PA_1_3_Data_Cleaning_and_Boosting_Productivity.ipynb similarity index 84% rename from content/week_1_3/PA_1_3_Data_Clearning_and_Boosting_Productivity.ipynb rename to content/week_1_3/PA_1_3_Data_Cleaning_and_Boosting_Productivity.ipynb index 8cf498e6eddf9888d30cb072d6b06427953fcdc9..8d52d77de0667d3442e44dc92b468537fba1fa5c 100644 --- a/content/week_1_3/PA_1_3_Data_Clearning_and_Boosting_Productivity.ipynb +++ b/content/week_1_3/PA_1_3_Data_Cleaning_and_Boosting_Productivity.ipynb @@ -52,14 +52,6 @@ "We will need one csv file, `data_2.csv`, to complete this assignment." ] }, - { - "cell_type": "code", - "execution_count": null, - "id": "a74df1db", - "metadata": {}, - "outputs": [], - "source": [] - }, { "cell_type": "code", "execution_count": null, @@ -80,7 +72,7 @@ "source": [ "### Task 1: Importing and Cleaning the array\n", "\n", - "In a previous week we looked at how to read in data from a csv, plot a nice graph and even find the $R^2$ of the data. This week an eager botany student, Johnathan, has asked us to help him analyze some data: 1000 measurements have just been completed over the 100m of greenhouse and are ready to use in `data_2.csv`. Johnathan happens to have a lot of free time but not that much experience taking measurements. Thus, there is some noise in the data and some problematic data that are a result of an error in the measurement device. Let's help them out!" + "In a previous week we looked at how to read in data from a csv, plot a nice graph and even find the $R^2$ of the data. This week, an eager botany student, Johnathan, has asked us to help him analyze some data: 1000 measurements have just been completed over the 100 m of greenhouse and are ready to use in `data_2.csv`. Jonathan happens to have a lot of free time but not that much experience taking measurements. Thus, there is some noise in the data and some problematic data that are a result of an error in the measurement device. Let's help them out!" ] }, { @@ -91,7 +83,7 @@ "<div style=\"background-color:#AABAB2; color: black; width:95%; vertical-align: middle; padding:15px; margin: 10px; border-radius: 10px\">\n", "<p>\n", "<b>Task 1.1:</b> \n", - "Import the data as 2 numpy arrays: distance and temperature.\n", + "Import the data as 2 numpy arrays: distance and temperature. Tip, makes use of the function <code>numpy.genfromtxt</code>.\n", "</p>\n", "</div>" ] @@ -137,7 +129,7 @@ "<div style=\"background-color:#AABAB2; color: black; width:95%; vertical-align: middle; padding:15px; margin: 10px; border-radius: 10px\">\n", "<p>\n", "<b>Task 1.3:</b> \n", - " Check by defining a variable <code>boolean</code> using the numpy method <code>isnan</code>, which returns a boolean vector (False if it is not a NaN, and True if it is a NaN). The code block below will also help you inspect the results.\n", + " Check if there are NaN (not a number) values in the temperature array. You can use the numpy method <code>isnan</code>, which returns a boolean vector (False if it is not a NaN, and True if it is a NaN). Save the result in the variable <code>temperature_is_nan</code>. The code block below will also help you inspect the results.\n", "</p>\n", "</div>" ] @@ -149,10 +141,10 @@ "metadata": {}, "outputs": [], "source": [ - "boolean = YOUR_CODE_HERE\n", + "temperature_is_nan = YOUR_CODE_HERE\n", "\n", - "print(\"The first 10 values are:\", boolean[0:10])\n", - "print(f\"There are {boolean.sum()} NaNs in array temperature\")" + "print(\"The first 10 values are:\", temperature_is_nan[0:10])\n", + "print(f\"There are {temperature_is_nan.sum()} NaNs in array temperature\")" ] }, { @@ -160,7 +152,7 @@ "id": "c9f8994b", "metadata": {}, "source": [ - "Let's slice the array using the `boolean` array we just found to eliminate the NaNs. We can use the symbol `~`, which denotes the opposite: we want to keep those where np.isnan gives False as an answer." + "Let's slice the array using the `temperature_is_nan` array we just found to eliminate the NaNs. We can use the symbol `~`, which denotes the opposite: we want to keep those where np.isnan gives False as an answer." ] }, { @@ -170,7 +162,7 @@ "metadata": {}, "outputs": [], "source": [ - "temperature = temperature[~boolean]" + "temperature = temperature[~temperature_is_nan]" ] }, { @@ -195,7 +187,7 @@ "metadata": {}, "outputs": [], "source": [ - "YOUR_CODE_HERE" + "YOUR_CODE_HERE\n" ] }, { @@ -213,7 +205,7 @@ "metadata": {}, "outputs": [], "source": [ - "distance.size==temperature.size" + "distance.size == temperature.size" ] }, { @@ -221,7 +213,7 @@ "id": "8a80b2d6", "metadata": {}, "source": [ - "Also, we don't know what the index of the removed values were, since we over-wrote `temperature`! Luckily we have our `boolean` array, which records the indices with Nans, which we can also use to update our `distance` array." + "Also, we don't know what the index of the removed values were, since we over-wrote `temperature`! Luckily we have our `temeprature_is_nan` array, which records the indices with Nans, which we can also use to update our `distance` array." ] }, { @@ -244,7 +236,7 @@ "metadata": {}, "outputs": [], "source": [ - "distance = YOUR_CODE_HERE\n", + "distance = YOUR_CODE_HERE \n", "distance.size==temperature.size" ] }, @@ -265,10 +257,10 @@ "metadata": {}, "outputs": [], "source": [ - "plt.plot(distance, temperature, \"ok\", label = 'Temperature')\n", + "plt.plot(distance, temperature, \"ok\", label=\"Temperature\")\n", "plt.title(\"Super duper greenhouse\")\n", - "plt.xlabel('Distance')\n", - "plt.ylabel('Temperature')\n", + "plt.xlabel(\"Distance\")\n", + "plt.ylabel(\"Temperature\")\n", "plt.show()" ] }, @@ -296,9 +288,9 @@ "id": "9e8d396a", "metadata": {}, "source": [ - "The values are suspcious since they are +/-999...this is a common error code with some sensors, so we can assume that they can be removed from the dataset. We can easily remove these erroneous values of temperature, but this time we will use a different method than before. The explamation mark before an equals sig, `!=`, denotes \"not equal to.\" We can use this as a logic operator to directly eliminate the values in one line. For example:\n", + "The values are suspcious since they are +/-999...this is a common error code with some sensors, so we can assume that they can be removed from the dataset. We can easily remove these erroneous values of temperature, but this time we will use a different method than before. The exclamation mark before an equal sign, `!=`, denotes \"not equal to.\" We can use this as a logic operator to directly eliminate the values in one line. For example:\n", "```\n", - "array_1 = array_1[array_2!=-999]\n", + "array_1 = array_1[array_2 != -999]\n", "```" ] }, @@ -341,7 +333,7 @@ "metadata": {}, "outputs": [], "source": [ - "print(distance.size==temperature.size)\n", + "print(distance.size == temperature.size)\n", "temperature.size" ] }, @@ -391,7 +383,7 @@ "id": "830e00fd", "metadata": {}, "source": [ - "The array is names \"mask\" because this process utilizes **masked arrays**...you can read more about it [here](https://python.plainenglish.io/numpy-masks-in-python-d8c13509fbc8)." + "The array is named \"mask\" because this process utilizes **masked arrays**...you can read more about it [here](https://python.plainenglish.io/numpy-masks-in-python-d8c13509fbc8)." ] }, { @@ -409,10 +401,10 @@ "metadata": {}, "outputs": [], "source": [ - "plt.plot(distance, temperature, \"ok\", label = 'Temperature')\n", + "plt.plot(distance, temperature, \"ok\", label=\"Temperature\")\n", "plt.title(\"Super duper greenhouse\")\n", - "plt.xlabel('Distance')\n", - "plt.ylabel('Temperature')\n", + "plt.xlabel(\"Distance\")\n", + "plt.ylabel(\"Temperature\")\n", "plt.show()" ] }, @@ -421,7 +413,7 @@ "id": "999da984", "metadata": {}, "source": [ - "Looks good! But wait---there also appear to be some values in the array that are not physically possible! We know for sure that there was nothing cold in the greenhouse during the measurements; also it's very likely that a \"0\" value could have come from an error in the sensor.\n", + "Looks good! But wait—there also appear to be some values in the array that are not physically possible! We know for sure that there was nothing cold in the greenhouse during the measurements; also it's very likely that a \"0\" value could have come from an error in the sensor.\n", "\n", "See if you can apply the `numpy` method `nonzero` to remove zeros from the array. Hint: it works in a very similar way to `isnan`, which we used above." ] @@ -446,7 +438,7 @@ "metadata": {}, "outputs": [], "source": [ - "distance = YOUR_CODE_HERE\n", + "distance = YOUR_CODE_HERE \n", "temperature = YOUR_CODE_HERE" ] }, @@ -497,10 +489,10 @@ "metadata": {}, "outputs": [], "source": [ - "plt.plot(distance, temperature, \"ok\", label = 'Temperature')\n", + "plt.plot(distance, temperature, \"ok\", label=\"Temperature\")\n", "plt.title(\"Super duper greenhouse\")\n", - "plt.xlabel('Distance')\n", - "plt.ylabel('Temperature')\n", + "plt.xlabel(\"Distance\")\n", + "plt.ylabel(\"Temperature\")\n", "plt.show()" ] }, @@ -509,7 +501,7 @@ "id": "30bce92b", "metadata": {}, "source": [ - "Let's pretend there is a systematic error in our measurement device because it was not properly calibrated. It causes all observations below 15 degrees need to be corrected dividing the multiplying the measurement by 1.5. Numpy actually makes it very easy to change the contents of an array conditionally by replacement using the `where` method!" + "Let's pretend that there is a systematic error in our measurement device because it was not calibrated properly. As a result, all observations below 15 degrees need to be corrected by multiplying the measurement by 1.5. Numpy actually makes it very easy to replace the contents of an array based on a condition using the `where` method!" ] }, { @@ -520,7 +512,7 @@ "<div style=\"background-color:#AABAB2; color: black; width:95%; vertical-align: middle; padding:15px; margin: 10px; border-radius: 10px\">\n", "<p>\n", "<b>Task 2.5:</b> \n", - " Play with the cell below to understand what the <code>where</code> method does (i.e., replacement)---it's very useful to know about!\n", + " Play with the cell below to understand what the <code>where</code> method does (i.e., replacement)—it's very useful to know about!\n", "</p>\n", "</div>" ] @@ -532,7 +524,7 @@ "metadata": {}, "outputs": [], "source": [ - "temperature = np.where(temperature>15, temperature, temperature*1.5)" + "temperature = np.where(temperature > 15, temperature, temperature * 1.5)" ] }, { @@ -552,10 +544,10 @@ "metadata": {}, "outputs": [], "source": [ - "plt.plot(distance, temperature, \"ok\", label = 'Temperature')\n", + "plt.plot(distance, temperature, \"ok\", label=\"Temperature\")\n", "plt.title(\"Super duper greenhouse\")\n", - "plt.xlabel('Distance')\n", - "plt.ylabel('Temperature')\n", + "plt.xlabel(\"Distance\")\n", + "plt.ylabel(\"Temperature\")\n", "plt.show()" ] }, @@ -603,7 +595,7 @@ "id": "2df59bce", "metadata": {}, "source": [ - "Did you ever got frustrated by sharing code with your friends? How nice would it be to do it the Google-Docs style and work on the same document simultaneously! Maybe you know Deepnote, which does this in an online interface. But there's a better solution: [Visual Studio Live Share](https://visualstudio.microsoft.com/services/live-share/)!\n", + "Have you ever gotten frustrated by sharing code with your friends? How nice would it be to do it the Google-Docs style and work on the same document simultaneously! Maybe you know Deepnote, which does this in an online interface. But there's a better solution: [Visual Studio Live Share](https://visualstudio.microsoft.com/services/live-share/)!\n", "\n", "In this PA you'll install the required extension in VS Code. You'll use this extension on Wednesday in class, and can freely use it in your future career!" ] @@ -616,7 +608,7 @@ "<div style=\"background-color:#AABAB2; color: black; width:95%; vertical-align: middle; padding:15px; margin: 10px; border-radius: 10px\">\n", "<p>\n", "<b>Task 3.1:</b> \n", - " Download, install and login in the Visual Studio Live Share Extension from the Visual Studio Marketplace as explained in the <a href=\"https://mude.citg.tudelft.nl/2024/book/external/learn-programming/book/install/ide/vsc/vs_live_share.html\">book</a>\n", + " Download, install and login in the Visual Studio Live Share Extension from the Visual Studio Marketplace as explained in the <a href=\"https://mude.citg.tudelft.nl/2024/book/external/learn-programming/book/install/ide/vsc/vs_live_share.html\">book</a>.\n", "</p>\n", "</div>" ] @@ -626,7 +618,7 @@ "id": "2751b89a", "metadata": {}, "source": [ - "After installing and signing into Visual Studio Live Share, you'll share a project with yourself to test the collaboration session" + "After installing and signing into Visual Studio Live Share, you'll share a project with yourself to test the collaboration session." ] }, { @@ -637,7 +629,7 @@ "<div style=\"background-color:#AABAB2; color: black; width:95%; vertical-align: middle; padding:15px; margin: 10px; border-radius: 10px\">\n", "<p>\n", "<b>Task 3.2:</b> \n", - " Use your normal workflow to open a folder\n", + " Use your normal workflow to open the folder where this notebook is situated in VS Code.\n", "</p>\n", "</div>" ] @@ -661,17 +653,17 @@ }, { "cell_type": "markdown", - "id": "bffc6617", + "id": "d3913dbd", "metadata": {}, "source": [ - "An invitation link will be automatically copied to your clipboard. You'll use this link to interact with yourself in this assignment. If you want to collaborate with other, you can share this link with other to open up the project in their browser on own VS Code.\n", + "An invitation link will be automatically copied to your clipboard. You'll use this link to interact with yourself in this assignment. If you want to collaborate with others, you can share this link with them to open up the project in their browser or own VS Code.\n", "\n", "You'll also see the **Live Share** status bar item change to represent the session state." ] }, { "cell_type": "markdown", - "id": "1b1316a8", + "id": "733f5991", "metadata": {}, "source": [ "<div style=\"background-color:#AABAB2; color: black; width:95%; vertical-align: middle; padding:15px; margin: 10px; border-radius: 10px\">\n", @@ -684,7 +676,7 @@ }, { "cell_type": "markdown", - "id": "7d16af72", + "id": "47829808", "metadata": {}, "source": [ "A web version of Visual Studio Code will open in your browser. Continue there." @@ -692,7 +684,7 @@ }, { "cell_type": "markdown", - "id": "f64ec5b2", + "id": "b29c3e15", "metadata": {}, "source": [ "<div style=\"background-color:#AABAB2; color: black; width:95%; vertical-align: middle; padding:15px; margin: 10px; border-radius: 10px\">\n", @@ -705,7 +697,7 @@ }, { "cell_type": "markdown", - "id": "2e629aaa", + "id": "4c76259c", "metadata": {}, "source": [ "<div style=\"background-color:#AABAB2; color: black; width:95%; vertical-align: middle; padding:15px; margin: 10px; border-radius: 10px\">\n", @@ -719,7 +711,7 @@ { "cell_type": "code", "execution_count": null, - "id": "7a2647f4", + "id": "84ee5ab9", "metadata": {}, "outputs": [], "source": [ @@ -728,20 +720,20 @@ }, { "cell_type": "markdown", - "id": "5218a751", + "id": "784d01d1", "metadata": {}, "source": [ "<div style=\"background-color:#AABAB2; color: black; width:95%; vertical-align: middle; padding:15px; margin: 10px; border-radius: 10px\">\n", "<p>\n", "<b>Task 3.7:</b> \n", - " Go back to your browser version of VS code and try running the cell. Note that this requires Requesting access in the browser participant. Request that access and approve it in the desktop participant of VS code. In the desktop participant you now need to select your python environment. Does the cell run? Do you see the output in both participants? Make sure the output doesn't show an error!\n", + " Go back to your browser version of VS code and try running the cell. Note that this requires the browser participant to request access. Request that access and approve it in the desktop participant of VS code. In the desktop participant you now need to select your Python environment. Does the cell run? Do you see the output in both participants? Make sure the output doesn't show an error!\n", "</p>\n", "</div>" ] }, { "cell_type": "markdown", - "id": "05c2b97a", + "id": "07911996", "metadata": {}, "source": [ "<div style=\"background-color:#AABAB2; color: black; width:95%; vertical-align: middle; padding:15px; margin: 10px; border-radius: 10px\">\n", @@ -755,7 +747,7 @@ { "cell_type": "code", "execution_count": null, - "id": "a9b9f24b", + "id": "3c8723e3", "metadata": {}, "outputs": [], "source": [ @@ -765,7 +757,7 @@ }, { "cell_type": "markdown", - "id": "55b401c9", + "id": "b38e7f33", "metadata": {}, "source": [ "That's cool right? Imagine what you could do with this..." @@ -773,7 +765,7 @@ }, { "cell_type": "markdown", - "id": "4b332269", + "id": "f85acf2e", "metadata": {}, "source": [ "<div style=\"background-color:#AABAB2; color: black; width:95%; vertical-align: middle; padding:15px; margin: 10px; border-radius: 10px\">\n", @@ -786,7 +778,7 @@ }, { "cell_type": "markdown", - "id": "dd8361f4", + "id": "61f4088d", "metadata": {}, "source": [ "<div style=\"background-color:#AABAB2; color: black; width:95%; vertical-align: middle; padding:15px; margin: 10px; border-radius: 10px\">\n", @@ -796,7 +788,10 @@ "</p>\n", "<img src=\"https://learn.microsoft.com/en-us/visualstudio/liveshare/media/vscode-end-collaboration-viewlet.png\">\n", "<p>\n", - "Your web-participant will be notified that the session is over. It won't be able to access the content and any temp files will automatically be cleaned up. Don't forget to save your work on the desktop-participant!\n", + "Don't forget to save your work! You could have done that both on the browser-participant as on the desktop-participant!\n", + "</p>\n", + "<p>\n", + "After stopping the collaboration session, your web-participant will be notified that the session is over. It won't be able to access the content and any temp files will automatically be cleaned up.\n", "</p>\n", "</div>" ] diff --git a/content/week_1_3/PA_1_3_solution.ipynb b/content/week_1_3/PA_1_3_solution.ipynb index a2cf40a611c90cde786e33e75c55d584e4b7135f..e91e6257e74f69c46f9d4f90050ebec666b713af 100644 --- a/content/week_1_3/PA_1_3_solution.ipynb +++ b/content/week_1_3/PA_1_3_solution.ipynb @@ -54,7 +54,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 1, "id": "846ae254", "metadata": {}, "outputs": [], @@ -72,7 +72,7 @@ "source": [ "### Task 1: Importing and Cleaning the array\n", "\n", - "In a previous week we looked at how to read in data from a csv, plot a nice graph and even find the $R^2$ of the data. This week an eager botany student, Johnathan, has asked us to help him analyze some data: 1000 measurements have just been completed over the 100m of greenhouse and are ready to use in `data_2.csv`. Johnathan happens to have a lot of free time but not that much experience taking measurements. Thus, there is some noise in the data and some problematic data that are a result of an error in the measurement device. Let's help them out!" + "In a previous week we looked at how to read in data from a csv, plot a nice graph and even find the $R^2$ of the data. This week, an eager botany student, Johnathan, has asked us to help him analyze some data: 1000 measurements have just been completed over the 100 m of greenhouse and are ready to use in `data_2.csv`. Jonathan happens to have a lot of free time but not that much experience taking measurements. Thus, there is some noise in the data and some problematic data that are a result of an error in the measurement device. Let's help them out!" ] }, { @@ -83,19 +83,19 @@ "<div style=\"background-color:#AABAB2; color: black; width:95%; vertical-align: middle; padding:15px; margin: 10px; border-radius: 10px\">\n", "<p>\n", "<b>Task 1.1:</b> \n", - "Import the data as 2 numpy arrays: distance and temperature.\n", + "Import the data as 2 numpy arrays: distance and temperature. Tip, makes use of the function <code>numpy.genfromtxt</code>.\n", "</p>\n", "</div>" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 2, "id": "05110070", "metadata": {}, "outputs": [], "source": [ - "distance, temperature = np.genfromtxt(\"data_2.csv\", skip_header = 1, delimiter=\",\", unpack=True)" + "distance, temperature = np.genfromtxt(\"auxiliary_files/data_2.csv\", skip_header = 1, delimiter=\",\", unpack=True)" ] }, { @@ -113,10 +113,21 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 3, "id": "6b4ca75e", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "1000" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "temperature.size" ] @@ -129,22 +140,31 @@ "<div style=\"background-color:#AABAB2; color: black; width:95%; vertical-align: middle; padding:15px; margin: 10px; border-radius: 10px\">\n", "<p>\n", "<b>Task 1.3:</b> \n", - " Check by defining a variable <code>boolean</code> using the numpy method <code>isnan</code>, which returns a boolean vector (False if it is not a NaN, and True if it is a NaN). The code block below will also help you inspect the results.\n", + " Check if there are NaN (not a number) values in the temperature array. You can use the numpy method <code>isnan</code>, which returns a boolean vector (False if it is not a NaN, and True if it is a NaN). Save the result in the variable <code>temperature_is_nan</code>. The code block below will also help you inspect the results.\n", "</p>\n", "</div>" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 4, "id": "f830b4ad", "metadata": {}, - "outputs": [], - "source": [ - "boolean = np.isnan(temperature)\n", + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The first 10 values are: [False False False False False False False False False False]\n", + "There are 3 NaNs in array temperature\n" + ] + } + ], + "source": [ + "temperature_is_nan = np.isnan(temperature)\n", "\n", - "print(\"The first 10 values are:\", boolean[0:10])\n", - "print(f\"There are {boolean.sum()} NaNs in array temperature\")" + "print(\"The first 10 values are:\", temperature_is_nan[0:10])\n", + "print(f\"There are {temperature_is_nan.sum()} NaNs in array temperature\")" ] }, { @@ -152,17 +172,17 @@ "id": "c9f8994b", "metadata": {}, "source": [ - "Let's slice the array using the `boolean` array we just found to eliminate the NaNs. We can use the symbol `~`, which denotes the opposite: we want to keep those where np.isnan gives False as an answer." + "Let's slice the array using the `temperature_is_nan` array we just found to eliminate the NaNs. We can use the symbol `~`, which denotes the opposite: we want to keep those where np.isnan gives False as an answer." ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 5, "id": "6850cb15", "metadata": {}, "outputs": [], "source": [ - "temperature = temperature[~boolean]" + "temperature = temperature[~temperature_is_nan]" ] }, { @@ -182,10 +202,21 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 6, "id": "1a111476", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "997" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "temperature.size\n" ] @@ -200,12 +231,23 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 7, "id": "ade77e1b", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "False" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ - "distance.size==temperature.size" + "distance.size == temperature.size" ] }, { @@ -213,7 +255,7 @@ "id": "8a80b2d6", "metadata": {}, "source": [ - "Also, we don't know what the index of the removed values were, since we over-wrote `temperature`! Luckily we have our `boolean` array, which records the indices with Nans, which we can also use to update our `distance` array." + "Also, we don't know what the index of the removed values were, since we over-wrote `temperature`! Luckily we have our `temeprature_is_nan` array, which records the indices with Nans, which we can also use to update our `distance` array." ] }, { @@ -231,12 +273,23 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 8, "id": "359c1f5a", "metadata": {}, - "outputs": [], - "source": [ - "distance = distance[~boolean]\n", + "outputs": [ + { + "data": { + "text/plain": [ + "True" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "distance = distance[~temperature_is_nan]\n", "distance.size==temperature.size" ] }, @@ -252,15 +305,26 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 9, "id": "3ea30aa1", "metadata": {}, - "outputs": [], - "source": [ - "plt.plot(distance, temperature, \"ok\", label = 'Temperature')\n", + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAlAAAAHFCAYAAAA9occoAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8hTgPZAAAACXBIWXMAAA9hAAAPYQGoP6dpAABP80lEQVR4nO3de1gUZf8/8PdyWg7CchKWBQTMzAxJBVMxQzRFUzTL0kyTUrM8i2mpZWopZh4fe8yn9NFKSx8Ty8pU8JSmKSomSKmZKCoLgrILipz2/v3Rj/k6gsroAgu+X9c1V+7MvTOfuYGddzOzc6uEEAJEREREVGVWtV0AERERUV3DAEVERESkEAMUERERkUIMUEREREQKMUARERERKcQARURERKQQAxQRERGRQgxQRERERAoxQBEREREpxABFZOEOHjyIvn37olGjRlCr1fD29kb79u0xceLE2i7N7FavXg2VSoX09PTaLuWBVN7/hw8fru1SiCweAxSRBfvpp58QHh4Oo9GIefPmYfv27ViyZAk6dOiA9evX13Z5REQPLJvaLoCIbm/evHkICgrCtm3bYGPzf3+uAwYMwLx582qxsru7fv06HB0da7sMs6vO/SosLISDg0O1rJuIzItnoIgsWG5uLjw9PWXhqZyVlfzPV6VSYcaMGRXaBQYGIiYmRnpdfpkmISEBr776Ktzd3eHk5ITo6Gj8/fffFd6fmJiILl26wMXFBY6OjujQoQN27NghazNjxgyoVCocPXoU/fr1g5ubGx566KE77ttvv/2GDh06wN7eHjqdDlOmTEFJSUmFdnVtv/bt24f27dvD3t4evr6+eO+997BixYoKlyYDAwPRq1cvxMfHo1WrVrC3t8fMmTMBAHq9HiNGjICfnx/s7OwQFBSEmTNnorS0VLat4uJifPjhh2jWrBnUajUaNmyIV199FZcvX67QV7169cLWrVvRunVrODg4oFmzZvjvf/9b6T7k5+fjzTffhKenJzw8PPDcc8/h0qVLsjYmkwnz5s2Ttu3l5YVXXnkFFy5cqLDtm39O5Tp16oROnTrJ1vfhhx/ikUcegYODA1xdXRESEoIlS5bI3nf69GkMHDgQXl5eUKvVePTRR/Hvf/+70v0gqk4MUEQWrH379jh48CDGjh2LgwcPVhow7tXQoUNhZWWFr7/+GosXL8ahQ4fQqVMn5OXlSW3WrFmDbt26wcXFBV988QX+97//wd3dHVFRURXCBgA899xzaNKkCTZs2IDly5ffdttpaWno0qUL8vLysHr1aixfvhzJycn48MMP6/R+HT9+HF27dsX169fxxRdfYPny5Th69Chmz55dafujR49i0qRJGDt2LLZu3Yrnn38eer0eTzzxBLZt24bp06fj559/xtChQxEXF4fhw4dL7zWZTOjTpw/mzp2LgQMH4qeffsLcuXORkJCATp06obCwULat33//HRMnTsSECRPw/fffIyQkBEOHDsUvv/xSoa5hw4bB1tYWX3/9NebNm4fdu3dj0KBBsjZvvvkm3n77bXTt2hWbN2/GBx98gK1btyI8PBw5OTm37aPbmTdvHmbMmIGXXnoJP/30E9avX4+hQ4fKfm5paWlo06YNUlNTsWDBAvz444/o2bMnxo4dK4VPohojiMhi5eTkiCeffFIAEACEra2tCA8PF3FxcSI/P1/WFoB4//33K6wjICBADBkyRHq9atUqAUD07dtX1u7XX38VAMSHH34ohBDi2rVrwt3dXURHR8valZWViccff1w88cQT0rz3339fABDTp0+v0n71799fODg4CL1eL80rLS0VzZo1EwDE2bNn6+R+vfDCC8LJyUlcvnxZtt7mzZtX2K+AgABhbW0tTp48KVvHiBEjRIMGDcS5c+dk8+fPny8AiBMnTgghhPjmm28EALFx40ZZu6SkJAFALFu2TLYte3t72ToLCwuFu7u7GDFihDSvvA9HjhwpW+e8efMEAJGZmSmEEOKPP/6otN3BgwcFADF16lTZtm/+OZWLiIgQERER0utevXqJli1bVmh3s6ioKOHn5ycMBoNs/ujRo4W9vb24cuXKHd9PZE48A0VkwTw8PLB3714kJSVh7ty56NOnD06dOoUpU6agRYsW9/R/+uVefvll2evw8HAEBARg165dAID9+/fjypUrGDJkCEpLS6XJZDKhe/fuSEpKwrVr12TreP7556u07V27dqFLly7w9vaW5llbW6N///73vD/lanO/9uzZg86dO8PT01OaZ2VlhRdffLHS9iEhIWjatKls3o8//ojIyEjodDpZfT169JC2Ud7O1dUV0dHRsnYtW7aEVqvF7t27Zett2bIlGjVqJL22t7dH06ZNce7cuQp19e7du0KdAKS25X1566W5J554Ao8++milZ/Hu5oknnsDvv/+OkSNHYtu2bTAajbLlN27cwI4dO9C3b184OjrK9vmZZ57BjRs38NtvvyneLtG94k3kRHVAWFgYwsLCAAAlJSV4++23sWjRIsybN++ebybXarWVzsvNzQUAZGVlAQD69et323VcuXIFTk5O0msfH58qbTs3N/e2279ftb1fN4fCcpXNu916s7Ky8MMPP8DW1rbS95SH5qysLOTl5cHOzu6O7cp5eHhUaKNWqytc6qusrVqtBgCpbXlfVla/TqerNJTdzZQpU+Dk5IQ1a9Zg+fLlsLa2xlNPPYWPPvoIYWFhyM3NRWlpKZYuXYqlS5dWuo77+R8KIqUYoIjqGFtbW7z//vtYtGgRUlNTpflqtRpFRUUV2pcf7G6l1+srndekSRMAkM6iLF26FO3atat0HbcGA5VKVaV98PDwuO32b1XX9qs8oN2tptut19PTEyEhIbe9b0qn00ntPDw8sHXr1krbOTs7V6nme1EesDIzM+Hn5ydbdunSJdkZOHt7+0p/fjk5ObJ2NjY2iI2NRWxsLPLy8pCYmIipU6ciKioKGRkZcHNzg7W1NQYPHoxRo0ZVWldQUJA5do+oShigiCxYZmZmpf+X/8cffwD4v4Mp8M+3nY4fPy5rt3PnThQUFFS67rVr18ouTe3fvx/nzp3DsGHDAAAdOnSAq6sr0tLSMHr06Pvel5tFRkZi8+bNyMrKksJKWVlZpc+2qkv7FRERgS1btsjCgclkwoYNG6q8jl69emHLli146KGH4Obmdsd269atQ1lZGdq2bXvftSvRuXNnAP/cjN+mTRtpflJSEv744w9MmzZNmlfZz+/UqVM4efKkLEDdzNXVFf369cPFixcxfvx4pKeno3nz5oiMjERycjJCQkJue+aNqKYwQBFZsKioKPj5+SE6OhrNmjWDyWTCsWPHsGDBAjRo0ADjxo2T2g4ePBjvvfcepk+fjoiICKSlpeGTTz6BRqOpdN2HDx/GsGHD8MILLyAjIwPTpk2Dr68vRo4cCQBo0KABli5diiFDhuDKlSvo168fvLy8cPnyZfz++++4fPkyPv3003var3fffRebN29G586dMX36dDg6OuLf//53hXuP6tp+TZs2DT/88AO6dOmCadOmwcHBAcuXL5f269ZHT1Rm1qxZSEhIQHh4OMaOHYtHHnkEN27cQHp6OrZs2YLly5fDz88PAwYMwNq1a/HMM89g3LhxeOKJJ2Bra4sLFy5g165d6NOnD/r27XtP+3E3jzzyCF5//XUsXboUVlZW6NGjB9LT0/Hee+/B398fEyZMkNoOHjwYgwYNwsiRI/H888/j3LlzmDdvHho2bChbZ3R0NIKDgxEWFoaGDRvi3LlzWLx4MQICAvDwww8DAJYsWYInn3wSHTt2xJtvvonAwEDk5+fjr7/+wg8//ICdO3dWy/4SVaq272Inottbv369GDhwoHj44YdFgwYNhK2trWjUqJEYPHiwSEtLk7UtKioSkydPFv7+/sLBwUFERESIY8eO3fbbatu3bxeDBw8Wrq6uwsHBQTzzzDPi9OnTFWrYs2eP6Nmzp3B3dxe2trbC19dX9OzZU2zYsEFqU/5ttZu/fXY3v/76q2jXrp1Qq9VCq9WKSZMmic8++6zCt9Xq2n7t3btXtG3bVrZfH330kQAg8vLypHYBAQGiZ8+ela7j8uXLYuzYsSIoKEjY2toKd3d3ERoaKqZNmyYKCgqkdiUlJWL+/Pni8ccfF/b29qJBgwaiWbNmYsSIEbJ9vt22bv0mXHkfJiUlydrt2rVLABC7du2S5pWVlYmPPvpING3aVNja2gpPT08xaNAgkZGRIXuvyWQS8+bNE40bNxb29vYiLCxM7Ny5s8K2FyxYIMLDw4Wnp6ews7MTjRo1EkOHDhXp6emy9Z09e1a89tprwtfXV9ja2oqGDRuK8PBw6VuWRDVFJYQQtRffiKimrV69Gq+++iqSkpKkG9PrA0ver27duiE9PR2nTp2q7VKIyEx4CY+IyIxiY2PRqlUr+Pv748qVK1i7di0SEhKwcuXK2i6NiMyIAYqIyIzKysowffp06PV6qFQqNG/eHF999VWFJ3kTUd3GS3hERERECvFJ5EREREQKMUARERERKcQARURERKQQbyKvBiaTCZcuXYKzs3OVh4AgIiKi2iWEQH5+PnQ63V0ffMsAVQ0uXboEf3//2i6DiIiI7kFGRkaFcR5vxQBVDcoH8czIyICLi0stV0NERERVYTQa4e/vX6XBuBmgqkH5ZTsXFxcGKCIiojqmKrff8CZyIiIiIoUYoIiIiIgUYoAiIiIiUogBioiIiEghBigiIiIihRigiIiIiBRigCIiIiJSiAGKiIiISCEGKCIiIiKF6lSA+uWXXxAdHQ2dTgeVSoXvvvtOtlwIgRkzZkCn08HBwQGdOnXCiRMnZG2KioowZswYeHp6wsnJCb1798aFCxdkba5evYrBgwdDo9FAo9Fg8ODByMvLq+a9e7CVlZVh9+7d+Oabb7B7926UlZXVdkkWWRMREVmGOhWgrl27hscffxyffPJJpcvnzZuHhQsX4pNPPkFSUhK0Wi26du2K/Px8qc348eOxadMmrFu3Dvv27UNBQQF69eolOzgOHDgQx44dw9atW7F161YcO3YMgwcPrvb9e1DFx8cjMDAQkZGRGDhwICIjIxEYGIj4+HjWRERElknUUQDEpk2bpNcmk0lotVoxd+5cad6NGzeERqMRy5cvF0IIkZeXJ2xtbcW6deukNhcvXhRWVlZi69atQggh0tLSBADx22+/SW0OHDggAIg///yzSrUZDAYBQBgMhvvZxQfCxo0bhUqlEgBkk0qlEiqVSmzcuJE1ERFRjVBy/K5TZ6Du5OzZs9Dr9ejWrZs0T61WIyIiAvv37wcAHDlyBCUlJbI2Op0OwcHBUpsDBw5Ao9Ggbdu2Upt27dpBo9FIbcg8ysrKMG7cOAghKiwrnzd+/PgavXRmiTUREZHlqTcBSq/XAwC8vb1l8729vaVler0ednZ2cHNzu2MbLy+vCuv38vKS2tyqqKgIRqNRNtHd7d27t8L9ZzcTQiAjIwN79+59oGsiIiLLU28CVDmVSiV7LYSoMO9Wt7aprP2d1hMXFyfdcK7RaODv738PlT94MjMzzdrOHCyxJiIisjz1JkBptVoAqHCWKDs7WzorpdVqUVxcjKtXr96xTVZWVoX1X758ucLZrXJTpkyBwWCQpoyMjPvenweBj4+PWduZgyXWRERElqfeBKigoCBotVokJCRI84qLi7Fnzx6Eh4cDAEJDQ2Fraytrk5mZidTUVKlN+/btYTAYcOjQIanNwYMHYTAYpDa3UqvVcHFxkU10dx07doSfn99tz+ypVCr4+/ujY8eOD3RNRERkeepUgCooKMCxY8dw7NgxAP/cOH7s2DGcP38eKpUK48ePx5w5c7Bp0yakpqYiJiYGjo6OGDhwIABAo9Fg6NChmDhxInbs2IHk5GQMGjQILVq0wNNPPw0AePTRR9G9e3cMHz4cv/32G3777TcMHz4cvXr1wiOPPFJbu14vWVtbY8mSJQAqXjYtf7148WJYW1s/0DUREZEFqr4vA5rfrl27Kny1HIAYMmSIEOKfRxm8//77QqvVCrVaLZ566imRkpIiW0dhYaEYPXq0cHd3Fw4ODqJXr17i/Pnzsja5ubni5ZdfFs7OzsLZ2Vm8/PLL4urVq1Wuk48xUGbjxo3Cz89P9jP19/ev1ccFWGJNRERUvZQcv1VCVPJ9bbovRqMRGo0GBoOBl/OqqKysDHv37kVmZiZ8fHzQsWPHWj/LY4k1ERFR9VFy/GaAqgYMUERERHWPkuN3nboHioiIiMgSMEARERERKcQARURERKQQAxQRERGRQgxQRERERAoxQBEREREpxABFREREpBADFBEREZFCDFBERERECjFAERERESnEAEVERESkEAMUERERkUIMUEREREQKMUARERERKcQARURERKQQAxQRERGRQgxQRERERAoxQBEREREpxABFREREpBADFBEREZFCDFBERERECjFAERERESnEAEVERESkEAMUERERkUIMUEREREQKMUARERERKcQARURERKQQAxQRERGRQgxQRERERAoxQBEREREpxABFREREpFC9ClCBgYFQqVQVplGjRgEAYmJiKixr166dbB1FRUUYM2YMPD094eTkhN69e+PChQu1sTtERERkoepVgEpKSkJmZqY0JSQkAABeeOEFqU337t1lbbZs2SJbx/jx47Fp0yasW7cO+/btQ0FBAXr16oWysrIa3RciIiKyXDa1XYA5NWzYUPZ67ty5eOihhxARESHNU6vV0Gq1lb7fYDBg5cqV+Oqrr/D0008DANasWQN/f38kJiYiKiqq+oonIiKiOqNenYG6WXFxMdasWYPXXnsNKpVKmr979254eXmhadOmGD58OLKzs6VlR44cQUlJCbp16ybN0+l0CA4Oxv79+2+7raKiIhiNRtlERERE9Ve9DVDfffcd8vLyEBMTI83r0aMH1q5di507d2LBggVISkpC586dUVRUBADQ6/Wws7ODm5ubbF3e3t7Q6/W33VZcXBw0Go00+fv7V8s+ERERkWWoV5fwbrZy5Ur06NEDOp1Omte/f3/p38HBwQgLC0NAQAB++uknPPfcc7ddlxBCdhbrVlOmTEFsbKz02mg0MkQRERHVY/UyQJ07dw6JiYmIj4+/YzsfHx8EBATg9OnTAACtVovi4mJcvXpVdhYqOzsb4eHht12PWq2GWq02T/FERERk8erlJbxVq1bBy8sLPXv2vGO73NxcZGRkwMfHBwAQGhoKW1tb6dt7AJCZmYnU1NQ7BigiIiJ6sNS7M1AmkwmrVq3CkCFDYGPzf7tXUFCAGTNm4Pnnn4ePjw/S09MxdepUeHp6om/fvgAAjUaDoUOHYuLEifDw8IC7uzveeusttGjRQvpWHhEREVG9C1CJiYk4f/48XnvtNdl8a2trpKSk4Msvv0ReXh58fHwQGRmJ9evXw9nZWWq3aNEi2NjY4MUXX0RhYSG6dOmC1atXw9rauqZ3hYiIiCyUSggharuI+sZoNEKj0cBgMMDFxaW2yyEiIqIqUHL8rpf3QBERERFVJwYoIiIiIoUYoIiIiIgUYoAiIiIiUogBioiIiEghBigiIiIihRigiIiIiBRigCIiIiJSiAGKiIiISCEGKCIiIiKFGKCIiIiIFGKAIiIiIlKIAYqIiIhIIQYoIiIiIoUYoIiIiIgUYoAiIiIiUogBioiIiEghBigiIiIihRigiIiIiBRigCIiIiJSiAGKiIiISCEGKCIiIiKFGKCIiIiIFGKAIiIiIlKIAYqIiIhIIQYoIiIiIoUYoIiIiIgUYoAiIiIiUogBioiIiEghBigiIiIihRigiIiIiBSqVwFqxowZUKlUskmr1UrLhRCYMWMGdDodHBwc0KlTJ5w4cUK2jqKiIowZMwaenp5wcnJC7969ceHChZreFSIiIrJg9SpAAcBjjz2GzMxMaUpJSZGWzZs3DwsXLsQnn3yCpKQkaLVadO3aFfn5+VKb8ePHY9OmTVi3bh327duHgoIC9OrVC2VlZbWxO0RERGSBbGq7AHOzsbGRnXUqJ4TA4sWLMW3aNDz33HMAgC+++ALe3t74+uuvMWLECBgMBqxcuRJfffUVnn76aQDAmjVr4O/vj8TERERFRdXovhAREZFlqndnoE6fPg2dToegoCAMGDAAf//9NwDg7Nmz0Ov16Natm9RWrVYjIiIC+/fvBwAcOXIEJSUlsjY6nQ7BwcFSm8oUFRXBaDTKJiIiIqq/6lWAatu2Lb788kts27YNn3/+OfR6PcLDw5Gbmwu9Xg8A8Pb2lr3H29tbWqbX62FnZwc3N7fbtqlMXFwcNBqNNPn7+5t5z4iIiMiS1KsA1aNHDzz//PNo0aIFnn76afz0008A/rlUV06lUsneI4SoMO9Wd2szZcoUGAwGacrIyLiPvSAiIiJLV68C1K2cnJzQokULnD59Wrov6tYzSdnZ2dJZKa1Wi+LiYly9evW2bSqjVqvh4uIim4iIiKj+qtcBqqioCH/88Qd8fHwQFBQErVaLhIQEaXlxcTH27NmD8PBwAEBoaChsbW1lbTIzM5Gamiq1ISIiIqpX38J76623EB0djUaNGiE7OxsffvghjEYjhgwZApVKhfHjx2POnDl4+OGH8fDDD2POnDlwdHTEwIEDAQAajQZDhw7FxIkT4eHhAXd3d7z11lvSJUEiIiIioJ4FqAsXLuCll15CTk4OGjZsiHbt2uG3335DQEAAAGDy5MkoLCzEyJEjcfXqVbRt2xbbt2+Hs7OztI5FixbBxsYGL774IgoLC9GlSxesXr0a1tbWtbVbREREZGFUQghR20XUN0ajERqNBgaDgfdDERER1RFKjt/1+h4oIiIiourAAEVERESkEAMUERERkUIMUEREREQKMUARERERKcQARURERKQQAxQRERGRQgxQRERERAoxQBEREREpxABFREREpBADFBEREZFCDFBERERECjFAERERESnEAEVERESkEAMUERERkUIMUEREREQKMUARERERKcQARURERKQQAxQRERGRQgxQRERERAoxQBEREREpxABFREREpBADFBEREZFCDFBERERECjFAERERESnEAEVERESkEAMUERERkUIMUEREREQKMUARERERKcQARURERKQQAxQRERGRQvUqQMXFxaFNmzZwdnaGl5cXnn32WZw8eVLWJiYmBiqVSja1a9dO1qaoqAhjxoyBp6cnnJyc0Lt3b1y4cKEmd4WIiIgsWL0KUHv27MGoUaPw22+/ISEhAaWlpejWrRuuXbsma9e9e3dkZmZK05YtW2TLx48fj02bNmHdunXYt28fCgoK0KtXL5SVldXk7hAREZGFsqntAsxp69atsterVq2Cl5cXjhw5gqeeekqar1arodVqK12HwWDAypUr8dVXX+Hpp58GAKxZswb+/v5ITExEVFRU9e0AERER1Qn3dAYqLy8PK1aswJQpU3DlyhUAwNGjR3Hx4kWzFne/DAYDAMDd3V02f/fu3fDy8kLTpk0xfPhwZGdnS8uOHDmCkpISdOvWTZqn0+kQHByM/fv3V7qdoqIiGI1G2URERET1l+IAdfz4cTRt2hQfffQR5s+fj7y8PADApk2b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/w0AeO+997By5UqzF0hERERkaRQHqNmzZ2P16tWYN28e7OzspPktWrTAihUrzFocERERkSVSHKC+/PJLfPbZZ3j55ZdhbW0tzQ8JCcGff/5p1uKIiIiILJHiAHXx4sVKH6JpMplQUlJilqKIiIiILJniAPXYY49h7969FeZv2LABrVq1MktRRERERJasyo8xeO2117BkyRK8//77GDx4MC5evAiTyYT4+HicPHkSX375JX788cfqrJWIiIjIIlT5DNQXX3yBwsJCREdHY/369diyZQtUKhWmT5+OP/74Az/88AO6du1anbUSERERWYQqB6ibH1geFRWFPXv2oKCgANevX8e+ffvQrVu3aimwqtLT0zF06FAEBQXBwcEBDz30EN5//30UFxfL2qlUqgrT8uXLZW1SUlIQEREBBwcH+Pr6YtasWVD4wHYiIiKqxxQ9iVylUlVXHfftzz//hMlkwn/+8x80adIEqampGD58OK5du4b58+fL2q5atQrdu3eXXms0GunfRqMRXbt2RWRkJJKSknDq1CnExMTAyckJEydOrLH9ISIiIsulKEA1bdr0riHqypUr91XQverevbssFDVu3BgnT57Ep59+WiFAubq6QqvVVrqetWvX4saNG1i9ejXUajWCg4Nx6tQpLFy4ELGxsRYdIomIiKhmKApQM2fOlJ2tsXQGgwHu7u4V5o8ePRrDhg1DUFAQhg4ditdff10aJPnAgQOIiIiAWq2W2kdFRWHKlClIT09HUFBQhfUVFRWhqKhIem00Gqthb4iIiMhSKApQAwYMgJeXV3XVYlZnzpzB0qVLsWDBAtn8Dz74AF26dIGDgwN27NiBiRMnIicnB++++y4AQK/XIzAwUPYeb29vaVllASouLg4zZ86snh0hIiIii1Plm8hr69LVjBkzKr3x++bp8OHDsvdcunQJ3bt3xwsvvIBhw4bJlr377rto3749WrZsiYkTJ2LWrFn4+OOPZW1u3dfyG8hv1wdTpkyBwWCQpoyMjPvdbSIiIrJgVT4DVVvfQhs9ejQGDBhwxzY3nzG6dOkSIiMj0b59e3z22Wd3XX+7du1gNBqRlZUFb29vaLVa6PV6WZvs7GwA/3cm6lZqtVp2yY+IiIjqtyoHKJPJVJ113Janpyc8PT2r1PbixYuIjIxEaGgoVq1aJd3XdCfJycmwt7eHq6srAKB9+/aYOnUqiouLpcGSt2/fDp1OV+HSHhERET2YFA/lYqkuXbqETp06wd/fH/Pnz8fly5eh1+tlZ5N++OEHfP7550hNTcWZM2ewYsUKTJs2Da+//rp0BmngwIFQq9WIiYlBamoqNm3ahDlz5vAbeERERCRRdBO5Jdu+fTv++usv/PXXX/Dz85MtK7/8aGtri2XLliE2NhYmkwmNGzfGrFmzMGrUKKmtRqNBQkICRo0ahbCwMLi5uSE2NhaxsbE1uj9ERERkuVSCj9g2O6PRCI1GA4PBABcXl9ouh4iIiKpAyfG73lzCIyIiIqopDFBERERECjFAERERESnEAEVERESkEAMUERERkUIMUEREREQKMUARERERKcQARURERKQQAxQRERGRQgxQRERERAoxQBEREREpxABFREREpBADFBEREZFCDFBERERECjFAERERESnEAEVERESkEAMUERERkUIMUEREREQKMUARERERKcQARURERKQQAxQRERGRQgxQRERERAoxQBEREREpxABFREREpBADFBEREZFCDFBERERECjFAERERESnEAEVERESkEAMUERERkUIMUEREREQKMUARERERKVSvAlRgYCBUKpVseuedd2Rtzp8/j+joaDg5OcHT0xNjx45FcXGxrE1KSgoiIiLg4OAAX19fzJo1C0KImtwVIiIismA2tV2Auc2aNQvDhw+XXjdo0ED6d1lZGXr27ImGDRti3759yM3NxZAhQyCEwNKlSwEARqMRXbt2RWRkJJKSknDq1CnExMTAyckJEydOrPH9ISIiIstT7wKUs7MztFptpcu2b9+OtLQ0ZGRkQKfTAQAWLFiAmJgYzJ49Gy4uLli7di1u3LiB1atXQ61WIzg4GKdOncLChQsRGxsLlUpVk7tDREREFqheXcIDgI8++ggeHh5o2bIlZs+eLbs8d+DAAQQHB0vhCQCioqJQVFSEI0eOSG0iIiKgVqtlbS5duoT09PRKt1lUVASj0SibiIiIqP6qV2egxo0bh9atW8PNzQ2HDh3ClClTcPbsWaxYsQIAoNfr4e3tLXuPm5sb7OzsoNfrpTaBgYGyNuXv0ev1CAoKqrDduLg4zJw5sxr2iIiIiCyRxZ+BmjFjRoUbw2+dDh8+DACYMGECIiIiEBISgmHDhmH58uVYuXIlcnNzpfVVdglOCCGbf2ub8hvIb3f5bsqUKTAYDNKUkZFx3/tNRERElsviz0CNHj0aAwYMuGObW88YlWvXrh0A4K+//oKHhwe0Wi0OHjwoa3P16lWUlJRIZ5m0Wq10NqpcdnY2AFQ4e1VOrVbLLvkRERFR/WbxAcrT0xOenp739N7k5GQAgI+PDwCgffv2mD17NjIzM6V527dvh1qtRmhoqNRm6tSpKC4uhp2dndRGp9PdNqgRERHRg8XiL+FV1YEDB7Bo0SIcO3YMZ8+exf/+9z+MGDECvXv3RqNGjQAA3bp1Q/PmzTF48GAkJydjx44deOuttzB8+HC4uLgAAAYOHAi1Wo2YmBikpqZi06ZNmDNnDr+BR0RERBKLPwNVVWq1GuvXr8fMmTNRVFSEgIAADB8+HJMnT5baWFtb46effsLIkSPRoUMHODg4YODAgZg/f77URqPRICEhAaNGjUJYWBjc3NwQGxuL2NjY2tgtIiIiskAqwUdsm53RaIRGo4HBYJDObBEREZFlU3L8rjeX8IiIiIhqCgMUERERkUIMUEREREQKMUARERERKcQARURERKQQAxQRERGRQgxQRERERAoxQBEREREpxABFREREpBADFBEREZFCDFBERERECjFAERERESnEAEVERESkEAMUERERkUIMUEREREQKMUARERERKcQARURERKQQAxQRERGRQgxQRERERAoxQBEREREpxABFREREpBADFBEREZFCDFBERERECjFAERERESnEAEVERESkEAMUERERkUIMUEREREQKMUARERERKcQARURERKQQAxQRERGRQgxQRERERArVmwC1e/duqFSqSqekpCSpXWXLly9fLltXSkoKIiIi4ODgAF9fX8yaNQtCiJreJSIiIrJQNrVdgLmEh4cjMzNTNu+9995DYmIiwsLCZPNXrVqF7t27S681Go30b6PRiK5duyIyMhJJSUk4deoUYmJi4OTkhIkTJ1bvThAREVGdUG8ClJ2dHbRarfS6pKQEmzdvxujRo6FSqWRtXV1dZW1vtnbtWty4cQOrV6+GWq1GcHAwTp06hYULFyI2NrbCuoiIiOjBU28u4d1q8+bNyMnJQUxMTIVlo0ePhqenJ9q0aYPly5fDZDJJyw4cOICIiAio1WppXlRUFC5duoT09PRKt1VUVASj0SibiIiIqP6qtwFq5cqViIqKgr+/v2z+Bx98gA0bNiAxMREDBgzAxIkTMWfOHGm5Xq+Ht7e37D3lr/V6faXbiouLg0ajkaZbt0lERET1i8UHqBkzZtz25vDy6fDhw7L3XLhwAdu2bcPQoUMrrO/dd99F+/bt0bJlS0ycOBGzZs3Cxx9/LGtz62W68hvIb3f5bsqUKTAYDNKUkZFxP7tMREREFs7i74EaPXo0BgwYcMc2gYGBsterVq2Ch4cHevfufdf1t2vXDkajEVlZWfD29oZWq61wpik7OxsAKpyZKqdWq2WX/IiIiKh+s/gA5enpCU9Pzyq3F0Jg1apVeOWVV2Bra3vX9snJybC3t4erqysAoH379pg6dSqKi4thZ2cHANi+fTt0Ol2FoEZEREQPJou/hKfUzp07cfbs2Uov3/3www/4/PPPkZqaijNnzmDFihWYNm0aXn/9dekM0sCBA6FWqxETE4PU1FRs2rQJc+bM4TfwiIiISGLxZ6CUWrlyJcLDw/Hoo49WWGZra4tly5YhNjYWJpMJjRs3xqxZszBq1CipjUajQUJCAkaNGoWwsDC4ubkhNjYWsbGxNbkbREREZMFUgo/YNjuj0QiNRgODwQAXF5faLoeIiIiqQMnxu95dwiMiIiKqbgxQRERERAoxQBEREREpxABFREREpBADFBEREZFCDFBERERECjFAERERESnEAEVERESkEAMUERERkUIMUEREREQKMUARERERKcQARURERKQQAxQRERGRQgxQRERERAoxQBEREREpxABFREREpBADFBEREZFCDFBERERECjFAERERESnEAEVERESkEAMUERERkUIMUEREREQKMUARERERKcQARURERKQQAxQRERGRQgxQRERERAoxQBEREREpxABFREREpBADFBEREZFCDFBERERECtnUdgFElqqsrAx79+5FZmYmfHx80LFjR1hbW9d2WURED6Ti4mIsW7YMZ86cwUMPPYSRI0fCzs6u1uqpM2egZs+ejfDwcDg6OsLV1bXSNufPn0d0dDScnJzg6emJsWPHori4WNYmJSUFERERcHBwgK+vL2bNmgUhhKzNnj17EBoaCnt7ezRu3BjLly+vrt0iCxUfH4/AwEBERkZi4MCBiIyMRGBgIOLj42u7NCKiB87kyZPh6OiICRMm4JNPPsGECRPg6OiIyZMn11pNdSZAFRcX44UXXsCbb75Z6fKysjL07NkT165dw759+7Bu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", + "text/plain": [ + "<Figure size 640x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "plt.plot(distance, temperature, \"ok\", label=\"Temperature\")\n", "plt.title(\"Super duper greenhouse\")\n", - "plt.xlabel('Distance')\n", - "plt.ylabel('Temperature')\n", + "plt.xlabel(\"Distance\")\n", + "plt.ylabel(\"Temperature\")\n", "plt.show()" ] }, @@ -274,10 +338,19 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 10, "id": "e05bdc36", "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "-999.0\n", + "999.0\n" + ] + } + ], "source": [ "print(temperature.min())\n", "print(temperature.max())" @@ -288,9 +361,9 @@ "id": "9e8d396a", "metadata": {}, "source": [ - "The values are suspcious since they are +/-999...this is a common error code with some sensors, so we can assume that they can be removed from the dataset. We can easily remove these erroneous values of temperature, but this time we will use a different method than before. The explamation mark before an equals sig, `!=`, denotes \"not equal to.\" We can use this as a logic operator to directly eliminate the values in one line. For example:\n", + "The values are suspcious since they are +/-999...this is a common error code with some sensors, so we can assume that they can be removed from the dataset. We can easily remove these erroneous values of temperature, but this time we will use a different method than before. The exclamation mark before an equal sign, `!=`, denotes \"not equal to.\" We can use this as a logic operator to directly eliminate the values in one line. For example:\n", "```\n", - "array_1 = array_1[array_2!=-999]\n", + "array_1 = array_1[array_2 != -999]\n", "```" ] }, @@ -309,7 +382,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 11, "id": "760ef4fc", "metadata": {}, "outputs": [], @@ -328,12 +401,30 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 12, "id": "c2565d1a", "metadata": {}, - "outputs": [], - "source": [ - "print(distance.size==temperature.size)\n", + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "True\n" + ] + }, + { + "data": { + "text/plain": [ + "994" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "print(distance.size == temperature.size)\n", "temperature.size" ] }, @@ -368,7 +459,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 13, "id": "87c3df95", "metadata": {}, "outputs": [], @@ -383,7 +474,7 @@ "id": "830e00fd", "metadata": {}, "source": [ - "The array is names \"mask\" because this process utilizes **masked arrays**...you can read more about it [here](https://python.plainenglish.io/numpy-masks-in-python-d8c13509fbc8)." + "The array is named \"mask\" because this process utilizes **masked arrays**...you can read more about it [here](https://python.plainenglish.io/numpy-masks-in-python-d8c13509fbc8)." ] }, { @@ -396,15 +487,26 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 14, "id": "c4d68786", "metadata": {}, - "outputs": [], - "source": [ - "plt.plot(distance, temperature, \"ok\", label = 'Temperature')\n", + "outputs": [ + { + "data": { + "image/png": "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lJaWRlu3bnU776WXXkp9+/Z1/js2NpbOO+88OnjwYJd83XTTTV3ySUTOY4Wy9Ow+uvzyy+mCCy7w2roVyOWXX0579uyhWbNm0aZNm6itrc3t+dOnT9O7775Lt9xyC8XHx7td84033kinT5+mDz/8UPL7AsiFAcAAEg0fPpyGDx9OREQ///wz/fa3v6WysjJaunSp7IHAaWlpXh87duwYEREdOXKEiIjy8/N9nuP48ePUo0cP57/T09NFvfexY8d8vn+wtL4u1wBN4O0xX+c9cuQIvfHGGxQdHe31NUIAe+TIEfrhhx+oe/fufo8TpKSkdDkmJiamS3eUt2NjYmKIiJzHCmXpLf8ZGRleA6RA5s2bRz169KDy8nJatWoVGY1Guuaaa+jJJ5+k4cOH07Fjx6ijo4Oefvppevrpp72eI5jgHkAqBDMAQYiOjqaSkhIqKyujzz77zPl4TEwMtbe3dzleqHg8NTc3e33s3HPPJSJyti48/fTTNGLECK/n8KykDQaDqGtISUnx+f6e9HZdQrAUKE++zpuamkqDBw/2Oc4mIyPDeVxKSgpt3LjR63GJiYmi8iyHEOw0NTWRxWJxe+7w4cNuLVOxsbFeP7+jR4+6HdetWzd6+OGH6eGHH6YffviB7HY7FRUV0dixY6mhoYF69epFRqOR7rzzTnrooYe85qt///5KXB6AKAhmAERqamryevf7+eefE9F/KzaiX2aNfPrpp27Hvffee/Tjjz96Pferr77q1n2yfft2OnjwIN13331ERHTVVVdRz549af/+/TR79uygr8VVbm4ubdiwgY4cOeIMHBwOh9e1c/R0XaNGjaK3337braLu7Oykqqoq0eeYMGECvf3223TOOedQr169/B63du1acjgcdMUVVwSddymuvfZaIvplIPVll13mfHzHjh30+eef0/z5852Pefv8vvzyS/riiy/cghlXPXv2pPz8fGpsbCSbzUYHDhygCy+8kHJzc2nXrl00ePBgny1SAKGCYAZApLFjx5LFYqGJEyfSoEGDqLOzk3bv3k3Lly+nhIQEKigocB5755130uOPP05PPPEEjRo1ivbv30/PPPMMJScnez33v/71L7rvvvvo1ltvpYaGBpo/fz5lZmbSrFmziIgoISGBnn76aZoxYwYdP36c8vPzqXfv3vT999/Tnj176Pvvv6fnnntO1nUV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ev75592OOXToEN1+++1kMpmoR48eNHz4cProo4+cz7/xxhs0bNgwio2NpQEDBlBpaakzIAOA8IFgBgBUd+2119Ill1xCNTU1XZ7705/+RBs2bKDKykr64osvqLy83Bm07Nixg4iIXnrpJWpqanL++8cff6Qbb7yR7HY77dq1i8aOHUsTJ06k7777zu3cy5cvp+HDh9OuXbto1qxZ9OCDD9K///1v5zlGjRpFhw8fpg0bNtCePXvosccec3aHbdq0iaZPn05z5syh/fv301/+8hdavXo1/eEPf1CrmABALlW2rwSAs9KMGTN40qRJXp+bMmUKX3DBBcz8yy7p//jHP5iZ+Te/+Q1fe+213NnZ6fV1rsf6c+GFF/LTTz/t/He/fv14+vTpzn93dnZy7969+bnnnmNm5r/85S+cmJjIx44d83q+7OxsXrRokdtjf//73zk9PT1gXgAgtLppHUwBwNmBmclgMHR5fObMmXT99dfT+eefTzfccANNmDCBxowZ4/dcP/30E5WWltKbb75Jhw8fpo6ODjp16lSXlpnBgwc7/99gMFBaWhq1tLQQEdHu3btpyJAhZDKZvL7HJ598Qjt27HBriXE4HHT69Gk6efIkxcfHi752AFAXghkACInPP/+c+vfv3+XxoUOHUn19Pb3zzjtkt9vptttuo+uuu47Wr1/v81yFhYW0adMmWrZsGZ177rkUFxdH+fn5dObMGbfjoqOj3f5tMBic3UhxcXF+89vZ2UmlpaWUl5fX5bnY2Fi/rwWA0EIwAwCqe++992jv3r00d+5cr88nJSXRlClTaMqUKZSfn0833HADHT9+nEwmE0VHR5PD4XA7vq6ujmbOnEm33HILEf0y/uXAgQOS8jR48GB64YUXnO/jaejQofTFF1/QueeeK+m8ABB6CGYAQFHt7e3U3NxMDoeDjhw5Qhs3bqTFixfThAkT6K677upyfFlZGaWnp9Oll15KUVFRVFVVRWlpadSzZ08i+mVW0rvvvktXXXUVxcTEUK9evejcc8+lmpoamjhxIhkMBnr88cfd1rERY+rUqbRo0SK6+eabafHixZSenk67du2ijIwMuvLKK+mJJ56gCRMmkNVqpVtvvZWioqLo008/pb1799LChQuVKCoAUAhmMwGAojZu3Ejp6emUlZVFN9xwA9XW1tKf/vQnev3118loNHY5PiEhgZ588kkaPnw4XXbZZXTgwAF6++23KSrql5+n5cuX05YtW8hqtdKQIUOI6JcAqFevXjRy5EiaOHEijR07loYOHSopn927d6fNmzdT79696cYbb6SLL76YlixZ4szj2LFj6c0336QtW7bQZZddRiNGjKCnnnqK+vXrF2QJAYDSDMzMWmcCAAAAQC60zAAAAICuIZgBAAAAXUMwAwAAALqGYAYAAAB0DcEMAAAA6BqCGQAAANA1BDMAAACgawhmAAAAQNcQzAAAAICuIZgBAAAAXUMwAwAAALqGYAYAAAB07f8DBFA+ZKa9Yu4AAAAASUVORK5CYII=", + "text/plain": [ + "<Figure size 640x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "plt.plot(distance, temperature, \"ok\", label=\"Temperature\")\n", "plt.title(\"Super duper greenhouse\")\n", - "plt.xlabel('Distance')\n", - "plt.ylabel('Temperature')\n", + "plt.xlabel(\"Distance\")\n", + "plt.ylabel(\"Temperature\")\n", "plt.show()" ] }, @@ -413,7 +515,7 @@ "id": "999da984", "metadata": {}, "source": [ - "Looks good! But wait---there also appear to be some values in the array that are not physically possible! We know for sure that there was nothing cold in the greenhouse during the measurements; also it's very likely that a \"0\" value could have come from an error in the sensor.\n", + "Looks good! But wait—there also appear to be some values in the array that are not physically possible! We know for sure that there was nothing cold in the greenhouse during the measurements; also it's very likely that a \"0\" value could have come from an error in the sensor.\n", "\n", "See if you can apply the `numpy` method `nonzero` to remove zeros from the array. Hint: it works in a very similar way to `isnan`, which we used above." ] @@ -433,7 +535,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 15, "id": "20c58ef0", "metadata": {}, "outputs": [], @@ -465,7 +567,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 16, "id": "faa439a0", "metadata": {}, "outputs": [], @@ -484,15 +586,26 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 17, "id": "2bcbdda1", "metadata": {}, - "outputs": [], - "source": [ - "plt.plot(distance, temperature, \"ok\", label = 'Temperature')\n", + "outputs": [ + { + "data": { + "image/png": "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//wnXHvttXDllVfCjh074JZbboGysjKYO3cuAADk5eXBvffeC7Nnz4ZPPvkEqqqqYMiQIfDRRx/Bq6++Ch999BH8+te/tvS76urq4PHHH4cLL7wQbrvtNhg4cCD88pe/7OOr4rffdcstt8Cf/vQnmDBhAtxyyy0wYMAAWLVqVfJ3pYfTa/HTn/4UNm7cCGPGjIH58+fDiSeeCIcOHYLt27fDU089BatWrYJwOAzf/va34eGHH4ZLL70Uqqur4eyzz4bs7GzYuXMntLe3Q0VFBVx++eWWfocZJ554Ilx//fVw7733QlZWFlxyySWwfft2uPXWWyESicCCBQuS286aNQtmzpwJc+fOhSuuuALef/99WLZsGYRCoZR9Tps2DU499VQYPXo0hEIheP/992HlypUwfPhwOP744wEA4J577oHzzz8fxo4dCzfccAOMGDECDhw4AO+88w786U9/gmeffVbK7yUITdz2QCYIv/DII4/gVVddhccffzzm5eVhdnY2HnXUUThr1ix88803U7aNx+P44x//GCORCA4YMADHjRuHmzdv1o36eeaZZ3DWrFl4xBFH4IABA/DSSy/FrVu39unDc889h1OmTMGioiLMzs7GsrIynDJlCra0tCS3UaJ+1FE8Zvz1r3/Fc845B3NycnDo0KFYW1uL9913X5+oH7/9rs7OTvzGN76R8rvuuusuBAD89NNPk9sNHz4cp0yZormPjz76COfPn49HH300ZmdnY1FREZ555pl4yy234GeffZbc7ssvv8Tly5fjaaedhrm5uZiXl4cnnXQSfv/730/5zXrHSo8oUsZw06ZNKdu1t7cjAGB7e3vys56eHrzrrrvwhBNOwOzsbCwpKcGZM2fijh07Ur7b29uLy5Ytw2OOOQZzc3Nx9OjR+Oyzz/Y59ooVK3DMmDFYUlKC/fv3x6OOOgq/973v4fbt21P2t23bNvzud7+LZWVlmJ2djaFQCMeMGZOMViMIpwggIronpQji8ObBBx+E73znO7Bp06akU3Em4OXfNXHiRNi+fTu8/fbbbneFIAhB0DITQRAZy0033QSjRo2CSCQCn3zyCTz88MOwceNG+O1vf+t21wiCEAiJGYIgMpaenh647bbb4MMPP4RAIACnnHIK/OEPf+iTQZcgCH9Dy0wEQRAEQfgaygBMEARBEISvITFDEARBEISvITFD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", + "text/plain": [ + "<Figure size 640x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "plt.plot(distance, temperature, \"ok\", label=\"Temperature\")\n", "plt.title(\"Super duper greenhouse\")\n", - "plt.xlabel('Distance')\n", - "plt.ylabel('Temperature')\n", + "plt.xlabel(\"Distance\")\n", + "plt.ylabel(\"Temperature\")\n", "plt.show()" ] }, @@ -501,7 +614,7 @@ "id": "30bce92b", "metadata": {}, "source": [ - "Let's pretend there is a systematic error in our measurement device because it was not properly calibrated. It causes all observations below 15 degrees need to be corrected dividing the multiplying the measurement by 1.5. Numpy actually makes it very easy to change the contents of an array conditionally by replacement using the `where` method!" + "Let's pretend that there is a systematic error in our measurement device because it was not calibrated properly. As a result, all observations below 15 degrees need to be corrected by multiplying the measurement by 1.5. Numpy actually makes it very easy to replace the contents of an array based on a condition using the `where` method!" ] }, { @@ -512,19 +625,19 @@ "<div style=\"background-color:#AABAB2; color: black; width:95%; vertical-align: middle; padding:15px; margin: 10px; border-radius: 10px\">\n", "<p>\n", "<b>Task 2.5:</b> \n", - " Play with the cell below to understand what the <code>where</code> method does (i.e., replacement)---it's very useful to know about!\n", + " Play with the cell below to understand what the <code>where</code> method does (i.e., replacement)—it's very useful to know about!\n", "</p>\n", "</div>" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 18, "id": "4a20fc63", "metadata": {}, "outputs": [], "source": [ - "temperature = np.where(temperature>15, temperature, temperature*1.5)" + "temperature = np.where(temperature > 15, temperature, temperature * 1.5)" ] }, { @@ -539,15 +652,26 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 19, "id": "e650f1d3", "metadata": {}, - "outputs": [], - "source": [ - "plt.plot(distance, temperature, \"ok\", label = 'Temperature')\n", + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjMAAAHFCAYAAAAHcXhbAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8hTgPZAAAACXBIWXMAAA9hAAAPYQGoP6dpAACMV0lEQVR4nO2de3xU1dX312QMCZALTBJNyISg9f5YvKEVFAleQAWaGmIpFoW2aiumJMiTXjAa0hcFebCB2lZqbbU25ZKQVK0XkLGJpvWtRRFFbRUVLEIAwYeLRaIzWe8fvmd65uRc9j5n73MZ1vfz2R9lMnPOPvucs/dvr73W2iFERCAIgiAIgggoGV5XgCAIgiAIwgkkZgiCIAiCCDQkZgiCIAiCCDQkZgiCIAiCCDQkZgiCIAiCCDQkZgiCIAiCCDQkZgiCIAiCCDQkZgiCIAiCCDQkZgiCIAiCCDQkZgiCg5deegmuvfZaGD58OGRlZcEJJ5wAo0ePhnnz5nldNeE88sgjEAqFYPv27V5X5ZhEaf+XX37Z66oQhO8hMUMQjDz11FMwZswYOHToECxZsgSeffZZWL58OVx88cWwZs0ar6tHEARxzHKc1xUgiKCwZMkSOPHEE2H9+vVw3HH/eXW+8Y1vwJIlSzysmTVHjhyBQYMGeV0N4ci8rk8//RQGDhwo5dgEQYiFLDMEwcj+/fuhsLAwRcgoZGSkvkqhUAgWLFjQ73sjRoyAWbNmJf+tLCVs2LABvvWtb0EkEoHBgwfDlClT4P333+/3+1gsBpdffjnk5eXBoEGD4OKLL4bnnnsu5TsLFiyAUCgEmzZtgurqahg6dCh86UtfMr22v/3tb3DxxRdDdnY2DBs2DH784x/D559/3u97Qbuuv/zlLzB69GjIzs6G0tJSuPPOO+Ghhx7qt3w2YsQImDx5MnR0dMC5554L2dnZ0NTUBAAAu3fvhu9+97sQjUZhwIABcOKJJ0JTUxPE4/GUc3322WewcOFCOP300yErKwuKiorgW9/6Fnz00Uf92mry5Mmwbt06OO+882DgwIFw+umnw29/+1vdazh8+DDceuutUFhYCAUFBVBVVQW7du1K+U5fXx8sWbIkee7jjz8ebrzxRvjwww/7nVt9nxQqKiqgoqIi5XgLFy6E0047DQYOHAhDhgyBkSNHwvLly1N+t3XrVrj++uvh+OOPh6ysLDjjjDPgF7/4he51EIRMSMwQBCOjR4+Gl156CebMmQMvvfSS7mBvl+985zuQkZEBK1euhGXLlsHf//53qKiogAMHDiS/09LSAhMmTIC8vDz43e9+B62trRCJRGDixIn9Bn4AgKqqKjj55JOhra0NVqxYYXjut956Cy6//HI4cOAAPPLII7BixQp49dVXYeHChYG+rtdffx2uvPJKOHLkCPzud7+DFStWwKZNm+Duu+/W/f6mTZugvr4e5syZA+vWrYOpU6fC7t274cILL4T169fDXXfdBc888wx85zvfgUWLFsHNN9+c/G1fXx9UVlbC4sWL4frrr4ennnoKFi9eDBs2bICKigr49NNPU8712muvwbx582Du3Lnw+OOPw8iRI+E73/kOvPDCC/3qddNNN0FmZiasXLkSlixZAl1dXTBjxoyU79x6663wwx/+EK688kp44okn4P/8n/8D69atgzFjxsC+ffsM28iIJUuWwIIFC2D69Onw1FNPwZo1a+A73/lOyn1766234IILLoA33ngD7rvvPnjyySdh0qRJMGfOnKQQJAjXQIIgmNi3bx9ecsklCAAIAJiZmYljxozBRYsW4eHDh1O+CwDY2NjY7xjl5eU4c+bM5L8ffvhhBAC89tprU77317/+FQEAFy5ciIiI//73vzESieCUKVNSvpdIJPDss8/GCy+8MPlZY2MjAgDeddddTNc1bdo0HDhwIO7evTv5WTwex9NPPx0BALdt2xbI67ruuutw8ODB+NFHH6Uc98wzz+x3XeXl5RgOh/Htt99OOcZ3v/tdzMnJwQ8++CDl86VLlyIA4JtvvomIiKtWrUIAwPb29pTvbdy4EQEAf/nLX6acKzs7O+WYn376KUYiEfzud7+b/Expw9mzZ6ccc8mSJQgA2NPTg4iI//jHP3S/99JLLyEA4Pz581POrb5PCuPGjcNx48Yl/z158mQ855xz+n1PzcSJEzEajeLBgwdTPq+pqcHs7Gz8+OOPTX9PECIhywxBMFJQUADd3d2wceNGWLx4MVRWVsI777wDP/7xj+HLX/6yrRmwwje/+c2Uf48ZMwbKy8uhs7MTAABefPFF+Pjjj2HmzJkQj8eTpa+vD6666irYuHEj/Pvf/045xtSpU5nO3dnZCZdffjmccMIJyc/C4TBMmzbN9vUoeHldzz//PFx22WVQWFiY/CwjIwO+/vWv635/5MiRcOqpp6Z89uSTT8L48eNh2LBhKfW7+uqrk+dQvjdkyBCYMmVKyvfOOeccKC4uhq6urpTjnnPOOTB8+PDkv7Ozs+HUU0+FDz74oF+9vvrVr/arJwAkv6u0pXb56MILL4QzzjhD17plxYUXXgivvfYazJ49G9avXw+HDh1K+fvRo0fhueeeg2uvvRYGDRqUcs3XXHMNHD16FP72t79xn5cg7EIOwATByahRo2DUqFEAAPD555/DD3/4Q2huboYlS5bYdgQuLi7W/Wz//v0AALBnzx4AAKiurjY8xscffwyDBw9O/rukpITp3Pv37zc8v1O8vi61QFPQ+8zouHv27IE//elPkJmZqfsbRcDu2bMHDhw4AAMGDDD9nkJBQUG/72RlZfVbjtL7blZWFgBA8rtKW+rVf9iwYboCyYof//jHMHjwYGhpaYEVK1ZAOByGSy+9FO69914YNWoU7N+/H+LxONx///1w//336x7DibgnCF5IzBCEAzIzM6GxsRGam5vhjTfeSH6elZUFvb29/b6vDDxadu/erfvZySefDACQtC7cf//9cNFFF+keQztIh0IhpmsoKCgwPL+WoF2XIpas6mR03MLCQhg5cqShn82wYcOS3ysoKIB169bpfi83N5epznZQxE5PTw9Eo9GUv+3atSvFMpWdna17//bt25fyveOOOw5uv/12uP322+HAgQMQi8Vg/vz5MHHiRNixYwcMHToUwuEw3HDDDXDbbbfp1uvEE08UcXkEwQSJGYJgpKenR3f2+49//AMA/jOwAXwRNfL666+nfO/Pf/4zfPLJJ7rH/sMf/pCyfPLiiy/CBx98ADfddBMAAFx88cUwZMgQeOutt6CmpsbxtagZP348PPHEE7Bnz56kcEgkErq5c4J0XePGjYOnn346ZaDu6+uDtrY25mNMnjwZnn76afjSl74EQ4cONf3e6tWrIZFIwFe+8hXHdefhsssuA4AvHKkvuOCC5OcbN26Ef/zjH3DHHXckP9O7f++88w68/fbbKWJGzZAhQ6C6uhp27twJdXV1sH37djjzzDNh/Pjx8Oqrr8LIkSMNLVIE4RYkZgiCkYkTJ0I0GoUpU6bA6aefDn19fbB582a47777ICcnB2pra5PfveGGG+DOO++Eu+66C8aNGwdvvfUW/PznP4f8/HzdY7/88stw0003wXXXXQc7duyAO+64A0pLS2H27NkAAJCTkwP3338/zJw5Ez7++GOorq6G448/Hj766CN47bXX4KOPPoIHHnjA1nU1NDTAE088AZdddhncddddMGjQIPjFL37Rz1claNd1xx13wJ/+9Ce4/PLL4Y477oCBAwfCihUrktelDafX4yc/+Qls2LABxowZA3PmzIHTTjsNjh49Ctu3b4enn34aVqxYAdFoFL7xjW/AH/7wB7jmmmugtrYWLrzwQsjMzIQPP/wQOjs7obKyEq699lpb12HFaaedBrfccgvcf//9kJGRAVdffTVs374d7rzzTigrK4O5c+cmv3vDDTfAjBkzYPbs2TB16lT44IMPYMmSJVBUVJRyzClTpsBZZ50Fo0aNgqKiIvjggw9g2bJlUF5eDqeccgoAACxfvhwuueQSGDt2LNx6660wYsQIOHz4MLz77rvwpz/9Cf785z9LuV6C0MVrD2SCCApr1qzB66+/Hk855RTMycnBzMxMHD58ON5www341ltvpXy3t7cXf/CDH2BZWRkOHDgQx40bh5s3bzaM+nn22WfxhhtuwCFDhuDAgQPxmmuuwa1bt/arw/PPP4+TJk3CSCSCmZmZWFpaipMmTcK2trbkd5SoH3UUjxV//etf8aKLLsKsrCwsLi7G+vp6fPDBB/tF/QTturq7u/ErX/lKynXde++9CAB44MCB5PfKy8tx0qRJusf46KOPcM6cOXjiiSdiZmYmRiIRPP/88/GOO+7ATz75JPm9zz//HJcuXYpnn302ZmdnY05ODp5++un43e9+N+Wajc6ljShS2nDjxo0p3+vs7EQAwM7OzuRniUQC7733Xjz11FMxMzMTCwsLccaMGbhjx46U3/b19eGSJUvwpJNOwuzsbBw1ahT++c9/7nfu++67D8eMGYOFhYU4YMAAHD58OH7nO9/B7du3pxxv27Zt+O1vfxtLS0sxMzMTi4qKcMyYMcloNYJwixAiondSiiCObR555BH41re+BRs3bkw6FacDfr6uCRMmwPbt2+Gdd97xuioEQQiClpkIgkhbbr/9djj33HOhrKwMPv74Y/jDH/4AGzZsgN/85jdeV40gCIGQmCEIIm1JJBJw1113we7duyEUCsGZZ54Jv//97/tl0CUIItjQMhNBEARBEIGGMgATBEEQBBFoSMwQBEEQBBFoSMwQBEEQ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", + "text/plain": [ + "<Figure size 640x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "plt.plot(distance, temperature, \"ok\", label=\"Temperature\")\n", "plt.title(\"Super duper greenhouse\")\n", - "plt.xlabel('Distance')\n", - "plt.ylabel('Temperature')\n", + "plt.xlabel(\"Distance\")\n", + "plt.ylabel(\"Temperature\")\n", "plt.show()" ] }, @@ -574,10 +698,19 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 20, "id": "c833c8fd", "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "mean_temperature = 25.157\n", + "variance_temperature = 16.103\n" + ] + } + ], "source": [ "mean_temperature = temperature.mean()\n", "print(f\"{mean_temperature = :.3f}\")\n", @@ -599,7 +732,7 @@ "id": "2df59bce", "metadata": {}, "source": [ - "Did you ever got frustrated by sharing code with your friends? How nice would it be to do it the Google-Docs style and work on the same document simultaneously! Maybe you know Deepnote, which does this in an online interface. But there's a better solution: [Visual Studio Live Share](https://visualstudio.microsoft.com/services/live-share/)!\n", + "Have you ever gotten frustrated by sharing code with your friends? How nice would it be to do it the Google-Docs style and work on the same document simultaneously! Maybe you know Deepnote, which does this in an online interface. But there's a better solution: [Visual Studio Live Share](https://visualstudio.microsoft.com/services/live-share/)!\n", "\n", "In this PA you'll install the required extension in VS Code. You'll use this extension on Wednesday in class, and can freely use it in your future career!" ] @@ -612,7 +745,7 @@ "<div style=\"background-color:#AABAB2; color: black; width:95%; vertical-align: middle; padding:15px; margin: 10px; border-radius: 10px\">\n", "<p>\n", "<b>Task 3.1:</b> \n", - " Download, install and login in the Visual Studio Live Share Extension from the Visual Studio Marketplace as explained in the <a href=\"https://mude.citg.tudelft.nl/2024/book/external/learn-programming/book/install/ide/vsc/vs_live_share.html\">book</a>\n", + " Download, install and login in the Visual Studio Live Share Extension from the Visual Studio Marketplace as explained in the <a href=\"https://mude.citg.tudelft.nl/2024/book/external/learn-programming/book/install/ide/vsc/vs_live_share.html\">book</a>.\n", "</p>\n", "</div>" ] @@ -622,7 +755,7 @@ "id": "2751b89a", "metadata": {}, "source": [ - "After installing and signing into Visual Studio Live Share, you'll share a project with yourself to test the collaboration session" + "After installing and signing into Visual Studio Live Share, you'll share a project with yourself to test the collaboration session." ] }, { @@ -633,7 +766,7 @@ "<div style=\"background-color:#AABAB2; color: black; width:95%; vertical-align: middle; padding:15px; margin: 10px; border-radius: 10px\">\n", "<p>\n", "<b>Task 3.2:</b> \n", - " Use your normal workflow to open a folder\n", + " Use your normal workflow to open the folder where this notebook is situated in VS Code.\n", "</p>\n", "</div>" ] @@ -657,17 +790,17 @@ }, { "cell_type": "markdown", - "id": "bffc6617", + "id": "d3913dbd", "metadata": {}, "source": [ - "An invitation link will be automatically copied to your clipboard. You'll use this link to interact with yourself in this assignment. If you want to collaborate with other, you can share this link with other to open up the project in their browser on own VS Code.\n", + "An invitation link will be automatically copied to your clipboard. You'll use this link to interact with yourself in this assignment. If you want to collaborate with others, you can share this link with them to open up the project in their browser or own VS Code.\n", "\n", "You'll also see the **Live Share** status bar item change to represent the session state." ] }, { "cell_type": "markdown", - "id": "1b1316a8", + "id": "733f5991", "metadata": {}, "source": [ "<div style=\"background-color:#AABAB2; color: black; width:95%; vertical-align: middle; padding:15px; margin: 10px; border-radius: 10px\">\n", @@ -680,7 +813,7 @@ }, { "cell_type": "markdown", - "id": "7d16af72", + "id": "47829808", "metadata": {}, "source": [ "A web version of Visual Studio Code will open in your browser. Continue there." @@ -688,7 +821,7 @@ }, { "cell_type": "markdown", - "id": "f64ec5b2", + "id": "b29c3e15", "metadata": {}, "source": [ "<div style=\"background-color:#AABAB2; color: black; width:95%; vertical-align: middle; padding:15px; margin: 10px; border-radius: 10px\">\n", @@ -701,7 +834,7 @@ }, { "cell_type": "markdown", - "id": "2e629aaa", + "id": "4c76259c", "metadata": {}, "source": [ "<div style=\"background-color:#AABAB2; color: black; width:95%; vertical-align: middle; padding:15px; margin: 10px; border-radius: 10px\">\n", @@ -714,30 +847,38 @@ }, { "cell_type": "code", - "execution_count": null, - "id": "7a2647f4", - "metadata": {}, - "outputs": [], + "execution_count": 21, + "id": "84ee5ab9", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "hello world\n" + ] + } + ], "source": [ "print('hello world')" ] }, { "cell_type": "markdown", - "id": "5218a751", + "id": "784d01d1", "metadata": {}, "source": [ "<div style=\"background-color:#AABAB2; color: black; width:95%; vertical-align: middle; padding:15px; margin: 10px; border-radius: 10px\">\n", "<p>\n", "<b>Task 3.7:</b> \n", - " Go back to your browser version of VS code and try running the cell. Note that this requires Requesting access in the browser participant. Request that access and approve it in the desktop participant of VS code. In the desktop participant you now need to select your python environment. Does the cell run? Do you see the output in both participants? Make sure the output doesn't show an error!\n", + " Go back to your browser version of VS code and try running the cell. Note that this requires the browser participant to request access. Request that access and approve it in the desktop participant of VS code. In the desktop participant you now need to select your Python environment. Does the cell run? Do you see the output in both participants? Make sure the output doesn't show an error!\n", "</p>\n", "</div>" ] }, { "cell_type": "markdown", - "id": "05c2b97a", + "id": "07911996", "metadata": {}, "source": [ "<div style=\"background-color:#AABAB2; color: black; width:95%; vertical-align: middle; padding:15px; margin: 10px; border-radius: 10px\">\n", @@ -750,10 +891,18 @@ }, { "cell_type": "code", - "execution_count": null, - "id": "a9b9f24b", - "metadata": {}, - "outputs": [], + "execution_count": 22, + "id": "3c8723e3", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Running on a Windows machine named: TUD260930\n" + ] + } + ], "source": [ "import platform\n", "print(\"Running on a\", platform.system(),\"machine named:\", platform.node())" @@ -761,7 +910,7 @@ }, { "cell_type": "markdown", - "id": "55b401c9", + "id": "b38e7f33", "metadata": {}, "source": [ "That's cool right? Imagine what you could do with this..." @@ -769,7 +918,7 @@ }, { "cell_type": "markdown", - "id": "4b332269", + "id": "f85acf2e", "metadata": {}, "source": [ "<div style=\"background-color:#AABAB2; color: black; width:95%; vertical-align: middle; padding:15px; margin: 10px; border-radius: 10px\">\n", @@ -782,7 +931,7 @@ }, { "cell_type": "markdown", - "id": "dd8361f4", + "id": "61f4088d", "metadata": {}, "source": [ "<div style=\"background-color:#AABAB2; color: black; width:95%; vertical-align: middle; padding:15px; margin: 10px; border-radius: 10px\">\n", @@ -792,7 +941,10 @@ "</p>\n", "<img src=\"https://learn.microsoft.com/en-us/visualstudio/liveshare/media/vscode-end-collaboration-viewlet.png\">\n", "<p>\n", - "Your web-participant will be notified that the session is over. It won't be able to access the content and any temp files will automatically be cleaned up. Don't forget to save your work on the desktop-participant!\n", + "Don't forget to save your work! You could have done that both on the browser-participant as on the desktop-participant!\n", + "</p>\n", + "<p>\n", + "After stopping the collaboration session, your web-participant will be notified that the session is over. It won't be able to access the content and any temp files will automatically be cleaned up.\n", "</p>\n", "</div>" ]