From 6def4a1fd26c9c0134e3e94cebc3c2eb25015524 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marta=20Garc=C3=ADa?= Date: Mon, 16 Oct 2023 18:08:37 +0200 Subject: [PATCH] map filter reduce --- your-code/main.ipynb | 289 ++++++++++++++++++++++++++++++++++--------- 1 file changed, 228 insertions(+), 61 deletions(-) diff --git a/your-code/main.ipynb b/your-code/main.ipynb index a2958dd..a3befab 100644 --- a/your-code/main.ipynb +++ b/your-code/main.ipynb @@ -12,11 +12,13 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 27, "metadata": {}, "outputs": [], "source": [ - "# Import reduce from functools, numpy and pandas" + "from functools import reduce\n", + "import pandas as pd\n", + "import numpy as np" ] }, { @@ -32,7 +34,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 7, "metadata": {}, "outputs": [], "source": [ @@ -54,11 +56,13 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, + "execution_count": 8, + "metadata": { + "scrolled": false + }, "outputs": [], "source": [ - "# your code here" + "prophet = prophet[568:]" ] }, { @@ -70,11 +74,32 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# your code here" + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "PROPHET\n", + "\n", + "|Almustafa,\n", + "the{7}\n", + "chosen\n", + "and\n", + "the\n", + "beloved,\n", + "who\n", + "was\n", + "a\n", + "dawn\n", + "unto\n" + ] + } + ], + "source": [ + "for i in range(10):\n", + " print(prophet[i])" ] }, { @@ -88,7 +113,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 10, "metadata": {}, "outputs": [], "source": [ @@ -101,8 +126,7 @@ " Input: 'the{7}'\n", " Output: 'the'\n", " '''\n", - " \n", - " # your code here" + " return x.split(\"{\")[0]" ] }, { @@ -114,11 +138,11 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 11, "metadata": {}, "outputs": [], "source": [ - "# your code here" + "prophet_reference = list(map(reference, prophet))" ] }, { @@ -130,7 +154,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 12, "metadata": {}, "outputs": [], "source": [ @@ -143,8 +167,7 @@ " Input: 'the\\nbeloved'\n", " Output: ['the', 'beloved']\n", " '''\n", - " \n", - " # your code here" + " return x.split(\"\\n\")" ] }, { @@ -156,11 +179,11 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 13, "metadata": {}, "outputs": [], "source": [ - "# your code here" + "prophet_line = list(map(line_break,prophet_reference))" ] }, { @@ -172,11 +195,11 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 14, "metadata": {}, "outputs": [], "source": [ - "# your code here" + "prophet_flat = [j for i in prophet_line for j in i]" ] }, { @@ -190,7 +213,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 15, "metadata": {}, "outputs": [], "source": [ @@ -210,8 +233,10 @@ " '''\n", " \n", " word_list = ['and', 'the', 'a', 'an']\n", - " \n", - " # your code here" + " if x in word_list:\n", + " return False\n", + " else:\n", + " return True" ] }, { @@ -221,6 +246,15 @@ "Use the `filter()` function to filter out the words speficied in the `word_filter()` function. Store the filtered list in the variable `prophet_filter`." ] }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": {}, + "outputs": [], + "source": [ + "prophet_filter = list(filter(word_filter, prophet_flat))" + ] + }, { "cell_type": "markdown", "metadata": {}, @@ -232,7 +266,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 17, "metadata": {}, "outputs": [], "source": [ @@ -240,7 +274,11 @@ " \n", " word_list = ['and', 'the', 'a', 'an']\n", " \n", - " # your code here" + " if x.lower() in word_list:\n", + " return False\n", + " else:\n", + " return True\n", + "prophet_filter_case = list(filter(word_filter_case, prophet_filter))" ] }, { @@ -256,7 +294,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 18, "metadata": {}, "outputs": [], "source": [ @@ -269,8 +307,7 @@ " Input: 'John', 'Smith'\n", " Output: 'John Smith'\n", " '''\n", - " \n", - " # your code here" + " return a + \" \" + b" ] }, { @@ -282,11 +319,11 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 19, "metadata": {}, "outputs": [], "source": [ - "# your code here" + "prophet_string = reduce(concat_space,prophet_filter_case)" ] }, { @@ -302,7 +339,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 20, "metadata": {}, "outputs": [], "source": [ @@ -316,15 +353,6 @@ "You'll need to import pandas" ] }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# your code here" - ] - }, { "cell_type": "markdown", "metadata": {}, @@ -334,10 +362,12 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 21, "metadata": {}, "outputs": [], - "source": [] + "source": [ + "df = pd.read_csv(\"https://archive.ics.uci.edu/ml/machine-learning-databases/00381/PRSA_data_2010.1.1-2014.12.31.csv\")" + ] }, { "cell_type": "markdown", @@ -348,11 +378,146 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# your code here" + "execution_count": 22, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
Noyearmonthdayhourpm2.5DEWPTEMPPREScbwdIwsIsIr
012010110NaN-21-11.01021.0NW1.7900
122010111NaN-21-12.01020.0NW4.9200
232010112NaN-21-11.01019.0NW6.7100
342010113NaN-21-14.01019.0NW9.8400
452010114NaN-20-12.01018.0NW12.9700
\n", + "
" + ], + "text/plain": [ + " No year month day hour pm2.5 DEWP TEMP PRES cbwd Iws Is Ir\n", + "0 1 2010 1 1 0 NaN -21 -11.0 1021.0 NW 1.79 0 0\n", + "1 2 2010 1 1 1 NaN -21 -12.0 1020.0 NW 4.92 0 0\n", + "2 3 2010 1 1 2 NaN -21 -11.0 1019.0 NW 6.71 0 0\n", + "3 4 2010 1 1 3 NaN -21 -14.0 1019.0 NW 9.84 0 0\n", + "4 5 2010 1 1 4 NaN -20 -12.0 1018.0 NW 12.97 0 0" + ] + }, + "execution_count": 22, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df.head()" ] }, { @@ -364,7 +529,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 23, "metadata": {}, "outputs": [], "source": [ @@ -377,8 +542,7 @@ " Input: 48\n", " Output: 2.0\n", " '''\n", - " \n", - " # your code here" + " return round(x / 24, 1)" ] }, { @@ -390,11 +554,15 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 26, "metadata": {}, "outputs": [], "source": [ - "# your code here" + "# your code here\n", + "pm25_hourly = df\n", + "pm25_hourly[\"Iws\"] = df[\"Iws\"].map(hourly)\n", + "pm25_hourly[\"Is\"] = df[\"Is\"].map(hourly)\n", + "pm25_hourly[\"Ir\"] = df[\"Ir\"].map(hourly)" ] }, { @@ -408,7 +576,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 45, "metadata": {}, "outputs": [], "source": [ @@ -421,16 +589,15 @@ " Input: pd.Series([1,2,3,4])\n", " Output: 0.3726779962\n", " '''\n", - " \n", - " # your code here" + " return np.std(x)/(x.count()-1)" ] } ], "metadata": { "kernelspec": { - "display_name": "Python 3 (ipykernel)", + "display_name": "ironhack", "language": "python", - "name": "python3" + "name": "ironhack" }, "language_info": { "codemirror_mode": { @@ -442,7 +609,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.8.13" + "version": "3.11.5" }, "toc": { "base_numbering": 1,