diff --git a/notebooks/images/seaborn.png b/notebooks/images/seaborn.png new file mode 100644 index 0000000000000000000000000000000000000000..db90dfa0808924c6dba7ac4057ab92c150689cee Binary files /dev/null and b/notebooks/images/seaborn.png differ diff --git a/notebooks/images/seaborn_plots.png b/notebooks/images/seaborn_plots.png new file mode 100644 index 0000000000000000000000000000000000000000..829a83008cd7131d0c49b33d6184308df0c4bd50 Binary files /dev/null and b/notebooks/images/seaborn_plots.png differ diff --git a/notebooks/pandas_cours.ipynb b/notebooks/pandas_cours.ipynb index cca23332f5df56706f82921ed2ad559378afc9a8..2abd56aa3eb1be15357278e4e15a2bee41e212a9 100644 --- a/notebooks/pandas_cours.ipynb +++ b/notebooks/pandas_cours.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "markdown", - "id": "lesser-criticism", + "id": "horizontal-listening", "metadata": {}, "source": [ "# <center>**Cours**</center>\n", @@ -21,7 +21,7 @@ }, { "cell_type": "markdown", - "id": "attempted-certificate", + "id": "sophisticated-concept", "metadata": {}, "source": [ "# Intro\n", @@ -51,7 +51,7 @@ }, { "cell_type": "markdown", - "id": "angry-banking", + "id": "velvet-payroll", "metadata": {}, "source": [ "# Installation\n", @@ -70,7 +70,7 @@ }, { "cell_type": "markdown", - "id": "british-currency", + "id": "falling-radar", "metadata": {}, "source": [ "# Import Convention" @@ -78,8 +78,8 @@ }, { "cell_type": "code", - "execution_count": 2, - "id": "proud-coffee", + "execution_count": 171, + "id": "executed-tsunami", "metadata": {}, "outputs": [], "source": [ @@ -89,7 +89,7 @@ }, { "cell_type": "markdown", - "id": "english-subdivision", + "id": "foster-convert", "metadata": {}, "source": [ "# Series\n", @@ -103,8 +103,8 @@ }, { "cell_type": "code", - "execution_count": 68, - "id": "outer-brass", + "execution_count": 172, + "id": "musical-civilization", "metadata": {}, "outputs": [ { @@ -113,7 +113,7 @@ "pandas.core.series.Series" ] }, - "execution_count": 68, + "execution_count": 172, "metadata": {}, "output_type": "execute_result" } @@ -125,8 +125,8 @@ }, { "cell_type": "code", - "execution_count": 69, - "id": "executive-right", + "execution_count": 173, + "id": "superb-relaxation", "metadata": {}, "outputs": [ { @@ -138,7 +138,7 @@ "dtype: int64" ] }, - "execution_count": 69, + "execution_count": 173, "metadata": {}, "output_type": "execute_result" } @@ -149,7 +149,7 @@ }, { "cell_type": "markdown", - "id": "personal-cleaners", + "id": "coordinated-issue", "metadata": {}, "source": [ "You can specify the labels of your Series by providing a list of labels as\n", @@ -158,8 +158,8 @@ }, { "cell_type": "code", - "execution_count": 4, - "id": "spatial-disposal", + "execution_count": 174, + "id": "received-flash", "metadata": {}, "outputs": [ { @@ -171,7 +171,7 @@ "dtype: int64" ] }, - "execution_count": 4, + "execution_count": 174, "metadata": {}, "output_type": "execute_result" } @@ -183,7 +183,7 @@ }, { "cell_type": "markdown", - "id": "reduced-retention", + "id": "sorted-optimum", "metadata": {}, "source": [ "And we can access these indices with the `index` property:" @@ -191,8 +191,8 @@ }, { "cell_type": "code", - "execution_count": 109, - "id": "classical-sapphire", + "execution_count": 175, + "id": "immune-physiology", "metadata": {}, "outputs": [ { @@ -201,7 +201,7 @@ "RangeIndex(start=0, stop=3, step=1)" ] }, - "execution_count": 109, + "execution_count": 175, "metadata": {}, "output_type": "execute_result" } @@ -212,8 +212,8 @@ }, { "cell_type": "code", - "execution_count": 110, - "id": "known-absorption", + "execution_count": 176, + "id": "systematic-working", "metadata": {}, "outputs": [ { @@ -222,7 +222,7 @@ "Index(['A', 'B', 'C'], dtype='object')" ] }, - "execution_count": 110, + "execution_count": 176, "metadata": {}, "output_type": "execute_result" } @@ -233,7 +233,7 @@ }, { "cell_type": "markdown", - "id": "amateur-secret", + "id": "arctic-gibson", "metadata": {}, "source": [ "## Indexing/Slicing\n", @@ -243,8 +243,8 @@ }, { "cell_type": "code", - "execution_count": 86, - "id": "exact-accuracy", + "execution_count": 177, + "id": "alternate-banks", "metadata": {}, "outputs": [ { @@ -253,7 +253,7 @@ "2" ] }, - "execution_count": 86, + "execution_count": 177, "metadata": {}, "output_type": "execute_result" } @@ -264,8 +264,8 @@ }, { "cell_type": "code", - "execution_count": 81, - "id": "hairy-inspiration", + "execution_count": 178, + "id": "standing-train", "metadata": {}, "outputs": [ { @@ -274,7 +274,7 @@ "2" ] }, - "execution_count": 81, + "execution_count": 178, "metadata": {}, "output_type": "execute_result" } @@ -285,8 +285,8 @@ }, { "cell_type": "code", - "execution_count": 106, - "id": "social-extra", + "execution_count": 179, + "id": "severe-correlation", "metadata": {}, "outputs": [ { @@ -297,7 +297,7 @@ "dtype: int64" ] }, - "execution_count": 106, + "execution_count": 179, "metadata": {}, "output_type": "execute_result" } @@ -308,8 +308,8 @@ }, { "cell_type": "code", - "execution_count": 107, - "id": "diagnostic-flood", + "execution_count": 180, + "id": "raising-grenada", "metadata": {}, "outputs": [ { @@ -321,7 +321,7 @@ "dtype: int64" ] }, - "execution_count": 107, + "execution_count": 180, "metadata": {}, "output_type": "execute_result" } @@ -332,7 +332,7 @@ }, { "cell_type": "markdown", - "id": "mysterious-airline", + "id": "blocked-roommate", "metadata": {}, "source": [ "Most commonly, You can use **labels** as well for subsetting, using the `loc` attribute:" @@ -340,8 +340,8 @@ }, { "cell_type": "code", - "execution_count": 79, - "id": "private-profession", + "execution_count": 181, + "id": "accompanied-pantyhose", "metadata": {}, "outputs": [ { @@ -350,7 +350,7 @@ "2" ] }, - "execution_count": 79, + "execution_count": 181, "metadata": {}, "output_type": "execute_result" } @@ -361,7 +361,7 @@ }, { "cell_type": "markdown", - "id": "forbidden-conjunction", + "id": "durable-lesson", "metadata": {}, "source": [ "**WARNING**: With `loc`, the value is interpreted as a label of the\n", @@ -372,8 +372,8 @@ }, { "cell_type": "code", - "execution_count": 87, - "id": "hawaiian-fever", + "execution_count": 182, + "id": "comparative-guinea", "metadata": {}, "outputs": [ { @@ -382,7 +382,7 @@ "1" ] }, - "execution_count": 87, + "execution_count": 182, "metadata": {}, "output_type": "execute_result" } @@ -393,7 +393,7 @@ }, { "cell_type": "markdown", - "id": "prescribed-literature", + "id": "convenient-constitution", "metadata": {}, "source": [ "Serie objects benefit from many attributes and methods (see [pandas documentation](https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.Series.html)), lot's of them being common with pandas DataFrames. We will see some of the one listed below in action in the DataFrame section of this course.\n", @@ -433,7 +433,7 @@ }, { "cell_type": "markdown", - "id": "precious-green", + "id": "arabic-affairs", "metadata": {}, "source": [ "## Operations on Series\n", @@ -445,8 +445,8 @@ }, { "cell_type": "code", - "execution_count": 100, - "id": "optimum-drama", + "execution_count": 183, + "id": "million-richards", "metadata": {}, "outputs": [ { @@ -458,7 +458,7 @@ "dtype: bool" ] }, - "execution_count": 100, + "execution_count": 183, "metadata": {}, "output_type": "execute_result" } @@ -469,7 +469,7 @@ }, { "cell_type": "markdown", - "id": "twenty-planet", + "id": "unlike-monaco", "metadata": {}, "source": [ "Since `loc` can take list or Series of booleans as input, we can then apply this Boolean Serie as a mask for our Serie:" @@ -477,8 +477,8 @@ }, { "cell_type": "code", - "execution_count": 101, - "id": "universal-responsibility", + "execution_count": 184, + "id": "ordered-rendering", "metadata": {}, "outputs": [ { @@ -489,7 +489,7 @@ "dtype: int64" ] }, - "execution_count": 101, + "execution_count": 184, "metadata": {}, "output_type": "execute_result" } @@ -500,7 +500,7 @@ }, { "cell_type": "markdown", - "id": "pressed-clark", + "id": "major-intermediate", "metadata": {}, "source": [ "## Operations between Series" @@ -508,7 +508,7 @@ }, { "cell_type": "markdown", - "id": "thick-meter", + "id": "suitable-focus", "metadata": {}, "source": [ "Operations (ie `+`, `-`, `*`, `/`) between Series will trigger an alignment of the values\n", @@ -517,8 +517,8 @@ }, { "cell_type": "code", - "execution_count": 103, - "id": "departmental-creature", + "execution_count": 185, + "id": "least-cruise", "metadata": {}, "outputs": [ { @@ -530,7 +530,7 @@ "dtype: int64" ] }, - "execution_count": 103, + "execution_count": 185, "metadata": {}, "output_type": "execute_result" } @@ -541,7 +541,7 @@ }, { "cell_type": "markdown", - "id": "regulation-listening", + "id": "herbal-collaboration", "metadata": {}, "source": [ "We can see here that the label are aligned prior operation" @@ -549,8 +549,8 @@ }, { "cell_type": "code", - "execution_count": 108, - "id": "electric-cherry", + "execution_count": 186, + "id": "better-blame", "metadata": {}, "outputs": [ { @@ -562,7 +562,7 @@ "dtype: int64" ] }, - "execution_count": 108, + "execution_count": 186, "metadata": {}, "output_type": "execute_result" } @@ -573,7 +573,7 @@ }, { "cell_type": "markdown", - "id": "positive-batman", + "id": "loved-orleans", "metadata": {}, "source": [ "# DataFrames\n", @@ -593,8 +593,8 @@ }, { "cell_type": "code", - "execution_count": 122, - "id": "following-houston", + "execution_count": 187, + "id": "regulated-ready", "metadata": {}, "outputs": [ { @@ -646,7 +646,7 @@ "b 4 5 6" ] }, - "execution_count": 122, + "execution_count": 187, "metadata": {}, "output_type": "execute_result" } @@ -661,8 +661,8 @@ }, { "cell_type": "code", - "execution_count": 123, - "id": "personalized-kennedy", + "execution_count": 188, + "id": "stable-discharge", "metadata": {}, "outputs": [ { @@ -671,7 +671,7 @@ "Index(['a', 'b'], dtype='object')" ] }, - "execution_count": 123, + "execution_count": 188, "metadata": {}, "output_type": "execute_result" } @@ -682,8 +682,8 @@ }, { "cell_type": "code", - "execution_count": 124, - "id": "conceptual-boards", + "execution_count": 189, + "id": "configured-coral", "metadata": {}, "outputs": [ { @@ -692,7 +692,7 @@ "Index(['A', 'B', 'C'], dtype='object')" ] }, - "execution_count": 124, + "execution_count": 189, "metadata": {}, "output_type": "execute_result" } @@ -703,7 +703,7 @@ }, { "cell_type": "markdown", - "id": "agricultural-spotlight", + "id": "exclusive-brave", "metadata": {}, "source": [ "### From a numpy ndarray" @@ -711,8 +711,8 @@ }, { "cell_type": "code", - "execution_count": 9, - "id": "minor-korean", + "execution_count": 190, + "id": "facial-curve", "metadata": {}, "outputs": [ { @@ -778,7 +778,7 @@ "3 9 10 11" ] }, - "execution_count": 9, + "execution_count": 190, "metadata": {}, "output_type": "execute_result" } @@ -790,16 +790,16 @@ }, { "cell_type": "markdown", - "id": "still-commissioner", + "id": "committed-planning", "metadata": {}, "source": [ - "- From a dictionnary" + "### From a dictionnary" ] }, { "cell_type": "code", - "execution_count": 115, - "id": "intellectual-wilson", + "execution_count": 191, + "id": "suspected-nirvana", "metadata": {}, "outputs": [ { @@ -854,7 +854,7 @@ "2 3 6" ] }, - "execution_count": 115, + "execution_count": 191, "metadata": {}, "output_type": "execute_result" } @@ -869,7 +869,7 @@ }, { "cell_type": "markdown", - "id": "international-checkout", + "id": "vocational-peoples", "metadata": {}, "source": [ "- From a file, many options are available, to name only a few:\n", @@ -882,8 +882,8 @@ }, { "cell_type": "code", - "execution_count": 5, - "id": "bronze-prayer", + "execution_count": 192, + "id": "sonic-shock", "metadata": { "tags": [] }, @@ -894,7 +894,7 @@ }, { "cell_type": "markdown", - "id": "laden-composer", + "id": "about-cursor", "metadata": {}, "source": [ "We want to open *data/bar_data.tsv* file but the 2 first lines are comments and the separator between fields is *tab*\n", @@ -904,8 +904,8 @@ }, { "cell_type": "code", - "execution_count": 6, - "id": "grave-party", + "execution_count": 193, + "id": "bridal-development", "metadata": {}, "outputs": [ { @@ -926,8 +926,8 @@ }, { "cell_type": "code", - "execution_count": 10, - "id": "historical-ivory", + "execution_count": 194, + "id": "listed-framework", "metadata": {}, "outputs": [ { @@ -1006,7 +1006,7 @@ "4 9.080359 5.629192 18.443504 4.268572" ] }, - "execution_count": 10, + "execution_count": 194, "metadata": {}, "output_type": "execute_result" } @@ -1018,7 +1018,7 @@ }, { "cell_type": "markdown", - "id": "bacterial-irrigation", + "id": "explicit-monitoring", "metadata": {}, "source": [ "If the data in the file are already indexed like in this one:" @@ -1026,8 +1026,8 @@ }, { "cell_type": "code", - "execution_count": 11, - "id": "supported-health", + "execution_count": 195, + "id": "allied-artist", "metadata": {}, "outputs": [ { @@ -1048,8 +1048,8 @@ }, { "cell_type": "code", - "execution_count": 12, - "id": "discrete-anaheim", + "execution_count": 196, + "id": "limiting-tokyo", "metadata": {}, "outputs": [ { @@ -1116,7 +1116,7 @@ "2 2 2.11 383.40 437.458982 15.040385" ] }, - "execution_count": 12, + "execution_count": 196, "metadata": {}, "output_type": "execute_result" } @@ -1128,17 +1128,17 @@ }, { "cell_type": "markdown", - "id": "latest-public", + "id": "european-tunisia", "metadata": {}, "source": [ - "To avoiding to have an extra column, you can specify which columns to use as index.\n", + "To avoid to have an extra column, you can specify which columns to use as index.\n", "This column **must** have distincts values." ] }, { "cell_type": "code", - "execution_count": 19, - "id": "casual-buying", + "execution_count": 197, + "id": "crucial-flight", "metadata": {}, "outputs": [ { @@ -1217,7 +1217,7 @@ "4 -1.37 361.37 448.864769 5.732690" ] }, - "execution_count": 19, + "execution_count": 197, "metadata": {}, "output_type": "execute_result" } @@ -1229,7 +1229,7 @@ }, { "cell_type": "markdown", - "id": "commercial-system", + "id": "occasional-carnival", "metadata": {}, "source": [ "The first line is used as header.<br />\n", @@ -1239,8 +1239,8 @@ }, { "cell_type": "code", - "execution_count": 21, - "id": "golden-myrtle", + "execution_count": 198, + "id": "oriented-bleeding", "metadata": {}, "outputs": [ { @@ -1327,7 +1327,7 @@ "4 -1.37 361.37 448.864769 5.732690" ] }, - "execution_count": 21, + "execution_count": 198, "metadata": {}, "output_type": "execute_result" } @@ -1339,7 +1339,59 @@ }, { "cell_type": "markdown", - "id": "thorough-worth", + "id": "reasonable-straight", + "metadata": {}, + "source": [ + "### Going back to np.array and list" + ] + }, + { + "cell_type": "code", + "execution_count": 199, + "id": "competent-negative", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[1, 4],\n", + " [2, 5],\n", + " [3, 6]])" + ] + }, + "execution_count": 199, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df.values" + ] + }, + { + "cell_type": "code", + "execution_count": 200, + "id": "fantastic-monday", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[[1, 4], [2, 5], [3, 6]]" + ] + }, + "execution_count": 200, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df.values.tolist()" + ] + }, + { + "cell_type": "markdown", + "id": "formal-example", "metadata": {}, "source": [ "## Characterizing a DataFrame\n", @@ -1349,8 +1401,8 @@ }, { "cell_type": "code", - "execution_count": 13, - "id": "still-pepper", + "execution_count": 201, + "id": "simple-luxury", "metadata": {}, "outputs": [], "source": [ @@ -1359,7 +1411,7 @@ }, { "cell_type": "markdown", - "id": "impossible-security", + "id": "continuing-activity", "metadata": {}, "source": [ "`shape` to get the dimensions of the dataframe (ie number or rows, number of columns):" @@ -1367,8 +1419,8 @@ }, { "cell_type": "code", - "execution_count": 23, - "id": "nutritional-andrews", + "execution_count": 202, + "id": "wound-asbestos", "metadata": {}, "outputs": [ { @@ -1388,7 +1440,7 @@ }, { "cell_type": "markdown", - "id": "empirical-prospect", + "id": "equal-original", "metadata": {}, "source": [ "`head` to get the first lines of your dataframe:" @@ -1396,8 +1448,8 @@ }, { "cell_type": "code", - "execution_count": 19, - "id": "ancient-gravity", + "execution_count": 203, + "id": "worthy-bridge", "metadata": {}, "outputs": [ { @@ -1538,7 +1590,7 @@ "4 0 373450 8.0500 NaN S " ] }, - "execution_count": 19, + "execution_count": 203, "metadata": {}, "output_type": "execute_result" } @@ -1549,8 +1601,8 @@ }, { "cell_type": "code", - "execution_count": 24, - "id": "powered-navigator", + "execution_count": 204, + "id": "absent-authorization", "metadata": {}, "outputs": [ { @@ -1637,7 +1689,7 @@ "1 0 PC 17599 71.2833 C85 C " ] }, - "execution_count": 24, + "execution_count": 204, "metadata": {}, "output_type": "execute_result" } @@ -1648,7 +1700,7 @@ }, { "cell_type": "markdown", - "id": "vocal-pencil", + "id": "clinical-debate", "metadata": {}, "source": [ "`tail` to get the last lines of your dataframe:" @@ -1656,8 +1708,8 @@ }, { "cell_type": "code", - "execution_count": 25, - "id": "blessed-family", + "execution_count": 205, + "id": "aboriginal-smith", "metadata": {}, "outputs": [ { @@ -1740,7 +1792,7 @@ "890 0 370376 7.75 NaN Q " ] }, - "execution_count": 25, + "execution_count": 205, "metadata": {}, "output_type": "execute_result" } @@ -1751,7 +1803,7 @@ }, { "cell_type": "markdown", - "id": "molecular-messaging", + "id": "tight-craps", "metadata": {}, "source": [ "`describe` to have basic descriptive statistics. The columns on which pandas cannot do statistics are omitted (Name, Sex, ...)" @@ -1759,8 +1811,8 @@ }, { "cell_type": "code", - "execution_count": 16, - "id": "touched-lawsuit", + "execution_count": 206, + "id": "sunset-ballot", "metadata": {}, "outputs": [ { @@ -1900,7 +1952,7 @@ "max 6.000000 512.329200 " ] }, - "execution_count": 16, + "execution_count": 206, "metadata": {}, "output_type": "execute_result" } @@ -1912,8 +1964,8 @@ }, { "cell_type": "code", - "execution_count": 17, - "id": "monthly-plasma", + "execution_count": 207, + "id": "whole-township", "metadata": {}, "outputs": [ { @@ -1931,7 +1983,7 @@ }, { "cell_type": "markdown", - "id": "designing-tuning", + "id": "certified-thunder", "metadata": {}, "source": [ "`median` to get the median by columns with numerical values:" @@ -1939,8 +1991,8 @@ }, { "cell_type": "code", - "execution_count": 19, - "id": "becoming-living", + "execution_count": 208, + "id": "furnished-dealing", "metadata": {}, "outputs": [ { @@ -1956,7 +2008,7 @@ "dtype: float64" ] }, - "execution_count": 19, + "execution_count": 208, "metadata": {}, "output_type": "execute_result" } @@ -1967,7 +2019,7 @@ }, { "cell_type": "markdown", - "id": "ethical-fishing", + "id": "protected-fleece", "metadata": {}, "source": [ "`mean` similarly for the mean:" @@ -1975,8 +2027,8 @@ }, { "cell_type": "code", - "execution_count": 20, - "id": "weekly-attack", + "execution_count": 209, + "id": "further-circular", "metadata": {}, "outputs": [ { @@ -1992,7 +2044,7 @@ "dtype: float64" ] }, - "execution_count": 20, + "execution_count": 209, "metadata": {}, "output_type": "execute_result" } @@ -2003,7 +2055,7 @@ }, { "cell_type": "markdown", - "id": "automatic-syntax", + "id": "every-skirt", "metadata": {}, "source": [ "`value_counts` is useful the count the number of occurences of a value. For example:" @@ -2011,8 +2063,8 @@ }, { "cell_type": "code", - "execution_count": 23, - "id": "accepting-gregory", + "execution_count": 210, + "id": "comprehensive-division", "metadata": {}, "outputs": [ { @@ -2023,7 +2075,7 @@ "Name: Sex, dtype: int64" ] }, - "execution_count": 23, + "execution_count": 210, "metadata": {}, "output_type": "execute_result" } @@ -2034,7 +2086,7 @@ }, { "cell_type": "markdown", - "id": "heavy-warner", + "id": "indirect-nutrition", "metadata": {}, "source": [ "`max` and `min` to get the maximum and minimum:" @@ -2042,8 +2094,8 @@ }, { "cell_type": "code", - "execution_count": 26, - "id": "rough-confusion", + "execution_count": 211, + "id": "universal-boutique", "metadata": {}, "outputs": [ { @@ -2052,7 +2104,7 @@ "80.0" ] }, - "execution_count": 26, + "execution_count": 211, "metadata": {}, "output_type": "execute_result" } @@ -2063,8 +2115,8 @@ }, { "cell_type": "code", - "execution_count": 24, - "id": "deluxe-veteran", + "execution_count": 212, + "id": "several-principle", "metadata": {}, "outputs": [ { @@ -2073,7 +2125,7 @@ "0.42" ] }, - "execution_count": 24, + "execution_count": 212, "metadata": {}, "output_type": "execute_result" } @@ -2084,7 +2136,7 @@ }, { "cell_type": "markdown", - "id": "egyptian-booth", + "id": "eastern-timeline", "metadata": {}, "source": [ "## DataFrame manipulation" @@ -2092,7 +2144,7 @@ }, { "cell_type": "markdown", - "id": "noble-number", + "id": "primary-printer", "metadata": {}, "source": [ "### Renaming columns" @@ -2100,8 +2152,8 @@ }, { "cell_type": "code", - "execution_count": 33, - "id": "amino-demographic", + "execution_count": 213, + "id": "received-editing", "metadata": {}, "outputs": [ { @@ -2167,7 +2219,7 @@ "3 9 10 11" ] }, - "execution_count": 33, + "execution_count": 213, "metadata": {}, "output_type": "execute_result" } @@ -2180,8 +2232,8 @@ }, { "cell_type": "code", - "execution_count": 34, - "id": "surface-dimension", + "execution_count": 214, + "id": "classified-pittsburgh", "metadata": {}, "outputs": [ { @@ -2190,7 +2242,7 @@ "Index(['A', 'B', 'Z'], dtype='object')" ] }, - "execution_count": 34, + "execution_count": 214, "metadata": {}, "output_type": "execute_result" } @@ -2204,8 +2256,8 @@ }, { "cell_type": "code", - "execution_count": 35, - "id": "southwest-corruption", + "execution_count": 215, + "id": "exceptional-roberts", "metadata": {}, "outputs": [ { @@ -2271,7 +2323,7 @@ "3 9 10 11" ] }, - "execution_count": 35, + "execution_count": 215, "metadata": {}, "output_type": "execute_result" } @@ -2283,8 +2335,8 @@ }, { "cell_type": "code", - "execution_count": 36, - "id": "competitive-strap", + "execution_count": 216, + "id": "surprised-burns", "metadata": {}, "outputs": [ { @@ -2350,7 +2402,7 @@ "3 9 10 11" ] }, - "execution_count": 36, + "execution_count": 216, "metadata": {}, "output_type": "execute_result" } @@ -2361,7 +2413,7 @@ }, { "cell_type": "markdown", - "id": "sonic-penalty", + "id": "novel-sheet", "metadata": {}, "source": [ "### Rename index" @@ -2369,8 +2421,8 @@ }, { "cell_type": "code", - "execution_count": 40, - "id": "annual-botswana", + "execution_count": 217, + "id": "breathing-yeast", "metadata": {}, "outputs": [ { @@ -2436,7 +2488,7 @@ "e 9 10 11" ] }, - "execution_count": 40, + "execution_count": 217, "metadata": {}, "output_type": "execute_result" } @@ -2448,8 +2500,8 @@ }, { "cell_type": "code", - "execution_count": 42, - "id": "olive-master", + "execution_count": 218, + "id": "central-columbus", "metadata": {}, "outputs": [ { @@ -2515,7 +2567,7 @@ "d 9 10 11" ] }, - "execution_count": 42, + "execution_count": 218, "metadata": {}, "output_type": "execute_result" } @@ -2526,7 +2578,7 @@ }, { "cell_type": "markdown", - "id": "coupled-encoding", + "id": "august-store", "metadata": {}, "source": [ "### Add column" @@ -2534,8 +2586,8 @@ }, { "cell_type": "code", - "execution_count": 45, - "id": "optional-train", + "execution_count": 219, + "id": "outer-access", "metadata": {}, "outputs": [ { @@ -2606,7 +2658,7 @@ "e 9 10 11 12" ] }, - "execution_count": 45, + "execution_count": 219, "metadata": {}, "output_type": "execute_result" } @@ -2618,8 +2670,8 @@ }, { "cell_type": "code", - "execution_count": 46, - "id": "neural-thought", + "execution_count": 220, + "id": "respective-twins", "metadata": {}, "outputs": [ { @@ -2710,7 +2762,7 @@ "e 9 10 11 12 9 10 11 12" ] }, - "execution_count": 46, + "execution_count": 220, "metadata": {}, "output_type": "execute_result" } @@ -2721,7 +2773,7 @@ }, { "cell_type": "markdown", - "id": "apart-permission", + "id": "boolean-example", "metadata": {}, "source": [ "### Set column as index\n", @@ -2731,8 +2783,8 @@ }, { "cell_type": "code", - "execution_count": 48, - "id": "cathedral-bouquet", + "execution_count": 221, + "id": "blank-ceiling", "metadata": {}, "outputs": [ { @@ -2770,26 +2822,26 @@ " <tbody>\n", " <tr>\n", " <th>0</th>\n", - " <td>1</td>\n", " <td>0</td>\n", + " <td>1</td>\n", " <td>2</td>\n", " </tr>\n", " <tr>\n", " <th>400</th>\n", - " <td>4</td>\n", " <td>3</td>\n", + " <td>4</td>\n", " <td>5</td>\n", " </tr>\n", " <tr>\n", " <th>3</th>\n", - " <td>7</td>\n", " <td>6</td>\n", + " <td>7</td>\n", " <td>8</td>\n", " </tr>\n", " <tr>\n", " <th>12</th>\n", - " <td>10</td>\n", " <td>9</td>\n", + " <td>10</td>\n", " <td>11</td>\n", " </tr>\n", " </tbody>\n", @@ -2797,15 +2849,15 @@ "</div>" ], "text/plain": [ - " X Y Z\n", + " X Y Z\n", "id \n", - "0 1 0 2\n", - "400 4 3 5\n", - "3 7 6 8\n", - "12 10 9 11" + "0 0 1 2\n", + "400 3 4 5\n", + "3 6 7 8\n", + "12 9 10 11" ] }, - "execution_count": 48, + "execution_count": 221, "metadata": {}, "output_type": "execute_result" } @@ -2816,8 +2868,8 @@ }, { "cell_type": "code", - "execution_count": 58, - "id": "narrative-michael", + "execution_count": 222, + "id": "checked-prototype", "metadata": {}, "outputs": [ { @@ -2850,29 +2902,29 @@ " <tbody>\n", " <tr>\n", " <th>a</th>\n", - " <td>1</td>\n", " <td>0</td>\n", + " <td>1</td>\n", " <td>2</td>\n", " <td>0</td>\n", " </tr>\n", " <tr>\n", " <th>b</th>\n", - " <td>4</td>\n", " <td>3</td>\n", + " <td>4</td>\n", " <td>5</td>\n", " <td>400</td>\n", " </tr>\n", " <tr>\n", " <th>c</th>\n", - " <td>7</td>\n", " <td>6</td>\n", + " <td>7</td>\n", " <td>8</td>\n", " <td>3</td>\n", " </tr>\n", " <tr>\n", " <th>e</th>\n", - " <td>10</td>\n", " <td>9</td>\n", + " <td>10</td>\n", " <td>11</td>\n", " <td>12</td>\n", " </tr>\n", @@ -2881,14 +2933,14 @@ "</div>" ], "text/plain": [ - " X Y Z id\n", - "a 1 0 2 0\n", - "b 4 3 5 400\n", - "c 7 6 8 3\n", - "e 10 9 11 12" + " X Y Z id\n", + "a 0 1 2 0\n", + "b 3 4 5 400\n", + "c 6 7 8 3\n", + "e 9 10 11 12" ] }, - "execution_count": 58, + "execution_count": 222, "metadata": {}, "output_type": "execute_result" } @@ -2899,7 +2951,7 @@ }, { "cell_type": "markdown", - "id": "elder-apache", + "id": "declared-transmission", "metadata": {}, "source": [ "The `inplace` argument is present accross different pandas methods in order to directly edit the object we are working on instead of creating a new object:" @@ -2907,8 +2959,8 @@ }, { "cell_type": "code", - "execution_count": 55, - "id": "western-commander", + "execution_count": 223, + "id": "alpine-coast", "metadata": {}, "outputs": [], "source": [ @@ -2917,8 +2969,8 @@ }, { "cell_type": "code", - "execution_count": 56, - "id": "sorted-western", + "execution_count": 224, + "id": "gothic-freight", "metadata": {}, "outputs": [ { @@ -2991,7 +3043,7 @@ "12 9 10 11" ] }, - "execution_count": 56, + "execution_count": 224, "metadata": {}, "output_type": "execute_result" } @@ -3002,7 +3054,99 @@ }, { "cell_type": "markdown", - "id": "continent-garbage", + "id": "sticky-defendant", + "metadata": {}, + "source": [ + "### Reset index\n", + "The opposite operation in to turn the index into a normal column and regenerate a basic integer index" + ] + }, + { + "cell_type": "code", + "execution_count": 225, + "id": "signal-disabled", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>id</th>\n", + " <th>X</th>\n", + " <th>Y</th>\n", + " <th>Z</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>1</td>\n", + " <td>2</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>400</td>\n", + " <td>3</td>\n", + " <td>4</td>\n", + " <td>5</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>3</td>\n", + " <td>6</td>\n", + " <td>7</td>\n", + " <td>8</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>12</td>\n", + " <td>9</td>\n", + " <td>10</td>\n", + " <td>11</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "</div>" + ], + "text/plain": [ + " id X Y Z\n", + "0 0 0 1 2\n", + "1 400 3 4 5\n", + "2 3 6 7 8\n", + "3 12 9 10 11" + ] + }, + "execution_count": 225, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df.reset_index()" + ] + }, + { + "cell_type": "markdown", + "id": "comprehensive-priority", "metadata": {}, "source": [ "### Add row\n", @@ -3013,8 +3157,8 @@ }, { "cell_type": "code", - "execution_count": 62, - "id": "bigger-cartridge", + "execution_count": 226, + "id": "western-roots", "metadata": {}, "outputs": [], "source": [ @@ -3023,7 +3167,7 @@ }, { "cell_type": "markdown", - "id": "private-soviet", + "id": "unnecessary-sustainability", "metadata": {}, "source": [ "Notice here from the documentation that we are using the default `axis=0` (ie a concatenation along rows)." @@ -3031,8 +3175,8 @@ }, { "cell_type": "code", - "execution_count": 63, - "id": "helpful-venezuela", + "execution_count": 227, + "id": "sophisticated-speaking", "metadata": {}, "outputs": [ { @@ -3112,7 +3256,7 @@ "1 42 43 44" ] }, - "execution_count": 63, + "execution_count": 227, "metadata": {}, "output_type": "execute_result" } @@ -3123,7 +3267,7 @@ }, { "cell_type": "markdown", - "id": "representative-silicon", + "id": "funny-choice", "metadata": {}, "source": [ "You can choose also to `ignore_index`, similar to reseting and dropping the indices (but note that the index values on the other axes are still respected in the join):" @@ -3131,8 +3275,8 @@ }, { "cell_type": "code", - "execution_count": 65, - "id": "single-angel", + "execution_count": 228, + "id": "associate-lodge", "metadata": {}, "outputs": [ { @@ -3226,7 +3370,7 @@ "7 9 10 11" ] }, - "execution_count": 65, + "execution_count": 228, "metadata": {}, "output_type": "execute_result" } @@ -3237,7 +3381,7 @@ }, { "cell_type": "markdown", - "id": "residential-jewel", + "id": "integrated-suggestion", "metadata": {}, "source": [ "## Filtering tables\n", @@ -3247,8 +3391,8 @@ }, { "cell_type": "code", - "execution_count": 41, - "id": "dominican-vitamin", + "execution_count": 229, + "id": "dying-hepatitis", "metadata": {}, "outputs": [ { @@ -3389,7 +3533,7 @@ "4 0 373450 8.0500 NaN S " ] }, - "execution_count": 41, + "execution_count": 229, "metadata": {}, "output_type": "execute_result" } @@ -3400,7 +3544,7 @@ }, { "cell_type": "markdown", - "id": "brown-alberta", + "id": "growing-norfolk", "metadata": {}, "source": [ "### Selecting columns" @@ -3408,8 +3552,8 @@ }, { "cell_type": "code", - "execution_count": 42, - "id": "rental-airfare", + "execution_count": 230, + "id": "homeless-debut", "metadata": {}, "outputs": [ { @@ -3423,7 +3567,7 @@ "Name: Sex, dtype: object" ] }, - "execution_count": 42, + "execution_count": 230, "metadata": {}, "output_type": "execute_result" } @@ -3434,8 +3578,8 @@ }, { "cell_type": "code", - "execution_count": 43, - "id": "adapted-vitamin", + "execution_count": 231, + "id": "operating-rehabilitation", "metadata": {}, "outputs": [ { @@ -3514,7 +3658,7 @@ "4 male 35.0 3 0" ] }, - "execution_count": 43, + "execution_count": 231, "metadata": {}, "output_type": "execute_result" } @@ -3525,7 +3669,7 @@ }, { "cell_type": "markdown", - "id": "incorrect-material", + "id": "innocent-hopkins", "metadata": {}, "source": [ "### Selecting on a condition" @@ -3533,8 +3677,8 @@ }, { "cell_type": "code", - "execution_count": 66, - "id": "historic-headset", + "execution_count": 232, + "id": "realistic-liberal", "metadata": {}, "outputs": [ { @@ -3675,7 +3819,7 @@ "6 0 17463 51.8625 E46 S " ] }, - "execution_count": 66, + "execution_count": 232, "metadata": {}, "output_type": "execute_result" } @@ -3686,7 +3830,7 @@ }, { "cell_type": "markdown", - "id": "covered-beads", + "id": "employed-extension", "metadata": {}, "source": [ "### Indexing/Slicing\n", @@ -3701,8 +3845,8 @@ }, { "cell_type": "code", - "execution_count": 45, - "id": "conscious-consistency", + "execution_count": 233, + "id": "authentic-winter", "metadata": {}, "outputs": [ { @@ -3751,7 +3895,7 @@ "2 female 26.0" ] }, - "execution_count": 45, + "execution_count": 233, "metadata": {}, "output_type": "execute_result" } @@ -3762,8 +3906,8 @@ }, { "cell_type": "code", - "execution_count": 67, - "id": "automated-large", + "execution_count": 234, + "id": "partial-trading", "metadata": {}, "outputs": [ { @@ -3839,7 +3983,7 @@ "4 male 35.0 0 0 373450" ] }, - "execution_count": 67, + "execution_count": 234, "metadata": {}, "output_type": "execute_result" } @@ -3850,8 +3994,8 @@ }, { "cell_type": "code", - "execution_count": 47, - "id": "planned-prescription", + "execution_count": 235, + "id": "electrical-force", "metadata": {}, "outputs": [ { @@ -3900,7 +4044,7 @@ "1 female 38.0" ] }, - "execution_count": 47, + "execution_count": 235, "metadata": {}, "output_type": "execute_result" } @@ -3911,8 +4055,8 @@ }, { "cell_type": "code", - "execution_count": 48, - "id": "gothic-aluminum", + "execution_count": 236, + "id": "after-giving", "metadata": {}, "outputs": [ { @@ -3979,7 +4123,7 @@ "2 female 26.0 0 0 STON/O2. 3101282" ] }, - "execution_count": 48, + "execution_count": 236, "metadata": {}, "output_type": "execute_result" } @@ -3990,8 +4134,8 @@ }, { "cell_type": "code", - "execution_count": 49, - "id": "stone-drill", + "execution_count": 237, + "id": "charming-debate", "metadata": {}, "outputs": [ { @@ -4052,7 +4196,7 @@ "871 Beckwith, Mrs. Richard Leonard (Sallie Monypeny) 47.0" ] }, - "execution_count": 49, + "execution_count": 237, "metadata": {}, "output_type": "execute_result" } @@ -4064,7 +4208,7 @@ }, { "cell_type": "markdown", - "id": "subject-campbell", + "id": "changed-california", "metadata": {}, "source": [ "### Selecting random samples\n", @@ -4074,8 +4218,8 @@ }, { "cell_type": "code", - "execution_count": 68, - "id": "duplicate-branch", + "execution_count": 238, + "id": "extensive-sense", "metadata": {}, "outputs": [ { @@ -4115,93 +4259,93 @@ " </thead>\n", " <tbody>\n", " <tr>\n", - " <th>830</th>\n", - " <td>831</td>\n", - " <td>1</td>\n", + " <th>736</th>\n", + " <td>737</td>\n", + " <td>0</td>\n", " <td>3</td>\n", - " <td>Yasbeck, Mrs. Antoni (Selini Alexander)</td>\n", + " <td>Ford, Mrs. Edward (Margaret Ann Watson)</td>\n", " <td>female</td>\n", - " <td>15.0</td>\n", - " <td>1</td>\n", - " <td>0</td>\n", - " <td>2659</td>\n", - " <td>14.4542</td>\n", - " <td>NaN</td>\n", - " <td>C</td>\n", - " </tr>\n", - " <tr>\n", - " <th>141</th>\n", - " <td>142</td>\n", + " <td>48.0</td>\n", " <td>1</td>\n", " <td>3</td>\n", - " <td>Nysten, Miss. Anna Sofia</td>\n", - " <td>female</td>\n", - " <td>22.0</td>\n", - " <td>0</td>\n", - " <td>0</td>\n", - " <td>347081</td>\n", - " <td>7.7500</td>\n", + " <td>W./C. 6608</td>\n", + " <td>34.3750</td>\n", " <td>NaN</td>\n", " <td>S</td>\n", " </tr>\n", " <tr>\n", - " <th>378</th>\n", - " <td>379</td>\n", + " <th>668</th>\n", + " <td>669</td>\n", " <td>0</td>\n", " <td>3</td>\n", - " <td>Betros, Mr. Tannous</td>\n", + " <td>Cook, Mr. Jacob</td>\n", " <td>male</td>\n", - " <td>20.0</td>\n", + " <td>43.0</td>\n", " <td>0</td>\n", " <td>0</td>\n", - " <td>2648</td>\n", - " <td>4.0125</td>\n", + " <td>A/5 3536</td>\n", + " <td>8.0500</td>\n", " <td>NaN</td>\n", - " <td>C</td>\n", + " <td>S</td>\n", " </tr>\n", " <tr>\n", - " <th>584</th>\n", - " <td>585</td>\n", - " <td>0</td>\n", + " <th>36</th>\n", + " <td>37</td>\n", + " <td>1</td>\n", " <td>3</td>\n", - " <td>Paulner, Mr. Uscher</td>\n", + " <td>Mamee, Mr. Hanna</td>\n", " <td>male</td>\n", " <td>NaN</td>\n", " <td>0</td>\n", " <td>0</td>\n", - " <td>3411</td>\n", - " <td>8.7125</td>\n", + " <td>2677</td>\n", + " <td>7.2292</td>\n", " <td>NaN</td>\n", " <td>C</td>\n", " </tr>\n", " <tr>\n", - " <th>820</th>\n", - " <td>821</td>\n", - " <td>1</td>\n", - " <td>1</td>\n", - " <td>Hays, Mrs. Charles Melville (Clara Jennings Gr...</td>\n", - " <td>female</td>\n", - " <td>52.0</td>\n", + " <th>145</th>\n", + " <td>146</td>\n", + " <td>0</td>\n", + " <td>2</td>\n", + " <td>Nicholls, Mr. Joseph Charles</td>\n", + " <td>male</td>\n", + " <td>19.0</td>\n", " <td>1</td>\n", " <td>1</td>\n", - " <td>12749</td>\n", - " <td>93.5000</td>\n", - " <td>B69</td>\n", + " <td>C.A. 33112</td>\n", + " <td>36.7500</td>\n", + " <td>NaN</td>\n", " <td>S</td>\n", " </tr>\n", " <tr>\n", - " <th>497</th>\n", - " <td>498</td>\n", + " <th>386</th>\n", + " <td>387</td>\n", " <td>0</td>\n", " <td>3</td>\n", - " <td>Shellard, Mr. Frederick William</td>\n", + " <td>Goodwin, Master. Sidney Leonard</td>\n", " <td>male</td>\n", + " <td>1.0</td>\n", + " <td>5</td>\n", + " <td>2</td>\n", + " <td>CA 2144</td>\n", + " <td>46.9000</td>\n", " <td>NaN</td>\n", + " <td>S</td>\n", + " </tr>\n", + " <tr>\n", + " <th>151</th>\n", + " <td>152</td>\n", + " <td>1</td>\n", + " <td>1</td>\n", + " <td>Pears, Mrs. Thomas (Edith Wearne)</td>\n", + " <td>female</td>\n", + " <td>22.0</td>\n", + " <td>1</td>\n", " <td>0</td>\n", - " <td>0</td>\n", - " <td>C.A. 6212</td>\n", - " <td>15.1000</td>\n", - " <td>NaN</td>\n", + " <td>113776</td>\n", + " <td>66.6000</td>\n", + " <td>C2</td>\n", " <td>S</td>\n", " </tr>\n", " </tbody>\n", @@ -4209,32 +4353,24 @@ "</div>" ], "text/plain": [ - " PassengerId Survived Pclass \\\n", - "830 831 1 3 \n", - "141 142 1 3 \n", - "378 379 0 3 \n", - "584 585 0 3 \n", - "820 821 1 1 \n", - "497 498 0 3 \n", - "\n", - " Name Sex Age SibSp \\\n", - "830 Yasbeck, Mrs. Antoni (Selini Alexander) female 15.0 1 \n", - "141 Nysten, Miss. Anna Sofia female 22.0 0 \n", - "378 Betros, Mr. Tannous male 20.0 0 \n", - "584 Paulner, Mr. Uscher male NaN 0 \n", - "820 Hays, Mrs. Charles Melville (Clara Jennings Gr... female 52.0 1 \n", - "497 Shellard, Mr. Frederick William male NaN 0 \n", - "\n", - " Parch Ticket Fare Cabin Embarked \n", - "830 0 2659 14.4542 NaN C \n", - "141 0 347081 7.7500 NaN S \n", - "378 0 2648 4.0125 NaN C \n", - "584 0 3411 8.7125 NaN C \n", - "820 1 12749 93.5000 B69 S \n", - "497 0 C.A. 6212 15.1000 NaN S " + " PassengerId Survived Pclass Name \\\n", + "736 737 0 3 Ford, Mrs. Edward (Margaret Ann Watson) \n", + "668 669 0 3 Cook, Mr. Jacob \n", + "36 37 1 3 Mamee, Mr. Hanna \n", + "145 146 0 2 Nicholls, Mr. Joseph Charles \n", + "386 387 0 3 Goodwin, Master. Sidney Leonard \n", + "151 152 1 1 Pears, Mrs. Thomas (Edith Wearne) \n", + "\n", + " Sex Age SibSp Parch Ticket Fare Cabin Embarked \n", + "736 female 48.0 1 3 W./C. 6608 34.3750 NaN S \n", + "668 male 43.0 0 0 A/5 3536 8.0500 NaN S \n", + "36 male NaN 0 0 2677 7.2292 NaN C \n", + "145 male 19.0 1 1 C.A. 33112 36.7500 NaN S \n", + "386 male 1.0 5 2 CA 2144 46.9000 NaN S \n", + "151 female 22.0 1 0 113776 66.6000 C2 S " ] }, - "execution_count": 68, + "execution_count": 238, "metadata": {}, "output_type": "execute_result" } @@ -4243,10 +4379,20 @@ "titanic.sample(n=6)" ] }, + { + "cell_type": "markdown", + "id": "french-miami", + "metadata": {}, + "source": [ + "### isin\n", + "\n", + "> https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.isin.html" + ] + }, { "cell_type": "code", - "execution_count": 72, - "id": "southwest-lighting", + "execution_count": 239, + "id": "enormous-dublin", "metadata": {}, "outputs": [ { @@ -4286,63 +4432,48 @@ " </thead>\n", " <tbody>\n", " <tr>\n", - " <th>111</th>\n", - " <td>112</td>\n", + " <th>173</th>\n", + " <td>174</td>\n", " <td>0</td>\n", " <td>3</td>\n", - " <td>Zabour, Miss. Hileni</td>\n", - " <td>female</td>\n", - " <td>14.5</td>\n", - " <td>1</td>\n", - " <td>0</td>\n", - " <td>2665</td>\n", - " <td>14.4542</td>\n", - " <td>NaN</td>\n", - " <td>C</td>\n", - " </tr>\n", - " <tr>\n", - " <th>211</th>\n", - " <td>212</td>\n", - " <td>1</td>\n", - " <td>2</td>\n", - " <td>Cameron, Miss. Clear Annie</td>\n", - " <td>female</td>\n", - " <td>35.0</td>\n", + " <td>Sivola, Mr. Antti Wilhelm</td>\n", + " <td>male</td>\n", + " <td>21.0</td>\n", " <td>0</td>\n", " <td>0</td>\n", - " <td>F.C.C. 13528</td>\n", - " <td>21.0000</td>\n", + " <td>STON/O 2. 3101280</td>\n", + " <td>7.925</td>\n", " <td>NaN</td>\n", " <td>S</td>\n", " </tr>\n", " <tr>\n", - " <th>264</th>\n", - " <td>265</td>\n", + " <th>351</th>\n", + " <td>352</td>\n", " <td>0</td>\n", - " <td>3</td>\n", - " <td>Henry, Miss. Delia</td>\n", - " <td>female</td>\n", + " <td>1</td>\n", + " <td>Williams-Lambert, Mr. Fletcher Fellows</td>\n", + " <td>male</td>\n", " <td>NaN</td>\n", " <td>0</td>\n", " <td>0</td>\n", - " <td>382649</td>\n", - " <td>7.7500</td>\n", - " <td>NaN</td>\n", - " <td>Q</td>\n", + " <td>113510</td>\n", + " <td>35.000</td>\n", + " <td>C128</td>\n", + " <td>S</td>\n", " </tr>\n", " <tr>\n", - " <th>363</th>\n", - " <td>364</td>\n", + " <th>456</th>\n", + " <td>457</td>\n", " <td>0</td>\n", - " <td>3</td>\n", - " <td>Asim, Mr. Adola</td>\n", + " <td>1</td>\n", + " <td>Millet, Mr. Francis Davis</td>\n", " <td>male</td>\n", - " <td>35.0</td>\n", + " <td>65.0</td>\n", " <td>0</td>\n", " <td>0</td>\n", - " <td>SOTON/O.Q. 3101310</td>\n", - " <td>7.0500</td>\n", - " <td>NaN</td>\n", + " <td>13509</td>\n", + " <td>26.550</td>\n", + " <td>E38</td>\n", " <td>S</td>\n", " </tr>\n", " </tbody>\n", @@ -4350,540 +4481,29 @@ "</div>" ], "text/plain": [ - " PassengerId Survived Pclass Name Sex Age \\\n", - "111 112 0 3 Zabour, Miss. Hileni female 14.5 \n", - "211 212 1 2 Cameron, Miss. Clear Annie female 35.0 \n", - "264 265 0 3 Henry, Miss. Delia female NaN \n", - "363 364 0 3 Asim, Mr. Adola male 35.0 \n", - "\n", - " SibSp Parch Ticket Fare Cabin Embarked \n", - "111 1 0 2665 14.4542 NaN C \n", - "211 0 0 F.C.C. 13528 21.0000 NaN S \n", - "264 0 0 382649 7.7500 NaN Q \n", - "363 0 0 SOTON/O.Q. 3101310 7.0500 NaN S " + " PassengerId Survived Pclass Name \\\n", + "173 174 0 3 Sivola, Mr. Antti Wilhelm \n", + "351 352 0 1 Williams-Lambert, Mr. Fletcher Fellows \n", + "456 457 0 1 Millet, Mr. Francis Davis \n", + "\n", + " Sex Age SibSp Parch Ticket Fare Cabin Embarked \n", + "173 male 21.0 0 0 STON/O 2. 3101280 7.925 NaN S \n", + "351 male NaN 0 0 113510 35.000 C128 S \n", + "456 male 65.0 0 0 13509 26.550 E38 S " ] }, - "execution_count": 72, + "execution_count": 239, "metadata": {}, "output_type": "execute_result" } ], "source": [ - "titanic.sample(frac=.005)" + "titanic[titanic['PassengerId'].isin([457, 352, 174])]" ] }, { - "cell_type": "code", - "execution_count": 73, - "id": "complex-transcript", - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "<div>\n", - "<style scoped>\n", - " .dataframe tbody tr th:only-of-type {\n", - " vertical-align: middle;\n", - " }\n", - "\n", - " .dataframe tbody tr th {\n", - " vertical-align: top;\n", - " }\n", - "\n", - " .dataframe thead th {\n", - " text-align: right;\n", - " }\n", - "</style>\n", - "<table border=\"1\" class=\"dataframe\">\n", - " <thead>\n", - " <tr style=\"text-align: right;\">\n", - " <th></th>\n", - " <th>PassengerId</th>\n", - " <th>Survived</th>\n", - " <th>Pclass</th>\n", - " <th>Name</th>\n", - " <th>Sex</th>\n", - " <th>Age</th>\n", - " <th>SibSp</th>\n", - " <th>Parch</th>\n", - " <th>Ticket</th>\n", - " <th>Fare</th>\n", - " <th>Cabin</th>\n", - " <th>Embarked</th>\n", - " </tr>\n", - " </thead>\n", - " <tbody>\n", - " <tr>\n", - " <th>753</th>\n", - " <td>754</td>\n", - " <td>0</td>\n", - " <td>3</td>\n", - " <td>Jonkoff, Mr. Lalio</td>\n", - " <td>male</td>\n", - " <td>23.0</td>\n", - " <td>0</td>\n", - " <td>0</td>\n", - " <td>349204</td>\n", - " <td>7.8958</td>\n", - " <td>NaN</td>\n", - " <td>S</td>\n", - " </tr>\n", - " <tr>\n", - " <th>558</th>\n", - " <td>559</td>\n", - " <td>1</td>\n", - " <td>1</td>\n", - " <td>Taussig, Mrs. Emil (Tillie Mandelbaum)</td>\n", - " <td>female</td>\n", - " <td>39.0</td>\n", - " <td>1</td>\n", - " <td>1</td>\n", - " <td>110413</td>\n", - " <td>79.6500</td>\n", - " <td>E67</td>\n", - " <td>S</td>\n", - " </tr>\n", - " <tr>\n", - " <th>374</th>\n", - " <td>375</td>\n", - " <td>0</td>\n", - " <td>3</td>\n", - " <td>Palsson, Miss. Stina Viola</td>\n", - " <td>female</td>\n", - " <td>3.0</td>\n", - " <td>3</td>\n", - " <td>1</td>\n", - " <td>349909</td>\n", - " <td>21.0750</td>\n", - " <td>NaN</td>\n", - " <td>S</td>\n", - " </tr>\n", - " <tr>\n", - " <th>61</th>\n", - " <td>62</td>\n", - " <td>1</td>\n", - " <td>1</td>\n", - " <td>Icard, Miss. Amelie</td>\n", - " <td>female</td>\n", - " <td>38.0</td>\n", - " <td>0</td>\n", - " <td>0</td>\n", - " <td>113572</td>\n", - " <td>80.0000</td>\n", - " <td>B28</td>\n", - " <td>NaN</td>\n", - " </tr>\n", - " </tbody>\n", - "</table>\n", - "</div>" - ], - "text/plain": [ - " PassengerId Survived Pclass Name \\\n", - "753 754 0 3 Jonkoff, Mr. Lalio \n", - "558 559 1 1 Taussig, Mrs. Emil (Tillie Mandelbaum) \n", - "374 375 0 3 Palsson, Miss. Stina Viola \n", - "61 62 1 1 Icard, Miss. Amelie \n", - "\n", - " Sex Age SibSp Parch Ticket Fare Cabin Embarked \n", - "753 male 23.0 0 0 349204 7.8958 NaN S \n", - "558 female 39.0 1 1 110413 79.6500 E67 S \n", - "374 female 3.0 3 1 349909 21.0750 NaN S \n", - "61 female 38.0 0 0 113572 80.0000 B28 NaN " - ] - }, - "execution_count": 73, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "titanic.sample(frac=.005)" - ] - }, - { - "cell_type": "code", - "execution_count": 74, - "id": "regulated-ontario", - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "<div>\n", - "<style scoped>\n", - " .dataframe tbody tr th:only-of-type {\n", - " vertical-align: middle;\n", - " }\n", - "\n", - " .dataframe tbody tr th {\n", - " vertical-align: top;\n", - " }\n", - "\n", - " .dataframe thead th {\n", - " text-align: right;\n", - " }\n", - "</style>\n", - "<table border=\"1\" class=\"dataframe\">\n", - " <thead>\n", - " <tr style=\"text-align: right;\">\n", - " <th></th>\n", - " <th>PassengerId</th>\n", - " <th>Survived</th>\n", - " <th>Pclass</th>\n", - " <th>Name</th>\n", - " <th>Sex</th>\n", - " <th>Age</th>\n", - " <th>SibSp</th>\n", - " <th>Parch</th>\n", - " <th>Ticket</th>\n", - " <th>Fare</th>\n", - " <th>Cabin</th>\n", - " <th>Embarked</th>\n", - " </tr>\n", - " </thead>\n", - " <tbody>\n", - " <tr>\n", - " <th>456</th>\n", - " <td>457</td>\n", - " <td>0</td>\n", - " <td>1</td>\n", - " <td>Millet, Mr. Francis Davis</td>\n", - " <td>male</td>\n", - " <td>65.0</td>\n", - " <td>0</td>\n", - " <td>0</td>\n", - " <td>13509</td>\n", - " <td>26.550</td>\n", - " <td>E38</td>\n", - " <td>S</td>\n", - " </tr>\n", - " <tr>\n", - " <th>351</th>\n", - " <td>352</td>\n", - " <td>0</td>\n", - " <td>1</td>\n", - " <td>Williams-Lambert, Mr. Fletcher Fellows</td>\n", - " <td>male</td>\n", - " <td>NaN</td>\n", - " <td>0</td>\n", - " <td>0</td>\n", - " <td>113510</td>\n", - " <td>35.000</td>\n", - " <td>C128</td>\n", - " <td>S</td>\n", - " </tr>\n", - " <tr>\n", - " <th>173</th>\n", - " <td>174</td>\n", - " <td>0</td>\n", - " <td>3</td>\n", - " <td>Sivola, Mr. Antti Wilhelm</td>\n", - " <td>male</td>\n", - " <td>21.0</td>\n", - " <td>0</td>\n", - " <td>0</td>\n", - " <td>STON/O 2. 3101280</td>\n", - " <td>7.925</td>\n", - " <td>NaN</td>\n", - " <td>S</td>\n", - " </tr>\n", - " <tr>\n", - " <th>671</th>\n", - " <td>672</td>\n", - " <td>0</td>\n", - " <td>1</td>\n", - " <td>Davidson, Mr. Thornton</td>\n", - " <td>male</td>\n", - " <td>31.0</td>\n", - " <td>1</td>\n", - " <td>0</td>\n", - " <td>F.C. 12750</td>\n", - " <td>52.000</td>\n", - " <td>B71</td>\n", - " <td>S</td>\n", - " </tr>\n", - " </tbody>\n", - "</table>\n", - "</div>" - ], - "text/plain": [ - " PassengerId Survived Pclass Name \\\n", - "456 457 0 1 Millet, Mr. Francis Davis \n", - "351 352 0 1 Williams-Lambert, Mr. Fletcher Fellows \n", - "173 174 0 3 Sivola, Mr. Antti Wilhelm \n", - "671 672 0 1 Davidson, Mr. Thornton \n", - "\n", - " Sex Age SibSp Parch Ticket Fare Cabin Embarked \n", - "456 male 65.0 0 0 13509 26.550 E38 S \n", - "351 male NaN 0 0 113510 35.000 C128 S \n", - "173 male 21.0 0 0 STON/O 2. 3101280 7.925 NaN S \n", - "671 male 31.0 1 0 F.C. 12750 52.000 B71 S " - ] - }, - "execution_count": 74, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "titanic.sample(frac=.005, random_state=12)" - ] - }, - { - "cell_type": "code", - "execution_count": 75, - "id": "fifty-cutting", - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "<div>\n", - "<style scoped>\n", - " .dataframe tbody tr th:only-of-type {\n", - " vertical-align: middle;\n", - " }\n", - "\n", - " .dataframe tbody tr th {\n", - " vertical-align: top;\n", - " }\n", - "\n", - " .dataframe thead th {\n", - " text-align: right;\n", - " }\n", - "</style>\n", - "<table border=\"1\" class=\"dataframe\">\n", - " <thead>\n", - " <tr style=\"text-align: right;\">\n", - " <th></th>\n", - " <th>PassengerId</th>\n", - " <th>Survived</th>\n", - " <th>Pclass</th>\n", - " <th>Name</th>\n", - " <th>Sex</th>\n", - " <th>Age</th>\n", - " <th>SibSp</th>\n", - " <th>Parch</th>\n", - " <th>Ticket</th>\n", - " <th>Fare</th>\n", - " <th>Cabin</th>\n", - " <th>Embarked</th>\n", - " </tr>\n", - " </thead>\n", - " <tbody>\n", - " <tr>\n", - " <th>456</th>\n", - " <td>457</td>\n", - " <td>0</td>\n", - " <td>1</td>\n", - " <td>Millet, Mr. Francis Davis</td>\n", - " <td>male</td>\n", - " <td>65.0</td>\n", - " <td>0</td>\n", - " <td>0</td>\n", - " <td>13509</td>\n", - " <td>26.550</td>\n", - " <td>E38</td>\n", - " <td>S</td>\n", - " </tr>\n", - " <tr>\n", - " <th>351</th>\n", - " <td>352</td>\n", - " <td>0</td>\n", - " <td>1</td>\n", - " <td>Williams-Lambert, Mr. Fletcher Fellows</td>\n", - " <td>male</td>\n", - " <td>NaN</td>\n", - " <td>0</td>\n", - " <td>0</td>\n", - " <td>113510</td>\n", - " <td>35.000</td>\n", - " <td>C128</td>\n", - " <td>S</td>\n", - " </tr>\n", - " <tr>\n", - " <th>173</th>\n", - " <td>174</td>\n", - " <td>0</td>\n", - " <td>3</td>\n", - " <td>Sivola, Mr. Antti Wilhelm</td>\n", - " <td>male</td>\n", - " <td>21.0</td>\n", - " <td>0</td>\n", - " <td>0</td>\n", - " <td>STON/O 2. 3101280</td>\n", - " <td>7.925</td>\n", - " <td>NaN</td>\n", - " <td>S</td>\n", - " </tr>\n", - " <tr>\n", - " <th>671</th>\n", - " <td>672</td>\n", - " <td>0</td>\n", - " <td>1</td>\n", - " <td>Davidson, Mr. Thornton</td>\n", - " <td>male</td>\n", - " <td>31.0</td>\n", - " <td>1</td>\n", - " <td>0</td>\n", - " <td>F.C. 12750</td>\n", - " <td>52.000</td>\n", - " <td>B71</td>\n", - " <td>S</td>\n", - " </tr>\n", - " </tbody>\n", - "</table>\n", - "</div>" - ], - "text/plain": [ - " PassengerId Survived Pclass Name \\\n", - "456 457 0 1 Millet, Mr. Francis Davis \n", - "351 352 0 1 Williams-Lambert, Mr. Fletcher Fellows \n", - "173 174 0 3 Sivola, Mr. Antti Wilhelm \n", - "671 672 0 1 Davidson, Mr. Thornton \n", - "\n", - " Sex Age SibSp Parch Ticket Fare Cabin Embarked \n", - "456 male 65.0 0 0 13509 26.550 E38 S \n", - "351 male NaN 0 0 113510 35.000 C128 S \n", - "173 male 21.0 0 0 STON/O 2. 3101280 7.925 NaN S \n", - "671 male 31.0 1 0 F.C. 12750 52.000 B71 S " - ] - }, - "execution_count": 75, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "titanic.sample(frac=.005, random_state=12)" - ] - }, - { - "cell_type": "markdown", - "id": "introductory-domestic", - "metadata": {}, - "source": [ - "### isin\n", - "\n", - "> https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.isin.html" - ] - }, - { - "cell_type": "code", - "execution_count": 76, - "id": "fuzzy-nepal", - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "<div>\n", - "<style scoped>\n", - " .dataframe tbody tr th:only-of-type {\n", - " vertical-align: middle;\n", - " }\n", - "\n", - " .dataframe tbody tr th {\n", - " vertical-align: top;\n", - " }\n", - "\n", - " .dataframe thead th {\n", - " text-align: right;\n", - " }\n", - "</style>\n", - "<table border=\"1\" class=\"dataframe\">\n", - " <thead>\n", - " <tr style=\"text-align: right;\">\n", - " <th></th>\n", - " <th>PassengerId</th>\n", - " <th>Survived</th>\n", - " <th>Pclass</th>\n", - " <th>Name</th>\n", - " <th>Sex</th>\n", - " <th>Age</th>\n", - " <th>SibSp</th>\n", - " <th>Parch</th>\n", - " <th>Ticket</th>\n", - " <th>Fare</th>\n", - " <th>Cabin</th>\n", - " <th>Embarked</th>\n", - " </tr>\n", - " </thead>\n", - " <tbody>\n", - " <tr>\n", - " <th>173</th>\n", - " <td>174</td>\n", - " <td>0</td>\n", - " <td>3</td>\n", - " <td>Sivola, Mr. Antti Wilhelm</td>\n", - " <td>male</td>\n", - " <td>21.0</td>\n", - " <td>0</td>\n", - " <td>0</td>\n", - " <td>STON/O 2. 3101280</td>\n", - " <td>7.925</td>\n", - " <td>NaN</td>\n", - " <td>S</td>\n", - " </tr>\n", - " <tr>\n", - " <th>351</th>\n", - " <td>352</td>\n", - " <td>0</td>\n", - " <td>1</td>\n", - " <td>Williams-Lambert, Mr. Fletcher Fellows</td>\n", - " <td>male</td>\n", - " <td>NaN</td>\n", - " <td>0</td>\n", - " <td>0</td>\n", - " <td>113510</td>\n", - " <td>35.000</td>\n", - " <td>C128</td>\n", - " <td>S</td>\n", - " </tr>\n", - " <tr>\n", - " <th>456</th>\n", - " <td>457</td>\n", - " <td>0</td>\n", - " <td>1</td>\n", - " <td>Millet, Mr. Francis Davis</td>\n", - " <td>male</td>\n", - " <td>65.0</td>\n", - " <td>0</td>\n", - " <td>0</td>\n", - " <td>13509</td>\n", - " <td>26.550</td>\n", - " <td>E38</td>\n", - " <td>S</td>\n", - " </tr>\n", - " </tbody>\n", - "</table>\n", - "</div>" - ], - "text/plain": [ - " PassengerId Survived Pclass Name \\\n", - "173 174 0 3 Sivola, Mr. Antti Wilhelm \n", - "351 352 0 1 Williams-Lambert, Mr. Fletcher Fellows \n", - "456 457 0 1 Millet, Mr. Francis Davis \n", - "\n", - " Sex Age SibSp Parch Ticket Fare Cabin Embarked \n", - "173 male 21.0 0 0 STON/O 2. 3101280 7.925 NaN S \n", - "351 male NaN 0 0 113510 35.000 C128 S \n", - "456 male 65.0 0 0 13509 26.550 E38 S " - ] - }, - "execution_count": 76, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "titanic[titanic['PassengerId'].isin([457, 352, 174])]" - ] - }, - { - "cell_type": "markdown", - "id": "tested-stretch", + "cell_type": "markdown", + "id": "european-drinking", "metadata": {}, "source": [ "### where\n", @@ -4896,8 +4516,8 @@ }, { "cell_type": "code", - "execution_count": 77, - "id": "persistent-processor", + "execution_count": 240, + "id": "piano-chance", "metadata": {}, "outputs": [ { @@ -4964,7 +4584,7 @@ "4 4 5" ] }, - "execution_count": 77, + "execution_count": 240, "metadata": {}, "output_type": "execute_result" } @@ -4976,8 +4596,8 @@ }, { "cell_type": "code", - "execution_count": 78, - "id": "informative-accident", + "execution_count": 241, + "id": "minute-printer", "metadata": {}, "outputs": [ { @@ -5044,7 +4664,7 @@ "4 0 0" ] }, - "execution_count": 78, + "execution_count": 241, "metadata": {}, "output_type": "execute_result" } @@ -5055,8 +4675,8 @@ }, { "cell_type": "code", - "execution_count": 79, - "id": "usual-soundtrack", + "execution_count": 242, + "id": "polar-offering", "metadata": {}, "outputs": [ { @@ -5123,7 +4743,7 @@ "4 4 5" ] }, - "execution_count": 79, + "execution_count": 242, "metadata": {}, "output_type": "execute_result" } @@ -5134,7 +4754,7 @@ }, { "cell_type": "markdown", - "id": "sudden-biography", + "id": "intelligent-trance", "metadata": {}, "source": [ "### mask\n", @@ -5146,8 +4766,8 @@ }, { "cell_type": "code", - "execution_count": 59, - "id": "informative-bahamas", + "execution_count": 243, + "id": "designing-capacity", "metadata": {}, "outputs": [ { @@ -5214,7 +4834,7 @@ "4 4 5" ] }, - "execution_count": 59, + "execution_count": 243, "metadata": {}, "output_type": "execute_result" } @@ -5225,8 +4845,8 @@ }, { "cell_type": "code", - "execution_count": 60, - "id": "minute-marsh", + "execution_count": 244, + "id": "breeding-radio", "metadata": {}, "outputs": [ { @@ -5293,7 +4913,7 @@ "4 4 5" ] }, - "execution_count": 60, + "execution_count": 244, "metadata": {}, "output_type": "execute_result" } @@ -5304,7 +4924,7 @@ }, { "cell_type": "markdown", - "id": "green-creator", + "id": "fourth-tourism", "metadata": {}, "source": [ "### query\n", @@ -5316,8 +4936,8 @@ }, { "cell_type": "code", - "execution_count": 87, - "id": "listed-blackberry", + "execution_count": 245, + "id": "systematic-hawaii", "metadata": {}, "outputs": [ { @@ -5569,7 +5189,7 @@ "[342 rows x 12 columns]" ] }, - "execution_count": 87, + "execution_count": 245, "metadata": {}, "output_type": "execute_result" } @@ -5580,7 +5200,7 @@ }, { "cell_type": "markdown", - "id": "infinite-bankruptcy", + "id": "indirect-oakland", "metadata": {}, "source": [ "Composing with \"and\" (`&`) \"or\" (`|`) operators:" @@ -5588,8 +5208,8 @@ }, { "cell_type": "code", - "execution_count": 92, - "id": "compressed-footage", + "execution_count": 246, + "id": "foster-customs", "metadata": {}, "outputs": [ { @@ -5841,7 +5461,7 @@ "[233 rows x 12 columns]" ] }, - "execution_count": 92, + "execution_count": 246, "metadata": {}, "output_type": "execute_result" } @@ -5852,7 +5472,7 @@ }, { "cell_type": "markdown", - "id": "exterior-workstation", + "id": "responsible-warren", "metadata": {}, "source": [ "You can refer to variables in the environment by prefixing them with an ‘@’ character " @@ -5860,8 +5480,8 @@ }, { "cell_type": "code", - "execution_count": 93, - "id": "removable-gather", + "execution_count": 247, + "id": "eligible-breath", "metadata": {}, "outputs": [], "source": [ @@ -5870,27 +5490,27 @@ }, { "cell_type": "code", - "execution_count": 94, - "id": "fleet-modeling", + "execution_count": 248, + "id": "alpine-residence", "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "79 Dowdell, Miss. Elizabeth\n", - "354 Yousif, Mr. Wazli\n", - "495 Yousseff, Mr. Gerious\n", - "173 Sivola, Mr. Antti Wilhelm\n", - "615 Herman, Miss. Alice\n", - "614 Brocklebank, Mr. William Alfred\n", - "735 Williams, Mr. Leslie\n", - "666 Butler, Mr. Reginald Fenton\n", - "617 Lobb, Mrs. William Arthur (Cordelia K Stanlick)\n", - "839 Marechal, Mr. Pierre\n", + "674 Watson, Mr. Ennis Hastings\n", + "623 Hansen, Mr. Henry Damsgaard\n", + "62 Harris, Mr. Henry Birkhardt\n", + "692 Lam, Mr. Ali\n", + "137 Futrelle, Mr. Jacques Heath\n", + "165 Goldsmith, Master. Frank John William \"Frankie\"\n", + "261 Asplund, Master. Edvin Rojj Felix\n", + "201 Sage, Mr. Frederick\n", + "335 Denkoff, Mr. Mitto\n", + "676 Sawyer, Mr. Frederick Charles\n", "Name: Name, dtype: object" ] }, - "execution_count": 94, + "execution_count": 248, "metadata": {}, "output_type": "execute_result" } @@ -5901,8 +5521,8 @@ }, { "cell_type": "code", - "execution_count": 95, - "id": "opposite-score", + "execution_count": 249, + "id": "therapeutic-sudan", "metadata": {}, "outputs": [ { @@ -5942,154 +5562,154 @@ " </thead>\n", " <tbody>\n", " <tr>\n", - " <th>79</th>\n", - " <td>80</td>\n", - " <td>1</td>\n", - " <td>3</td>\n", - " <td>Dowdell, Miss. Elizabeth</td>\n", - " <td>female</td>\n", - " <td>30.0</td>\n", + " <th>62</th>\n", + " <td>63</td>\n", " <td>0</td>\n", + " <td>1</td>\n", + " <td>Harris, Mr. Henry Birkhardt</td>\n", + " <td>male</td>\n", + " <td>45.0</td>\n", + " <td>1</td>\n", " <td>0</td>\n", - " <td>364516</td>\n", - " <td>12.4750</td>\n", - " <td>NaN</td>\n", + " <td>36973</td>\n", + " <td>83.4750</td>\n", + " <td>C83</td>\n", " <td>S</td>\n", " </tr>\n", " <tr>\n", - " <th>173</th>\n", - " <td>174</td>\n", + " <th>137</th>\n", + " <td>138</td>\n", " <td>0</td>\n", - " <td>3</td>\n", - " <td>Sivola, Mr. Antti Wilhelm</td>\n", + " <td>1</td>\n", + " <td>Futrelle, Mr. Jacques Heath</td>\n", " <td>male</td>\n", - " <td>21.0</td>\n", - " <td>0</td>\n", + " <td>37.0</td>\n", + " <td>1</td>\n", " <td>0</td>\n", - " <td>STON/O 2. 3101280</td>\n", - " <td>7.9250</td>\n", - " <td>NaN</td>\n", + " <td>113803</td>\n", + " <td>53.1000</td>\n", + " <td>C123</td>\n", " <td>S</td>\n", " </tr>\n", " <tr>\n", - " <th>354</th>\n", - " <td>355</td>\n", - " <td>0</td>\n", + " <th>165</th>\n", + " <td>166</td>\n", + " <td>1</td>\n", " <td>3</td>\n", - " <td>Yousif, Mr. Wazli</td>\n", + " <td>Goldsmith, Master. Frank John William \"Frankie\"</td>\n", " <td>male</td>\n", - " <td>NaN</td>\n", + " <td>9.0</td>\n", " <td>0</td>\n", - " <td>0</td>\n", - " <td>2647</td>\n", - " <td>7.2250</td>\n", + " <td>2</td>\n", + " <td>363291</td>\n", + " <td>20.5250</td>\n", " <td>NaN</td>\n", - " <td>C</td>\n", + " <td>S</td>\n", " </tr>\n", " <tr>\n", - " <th>495</th>\n", - " <td>496</td>\n", + " <th>201</th>\n", + " <td>202</td>\n", " <td>0</td>\n", " <td>3</td>\n", - " <td>Yousseff, Mr. Gerious</td>\n", + " <td>Sage, Mr. Frederick</td>\n", " <td>male</td>\n", " <td>NaN</td>\n", - " <td>0</td>\n", - " <td>0</td>\n", - " <td>2627</td>\n", - " <td>14.4583</td>\n", + " <td>8</td>\n", + " <td>2</td>\n", + " <td>CA. 2343</td>\n", + " <td>69.5500</td>\n", " <td>NaN</td>\n", - " <td>C</td>\n", + " <td>S</td>\n", " </tr>\n", " <tr>\n", - " <th>614</th>\n", - " <td>615</td>\n", - " <td>0</td>\n", + " <th>261</th>\n", + " <td>262</td>\n", + " <td>1</td>\n", " <td>3</td>\n", - " <td>Brocklebank, Mr. William Alfred</td>\n", + " <td>Asplund, Master. Edvin Rojj Felix</td>\n", " <td>male</td>\n", - " <td>35.0</td>\n", - " <td>0</td>\n", - " <td>0</td>\n", - " <td>364512</td>\n", - " <td>8.0500</td>\n", + " <td>3.0</td>\n", + " <td>4</td>\n", + " <td>2</td>\n", + " <td>347077</td>\n", + " <td>31.3875</td>\n", " <td>NaN</td>\n", " <td>S</td>\n", " </tr>\n", " <tr>\n", - " <th>615</th>\n", - " <td>616</td>\n", - " <td>1</td>\n", - " <td>2</td>\n", - " <td>Herman, Miss. Alice</td>\n", - " <td>female</td>\n", - " <td>24.0</td>\n", - " <td>1</td>\n", - " <td>2</td>\n", - " <td>220845</td>\n", - " <td>65.0000</td>\n", + " <th>335</th>\n", + " <td>336</td>\n", + " <td>0</td>\n", + " <td>3</td>\n", + " <td>Denkoff, Mr. Mitto</td>\n", + " <td>male</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>349225</td>\n", + " <td>7.8958</td>\n", " <td>NaN</td>\n", " <td>S</td>\n", " </tr>\n", " <tr>\n", - " <th>617</th>\n", - " <td>618</td>\n", + " <th>623</th>\n", + " <td>624</td>\n", " <td>0</td>\n", " <td>3</td>\n", - " <td>Lobb, Mrs. William Arthur (Cordelia K Stanlick)</td>\n", - " <td>female</td>\n", - " <td>26.0</td>\n", - " <td>1</td>\n", + " <td>Hansen, Mr. Henry Damsgaard</td>\n", + " <td>male</td>\n", + " <td>21.0</td>\n", + " <td>0</td>\n", " <td>0</td>\n", - " <td>A/5. 3336</td>\n", - " <td>16.1000</td>\n", + " <td>350029</td>\n", + " <td>7.8542</td>\n", " <td>NaN</td>\n", " <td>S</td>\n", " </tr>\n", " <tr>\n", - " <th>666</th>\n", - " <td>667</td>\n", + " <th>674</th>\n", + " <td>675</td>\n", " <td>0</td>\n", " <td>2</td>\n", - " <td>Butler, Mr. Reginald Fenton</td>\n", + " <td>Watson, Mr. Ennis Hastings</td>\n", " <td>male</td>\n", - " <td>25.0</td>\n", + " <td>NaN</td>\n", " <td>0</td>\n", " <td>0</td>\n", - " <td>234686</td>\n", - " <td>13.0000</td>\n", + " <td>239856</td>\n", + " <td>0.0000</td>\n", " <td>NaN</td>\n", " <td>S</td>\n", " </tr>\n", " <tr>\n", - " <th>735</th>\n", - " <td>736</td>\n", + " <th>676</th>\n", + " <td>677</td>\n", " <td>0</td>\n", " <td>3</td>\n", - " <td>Williams, Mr. Leslie</td>\n", + " <td>Sawyer, Mr. Frederick Charles</td>\n", " <td>male</td>\n", - " <td>28.5</td>\n", + " <td>24.5</td>\n", " <td>0</td>\n", " <td>0</td>\n", - " <td>54636</td>\n", - " <td>16.1000</td>\n", + " <td>342826</td>\n", + " <td>8.0500</td>\n", " <td>NaN</td>\n", " <td>S</td>\n", " </tr>\n", " <tr>\n", - " <th>839</th>\n", - " <td>840</td>\n", - " <td>1</td>\n", + " <th>692</th>\n", + " <td>693</td>\n", " <td>1</td>\n", - " <td>Marechal, Mr. Pierre</td>\n", + " <td>3</td>\n", + " <td>Lam, Mr. Ali</td>\n", " <td>male</td>\n", " <td>NaN</td>\n", " <td>0</td>\n", " <td>0</td>\n", - " <td>11774</td>\n", - " <td>29.7000</td>\n", - " <td>C47</td>\n", - " <td>C</td>\n", + " <td>1601</td>\n", + " <td>56.4958</td>\n", + " <td>NaN</td>\n", + " <td>S</td>\n", " </tr>\n", " </tbody>\n", "</table>\n", @@ -6097,43 +5717,43 @@ ], "text/plain": [ " PassengerId Survived Pclass \\\n", - "79 80 1 3 \n", - "173 174 0 3 \n", - "354 355 0 3 \n", - "495 496 0 3 \n", - "614 615 0 3 \n", - "615 616 1 2 \n", - "617 618 0 3 \n", - "666 667 0 2 \n", - "735 736 0 3 \n", - "839 840 1 1 \n", - "\n", - " Name Sex Age SibSp \\\n", - "79 Dowdell, Miss. Elizabeth female 30.0 0 \n", - "173 Sivola, Mr. Antti Wilhelm male 21.0 0 \n", - "354 Yousif, Mr. Wazli male NaN 0 \n", - "495 Yousseff, Mr. Gerious male NaN 0 \n", - "614 Brocklebank, Mr. William Alfred male 35.0 0 \n", - "615 Herman, Miss. Alice female 24.0 1 \n", - "617 Lobb, Mrs. William Arthur (Cordelia K Stanlick) female 26.0 1 \n", - "666 Butler, Mr. Reginald Fenton male 25.0 0 \n", - "735 Williams, Mr. Leslie male 28.5 0 \n", - "839 Marechal, Mr. Pierre male NaN 0 \n", - "\n", - " Parch Ticket Fare Cabin Embarked \n", - "79 0 364516 12.4750 NaN S \n", - "173 0 STON/O 2. 3101280 7.9250 NaN S \n", - "354 0 2647 7.2250 NaN C \n", - "495 0 2627 14.4583 NaN C \n", - "614 0 364512 8.0500 NaN S \n", - "615 2 220845 65.0000 NaN S \n", - "617 0 A/5. 3336 16.1000 NaN S \n", - "666 0 234686 13.0000 NaN S \n", - "735 0 54636 16.1000 NaN S \n", - "839 0 11774 29.7000 C47 C " + "62 63 0 1 \n", + "137 138 0 1 \n", + "165 166 1 3 \n", + "201 202 0 3 \n", + "261 262 1 3 \n", + "335 336 0 3 \n", + "623 624 0 3 \n", + "674 675 0 2 \n", + "676 677 0 3 \n", + "692 693 1 3 \n", + "\n", + " Name Sex Age SibSp \\\n", + "62 Harris, Mr. Henry Birkhardt male 45.0 1 \n", + "137 Futrelle, Mr. Jacques Heath male 37.0 1 \n", + "165 Goldsmith, Master. Frank John William \"Frankie\" male 9.0 0 \n", + "201 Sage, Mr. Frederick male NaN 8 \n", + "261 Asplund, Master. Edvin Rojj Felix male 3.0 4 \n", + "335 Denkoff, Mr. Mitto male NaN 0 \n", + "623 Hansen, Mr. Henry Damsgaard male 21.0 0 \n", + "674 Watson, Mr. Ennis Hastings male NaN 0 \n", + "676 Sawyer, Mr. Frederick Charles male 24.5 0 \n", + "692 Lam, Mr. Ali male NaN 0 \n", + "\n", + " Parch Ticket Fare Cabin Embarked \n", + "62 0 36973 83.4750 C83 S \n", + "137 0 113803 53.1000 C123 S \n", + "165 2 363291 20.5250 NaN S \n", + "201 2 CA. 2343 69.5500 NaN S \n", + "261 2 347077 31.3875 NaN S \n", + "335 0 349225 7.8958 NaN S \n", + "623 0 350029 7.8542 NaN S \n", + "674 0 239856 0.0000 NaN S \n", + "676 0 342826 8.0500 NaN S \n", + "692 0 1601 56.4958 NaN S " ] }, - "execution_count": 95, + "execution_count": 249, "metadata": {}, "output_type": "execute_result" } @@ -6144,7 +5764,7 @@ }, { "cell_type": "markdown", - "id": "apart-glossary", + "id": "egyptian-orlando", "metadata": {}, "source": [ "### drop_duplicates\n", @@ -6156,8 +5776,8 @@ }, { "cell_type": "code", - "execution_count": 99, - "id": "optional-surfing", + "execution_count": 250, + "id": "extended-usage", "metadata": {}, "outputs": [ { @@ -6230,7 +5850,7 @@ "4 Indomie pack 5.0" ] }, - "execution_count": 99, + "execution_count": 250, "metadata": {}, "output_type": "execute_result" } @@ -6246,7 +5866,7 @@ }, { "cell_type": "markdown", - "id": "bulgarian-improvement", + "id": "exotic-charter", "metadata": {}, "source": [ "By default, it removes duplicate rows based on all columns:" @@ -6254,8 +5874,8 @@ }, { "cell_type": "code", - "execution_count": 100, - "id": "becoming-carbon", + "execution_count": 251, + "id": "administrative-partition", "metadata": {}, "outputs": [ { @@ -6321,7 +5941,7 @@ "4 Indomie pack 5.0" ] }, - "execution_count": 100, + "execution_count": 251, "metadata": {}, "output_type": "execute_result" } @@ -6332,7 +5952,7 @@ }, { "cell_type": "markdown", - "id": "supreme-master", + "id": "young-thomas", "metadata": {}, "source": [ "To remove duplicates on specific column(s), use subset:" @@ -6340,8 +5960,8 @@ }, { "cell_type": "code", - "execution_count": 101, - "id": "social-pottery", + "execution_count": 252, + "id": "english-parallel", "metadata": {}, "outputs": [ { @@ -6393,7 +6013,7 @@ "2 Indomie cup 3.5" ] }, - "execution_count": 101, + "execution_count": 252, "metadata": {}, "output_type": "execute_result" } @@ -6404,7 +6024,7 @@ }, { "cell_type": "markdown", - "id": "guided-feeling", + "id": "amber-wesley", "metadata": {}, "source": [ "To remove duplicates and keep last occurrences, use keep:" @@ -6412,8 +6032,8 @@ }, { "cell_type": "code", - "execution_count": 103, - "id": "incoming-equipment", + "execution_count": 253, + "id": "corresponding-owner", "metadata": {}, "outputs": [ { @@ -6472,7 +6092,7 @@ "4 Indomie pack 5.0" ] }, - "execution_count": 103, + "execution_count": 253, "metadata": {}, "output_type": "execute_result" } @@ -6483,7 +6103,7 @@ }, { "cell_type": "markdown", - "id": "vulnerable-hartford", + "id": "precious-surface", "metadata": {}, "source": [ "## Group data" @@ -6491,8 +6111,8 @@ }, { "cell_type": "code", - "execution_count": 73, - "id": "verified-conservative", + "execution_count": 254, + "id": "serial-omaha", "metadata": {}, "outputs": [ { @@ -6555,8 +6175,8 @@ }, { "cell_type": "code", - "execution_count": 74, - "id": "alternate-pepper", + "execution_count": 255, + "id": "exclusive-madison", "metadata": {}, "outputs": [ { @@ -6639,7 +6259,7 @@ }, { "cell_type": "markdown", - "id": "toxic-madagascar", + "id": "acknowledged-vegetable", "metadata": {}, "source": [ "## Table Concatenation/Merging\n", @@ -6650,8 +6270,8 @@ }, { "cell_type": "code", - "execution_count": 104, - "id": "assumed-driving", + "execution_count": 256, + "id": "institutional-promotion", "metadata": {}, "outputs": [], "source": [ @@ -6663,8 +6283,8 @@ }, { "cell_type": "code", - "execution_count": 105, - "id": "artificial-senegal", + "execution_count": 257, + "id": "upset-joyce", "metadata": {}, "outputs": [ { @@ -6719,7 +6339,7 @@ "2 3 HORSE" ] }, - "execution_count": 105, + "execution_count": 257, "metadata": {}, "output_type": "execute_result" } @@ -6730,8 +6350,8 @@ }, { "cell_type": "code", - "execution_count": 106, - "id": "adjustable-hamburg", + "execution_count": 258, + "id": "hidden-attitude", "metadata": {}, "outputs": [ { @@ -6786,7 +6406,7 @@ "2 1 45" ] }, - "execution_count": 106, + "execution_count": 258, "metadata": {}, "output_type": "execute_result" } @@ -6797,8 +6417,8 @@ }, { "cell_type": "code", - "execution_count": 107, - "id": "focal-wrist", + "execution_count": 259, + "id": "separated-extreme", "metadata": {}, "outputs": [ { @@ -6857,7 +6477,7 @@ "2 3 HORSE 33" ] }, - "execution_count": 107, + "execution_count": 259, "metadata": {}, "output_type": "execute_result" } @@ -6868,8 +6488,8 @@ }, { "cell_type": "code", - "execution_count": 108, - "id": "loved-raise", + "execution_count": 260, + "id": "impressed-copper", "metadata": {}, "outputs": [ { @@ -6924,7 +6544,7 @@ "2 1 45" ] }, - "execution_count": 108, + "execution_count": 260, "metadata": {}, "output_type": "execute_result" } @@ -6937,8 +6557,8 @@ }, { "cell_type": "code", - "execution_count": 109, - "id": "finished-profile", + "execution_count": 261, + "id": "identified-posting", "metadata": {}, "outputs": [ { @@ -7001,7 +6621,7 @@ "2 3 HORSE 3 33" ] }, - "execution_count": 109, + "execution_count": 261, "metadata": {}, "output_type": "execute_result" } @@ -7012,7 +6632,7 @@ }, { "cell_type": "markdown", - "id": "digital-blowing", + "id": "homeless-arlington", "metadata": {}, "source": [ "### Effect of *how* parameter" @@ -7020,8 +6640,8 @@ }, { "cell_type": "code", - "execution_count": 110, - "id": "olive-punch", + "execution_count": 262, + "id": "logical-alfred", "metadata": {}, "outputs": [ { @@ -7082,7 +6702,7 @@ "3 42 MONKEY" ] }, - "execution_count": 110, + "execution_count": 262, "metadata": {}, "output_type": "execute_result" } @@ -7095,8 +6715,8 @@ }, { "cell_type": "code", - "execution_count": 111, - "id": "attached-jimmy", + "execution_count": 263, + "id": "progressive-blogger", "metadata": {}, "outputs": [ { @@ -7157,7 +6777,7 @@ "3 35 100" ] }, - "execution_count": 111, + "execution_count": 263, "metadata": {}, "output_type": "execute_result" } @@ -7170,8 +6790,8 @@ }, { "cell_type": "code", - "execution_count": 112, - "id": "charged-tragedy", + "execution_count": 264, + "id": "stock-attachment", "metadata": {}, "outputs": [ { @@ -7242,7 +6862,7 @@ "3 42 MONKEY NaN NaN" ] }, - "execution_count": 112, + "execution_count": 264, "metadata": {}, "output_type": "execute_result" } @@ -7253,8 +6873,8 @@ }, { "cell_type": "code", - "execution_count": 113, - "id": "encouraging-speaking", + "execution_count": 265, + "id": "equivalent-conservative", "metadata": {}, "outputs": [ { @@ -7325,7 +6945,7 @@ "3 NaN NaN 35 100" ] }, - "execution_count": 113, + "execution_count": 265, "metadata": {}, "output_type": "execute_result" } @@ -7336,8 +6956,8 @@ }, { "cell_type": "code", - "execution_count": 114, - "id": "acquired-magnitude", + "execution_count": 266, + "id": "seasonal-publisher", "metadata": {}, "outputs": [ { @@ -7400,7 +7020,7 @@ "2 3 HORSE 3 33" ] }, - "execution_count": 114, + "execution_count": 266, "metadata": {}, "output_type": "execute_result" } @@ -7411,8 +7031,8 @@ }, { "cell_type": "code", - "execution_count": 115, - "id": "imported-candle", + "execution_count": 267, + "id": "neural-christianity", "metadata": {}, "outputs": [ { @@ -7491,7 +7111,7 @@ "4 NaN NaN 35.0 100.0" ] }, - "execution_count": 115, + "execution_count": 267, "metadata": {}, "output_type": "execute_result" } @@ -7502,7 +7122,7 @@ }, { "cell_type": "markdown", - "id": "looking-price", + "id": "ranging-northern", "metadata": {}, "source": [ "## Crosstab\n", @@ -7514,8 +7134,8 @@ }, { "cell_type": "code", - "execution_count": 116, - "id": "determined-compromise", + "execution_count": 268, + "id": "appropriate-astrology", "metadata": {}, "outputs": [ { @@ -7640,7 +7260,7 @@ "[88 rows x 3 columns]" ] }, - "execution_count": 116, + "execution_count": 268, "metadata": {}, "output_type": "execute_result" } @@ -7651,7 +7271,7 @@ }, { "cell_type": "markdown", - "id": "differential-solomon", + "id": "unsigned-coaching", "metadata": {}, "source": [ "## Saving data\n", @@ -7673,7 +7293,169 @@ }, { "cell_type": "markdown", - "id": "photographic-citizen", + "id": "maritime-bandwidth", + "metadata": {}, + "source": [ + "## Copy warning\n", + "\n", + "As in numpy, you have to be careful when modifying your data to not affect other linked dataframe.\n", + "\n", + "You can use `.copy` for the data to be a copy, and not a \"view\" or a linked dataframe." + ] + }, + { + "cell_type": "markdown", + "id": "empty-helicopter", + "metadata": {}, + "source": [ + "This affects `df1`:" + ] + }, + { + "cell_type": "code", + "execution_count": 269, + "id": "corresponding-natural", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>0</th>\n", + " <th>1</th>\n", + " <th>2</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>1</td>\n", + " <td>2</td>\n", + " <td>3</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>4</td>\n", + " <td>42</td>\n", + " <td>6</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "</div>" + ], + "text/plain": [ + " 0 1 2\n", + "0 1 2 3\n", + "1 4 42 6" + ] + }, + "execution_count": 269, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df1 = pd.DataFrame([[1,2,3],[4,5,6]])\n", + "df2 = df1\n", + "df2.iloc[1,1] = 42\n", + "df1" + ] + }, + { + "cell_type": "markdown", + "id": "upper-october", + "metadata": {}, + "source": [ + "This doesn't:" + ] + }, + { + "cell_type": "code", + "execution_count": 270, + "id": "stunning-retrieval", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>0</th>\n", + " <th>1</th>\n", + " <th>2</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>1</td>\n", + " <td>2</td>\n", + " <td>3</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>4</td>\n", + " <td>5</td>\n", + " <td>6</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "</div>" + ], + "text/plain": [ + " 0 1 2\n", + "0 1 2 3\n", + "1 4 5 6" + ] + }, + "execution_count": 270, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df1 = pd.DataFrame([[1,2,3],[4,5,6]])\n", + "df2 = df1.copy()\n", + "df2.iloc[1,1] = 12\n", + "df1" + ] + }, + { + "cell_type": "markdown", + "id": "banner-communication", "metadata": {}, "source": [ "# Teasing\n", @@ -7683,8 +7465,8 @@ }, { "cell_type": "code", - "execution_count": 85, - "id": "martial-lover", + "execution_count": 271, + "id": "relevant-sentence", "metadata": {}, "outputs": [ { @@ -7693,7 +7475,7 @@ "<AxesSubplot:>" ] }, - "execution_count": 85, + "execution_count": 271, "metadata": {}, "output_type": "execute_result" }, @@ -7716,7 +7498,7 @@ }, { "cell_type": "markdown", - "id": "pointed-transport", + "id": "coral-visit", "metadata": {}, "source": [ "# And so much more ...\n", @@ -7735,9 +7517,9 @@ ], "metadata": { "kernelspec": { - "display_name": "Python [conda env:dev]", + "display_name": "dev", "language": "python", - "name": "conda-env-dev-py" + "name": "dev" }, "language_info": { "codemirror_mode": { diff --git a/notebooks/seaborn_TP.ipynb b/notebooks/seaborn_TP.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..261262494107dd357ae6428c0f1810f57ce567a2 --- /dev/null +++ b/notebooks/seaborn_TP.ipynb @@ -0,0 +1,52 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "mature-savannah", + "metadata": {}, + "source": [ + "# <center>**TP**</center>\n", + "\n", + "<div style=\"text-align:center\">\n", + " <img src=\"images/seaborn.png\" width=\"600px\">\n", + " <div>\n", + " Bertrand Néron, François Laurent, Etienne Kornobis\n", + " <br />\n", + " <a src=\" https://research.pasteur.fr/en/team/bioinformatics-and-biostatistics-hub/\">Bioinformatics and Biostatistiqucs HUB</a>\n", + " <br />\n", + " © Institut Pasteur, 2021\n", + " </div> \n", + "</div>" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "funded-balance", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "dev", + "language": "python", + "name": "dev" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.5" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/notebooks/seaborn_cours.ipynb b/notebooks/seaborn_cours.ipynb new file mode 100644 index 0000000000000000000000000000000000000000..2ab73fa8dcf00541680ddc69b10f6081115052f8 --- /dev/null +++ b/notebooks/seaborn_cours.ipynb @@ -0,0 +1,624 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "dominican-gibraltar", + "metadata": {}, + "source": [ + "# <center>**Cours**</center>\n", + "\n", + "<div style=\"text-align:center\">\n", + " <img src=\"images/seaborn.png\" width=\"600px\">\n", + " <div>\n", + " Bertrand Néron, François Laurent, Etienne Kornobis\n", + " <br />\n", + " <a src=\" https://research.pasteur.fr/en/team/bioinformatics-and-biostatistics-hub/\">Bioinformatics and Biostatistiqucs HUB</a>\n", + " <br />\n", + " © Institut Pasteur, 2021\n", + " </div> \n", + "</div>" + ] + }, + { + "cell_type": "markdown", + "id": "attractive-turner", + "metadata": {}, + "source": [ + "# A glimpse at Seaborn" + ] + }, + { + "cell_type": "markdown", + "id": "opponent-species", + "metadata": {}, + "source": [ + "Seaborn is a Python data visualization library based on matplotlib. It provides a high-level interface for drawing attractive and informative statistical graphics.\n", + "\n", + "It is organized depending on the type of data you want to represent:" + ] + }, + { + "cell_type": "markdown", + "id": "cooked-radiation", + "metadata": {}, + "source": [ + "<img src=\"images/seaborn_plots.png\" width=\"600px\">" + ] + }, + { + "cell_type": "markdown", + "id": "quiet-sensitivity", + "metadata": {}, + "source": [ + "You can use the `relplot`, `displot`, `catplot` group functions or directly call the function corresponding to a specific plot." + ] + }, + { + "cell_type": "code", + "execution_count": 78, + "id": "involved-genetics", + "metadata": {}, + "outputs": [], + "source": [ + "import pandas as pd\n", + "import numpy as np\n", + "import seaborn as sns\n", + "import matplotlib.pyplot as plt" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "generic-commercial", + "metadata": {}, + "outputs": [], + "source": [ + "df = pd.read_csv(\"data/titanic.csv\")" + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "id": "controversial-simpson", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>PassengerId</th>\n", + " <th>Survived</th>\n", + " <th>Pclass</th>\n", + " <th>Name</th>\n", + " <th>Sex</th>\n", + " <th>Age</th>\n", + " <th>SibSp</th>\n", + " <th>Parch</th>\n", + " <th>Ticket</th>\n", + " <th>Fare</th>\n", + " <th>Cabin</th>\n", + " <th>Embarked</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>0</th>\n", + " <td>1</td>\n", + " <td>0</td>\n", + " <td>3</td>\n", + " <td>Braund, Mr. Owen Harris</td>\n", + " <td>male</td>\n", + " <td>22.0</td>\n", + " <td>1</td>\n", + " <td>0</td>\n", + " <td>A/5 21171</td>\n", + " <td>7.2500</td>\n", + " <td>NaN</td>\n", + " <td>S</td>\n", + " </tr>\n", + " <tr>\n", + " <th>1</th>\n", + " <td>2</td>\n", + " <td>1</td>\n", + " <td>1</td>\n", + " <td>Cumings, Mrs. John Bradley (Florence Briggs Th...</td>\n", + " <td>female</td>\n", + " <td>38.0</td>\n", + " <td>1</td>\n", + " <td>0</td>\n", + " <td>PC 17599</td>\n", + " <td>71.2833</td>\n", + " <td>C85</td>\n", + " <td>C</td>\n", + " </tr>\n", + " <tr>\n", + " <th>2</th>\n", + " <td>3</td>\n", + " <td>1</td>\n", + " <td>3</td>\n", + " <td>Heikkinen, Miss. Laina</td>\n", + " <td>female</td>\n", + " <td>26.0</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>STON/O2. 3101282</td>\n", + " <td>7.9250</td>\n", + " <td>NaN</td>\n", + " <td>S</td>\n", + " </tr>\n", + " <tr>\n", + " <th>3</th>\n", + " <td>4</td>\n", + " <td>1</td>\n", + " <td>1</td>\n", + " <td>Futrelle, Mrs. Jacques Heath (Lily May Peel)</td>\n", + " <td>female</td>\n", + " <td>35.0</td>\n", + " <td>1</td>\n", + " <td>0</td>\n", + " <td>113803</td>\n", + " <td>53.1000</td>\n", + " <td>C123</td>\n", + " <td>S</td>\n", + " </tr>\n", + " <tr>\n", + " <th>4</th>\n", + " <td>5</td>\n", + " <td>0</td>\n", + " <td>3</td>\n", + " <td>Allen, Mr. William Henry</td>\n", + " <td>male</td>\n", + " <td>35.0</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>373450</td>\n", + " <td>8.0500</td>\n", + " <td>NaN</td>\n", + " <td>S</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "</div>" + ], + "text/plain": [ + " PassengerId Survived Pclass \\\n", + "0 1 0 3 \n", + "1 2 1 1 \n", + "2 3 1 3 \n", + "3 4 1 1 \n", + "4 5 0 3 \n", + "\n", + " Name Sex Age SibSp \\\n", + "0 Braund, Mr. Owen Harris male 22.0 1 \n", + "1 Cumings, Mrs. John Bradley (Florence Briggs Th... female 38.0 1 \n", + "2 Heikkinen, Miss. Laina female 26.0 0 \n", + "3 Futrelle, Mrs. Jacques Heath (Lily May Peel) female 35.0 1 \n", + "4 Allen, Mr. William Henry male 35.0 0 \n", + "\n", + " Parch Ticket Fare Cabin Embarked \n", + "0 0 A/5 21171 7.2500 NaN S \n", + "1 0 PC 17599 71.2833 C85 C \n", + "2 0 STON/O2. 3101282 7.9250 NaN S \n", + "3 0 113803 53.1000 C123 S \n", + "4 0 373450 8.0500 NaN S " + ] + }, + "execution_count": 28, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df.head()" + ] + }, + { + "cell_type": "markdown", + "id": "focused-triple", + "metadata": {}, + "source": [ + "## Histogram\n", + "\n", + "A histogram is displaying a frequency distribution of continuous data using bars" + ] + }, + { + "cell_type": "code", + "execution_count": 42, + "id": "comparative-bracelet", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "<seaborn.axisgrid.FacetGrid at 0x7f320e7b99a0>" + ] + }, + "execution_count": 42, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<Figure size 411.875x360 with 1 Axes>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "sns.displot(data=df, x=\"Age\", hue=\"Survived\")" + ] + }, + { + "cell_type": "code", + "execution_count": 53, + "id": "continued-badge", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "<seaborn.axisgrid.FacetGrid at 0x7f320e035c70>" + ] + }, + "execution_count": 53, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<Figure size 411.875x360 with 1 Axes>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "sns.displot(data=df, x=\"Age\", hue=\"Survived\", bins=50)" + ] + }, + { + "cell_type": "markdown", + "id": "loaded-immigration", + "metadata": {}, + "source": [ + "Here is the corresponding continuous probability density curve:" + ] + }, + { + "cell_type": "code", + "execution_count": 55, + "id": "happy-montana", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "<seaborn.axisgrid.FacetGrid at 0x7f320dcbdfa0>" + ] + }, + "execution_count": 55, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<Figure size 411.875x360 with 1 Axes>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "sns.displot(data=df, x=\"Age\", hue=\"Survived\", kind=\"kde\")" + ] + }, + { + "cell_type": "code", + "execution_count": 54, + "id": "criminal-digit", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "<seaborn.axisgrid.FacetGrid at 0x7f320dd68100>" + ] + }, + "execution_count": 54, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAZoAAAFgCAYAAACCD78cAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjQuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8rg+JYAAAACXBIWXMAAAsTAAALEwEAmpwYAABKwklEQVR4nO3dd3ib1dn48e8tyXvb8YodZ+8dQkIGAcKeCbPMprSFti+lLaGbtyOl89eW0dJSeIES9p4JhYQQEgghk+w9HTuJ95K3pfP7QzI1IUO29UiydH+uS5es8ZxzO5F9+znPOfcRYwxKKaWUVWzBDkAppVR400SjlFLKUppolFJKWUoTjVJKKUtpolFKKWUpR7AD8MVFF11k3n333WCHoZRSvpBgBxBqesQZTXl5ebBDUEop1UU9ItEopZTquTTRKKWUspQmGqWUUpbSRKOUUspSmmiUUkpZShONUkopS2miUUopZSlNNEoppSyliUYppZSlNNEopZSylCYapZRSltJEo5RSylKaaJRSSllKE00E6VPQFxHp9K1PQd9gh66U6sF6xH40yj+KDhVy36KdnT5u7gVDLYhGKRUp9IxGKaWUpTTRKKWUspQmGqWUUpbSRKOUUspSliYaEUkVkVdEZIeIbBeRKSKSLiKLRWS39z7NyhiUUkoFl9VnNA8C7xpjhgFjge3AT4ElxpjBwBLvY6WUUmHKskQjIsnADOBxAGNMizGmGpgFzPe+bT4w26oYlFJKBZ+VZzQDgDLg3yLymYg8JiIJQLYx5giA9z7reAeLyO0islZE1paVlVkYplJKKStZmWgcwATgYWPMeKCeTgyTGWMeNcZMNMZMzMzMtCpGpZRSFrMy0RQBRcaYVd7Hr+BJPCUikgvgvS+1MAallFJBZlmiMcYcBQ6JSHv9knOBbcBbwBzvc3OAN62KQSmlVPBZXevsTuBZEYkG9gG34kluL4nIN4BC4FqLY1BKKRVEliYaY8wGYOJxXjrXyn6VUkqFDq0MoJRSylKaaJRSSllKE41SSilLaaJRSillKU00SimlLKWJRimllKU00SillLKUJhqllFKW0kSjlFLKUppolFJKWUoTjVJKKUtpolFKKWUpTTRKKaUspYlGKaWUpTTRKKWUspQmGqWUUpbSRKOUUspSmmiUUkpZytKtnFXP1NLm5mhtE02tLtLio8HmQEQ61UZ+nwIOFR60KEKlVE+iiUZ9zuU2fLqvgk1FNbS43J8/3/u2f3Hp1LEMy0nyOeHMvWCoVWEqpXoYTTQKgKZWF29vPMzhmiaGZCUyoncy8dEOypzNLPhgD4u2lbC/vJ7zhmcT7dARV6WU7/Q3hsLlNizcfISjtU1cODKbi0fn0jcjgcykGEbkJnN0/g+YNiiDPaVO3thQTEub+9SNKqWUlyYaxce7yymqauS84dkMy0k+7nsm9k3n4tE5HK1t4u2Nh3G5TYCjVEr1VJpoItyRmkY2FFUzNj+F4bnHTzLtBmclccHwbIqqG1m+qyxAESqlejpNNBHMbQwf7CglMcbB1IG9fDpmWG4ypxWksam4hp1H6yyOUCkVDjTRRLDdJU7KnS2cObhXpy7wTx2YQU5yLEt3llLX1GphhEqpcKCJJkIZY1h9oJKMhGgGZyV26libTbhwZDYut+eMyBi9XqOUOjFNNBFqb1k9lfUtTOqf3unFmACp8dFMGZDBgYoG9pXXWxChUipcaKKJUJuKqkmKdTCok2czHY3tk0pGYjTLdpXR5tIpz0qp49NEE4GqGlo4VNXIqN4p2LpwNtPObhPOGpxJXVMbm4pr/BihUiqcaKKJQFuKa7AJjOx98unMvuiTHk9BejxrDlTS3ObyQ3RKqXCjiSbCuI1hx9E6+mUkkBDjnwpEUwdm0NTq5rPCar+0p5QKL5poeqA+BX0RkU7fAA5XN9LQ4mJoTpLf4slOjmVQViLrC6toaGnzW7tKqfCgRTV7oKJDhdy3aGenj5t7wVB2ltQRZRf690rwa0xTBmSwt9TJ2oNVzBic6de2lVI9m57RRBKbnT2lTvr3SiDK7t//+vSEaIblJLGluIamVr1Wo5T6L000ESQmfwRNrW4GZ/lv2KyjCX3TaHUZnYGmlPoCTTQRJG7g6dhFKEiPt6T9Xokx9M2IZ+OharDrqKxSykMTTQSJH3g6eWlxlm5cNqEgjYYWF4kjz7GsD6VUz6J/dkaI6oYWojL6+H0SwLH6pMWRmRhDy+lX4nYbbLauLwhVSoUHS89oROSAiGwWkQ0istb7XLqILBaR3d77NCtjUB4HKhoA6JdhzbBZOxFhQt9UonsVsHRnqaV9KaV6hkAMnZ1jjBlnjJnoffxTYIkxZjCwxPtYWaywsoHWysOkxkdb3tfgrCTa6ip4+tODlvellAp9wbhGMwuY7/16PjA7CDFEFLfbUFzVSNPBjQHpz24TnJveY9muMg5VNgSkT6VU6LI60RhgkYisE5Hbvc9lG2OOAHjvs453oIjcLiJrRWRtWZluG9wdJXVNtLjcNBUGJtEAODcuQoDnVxcGrE+lVGiyOtFMM8ZMAC4G7hCRGb4eaIx51Bgz0RgzMTNTV5p3x6GqRgCaDm4KWJ+uunJmDsvmpbVFtLTpFgJKRTJLE40x5rD3vhR4HZgElIhILoD3Xq8YW+xQZQO9EqNxN9YGtN+bJhdQ7mxm8baSgParlAotliUaEUkQkaT2r4ELgC3AW8Ac79vmAG9aFYMCl9twtKaJ/FRrZ5sdz4whmeSlxvHsKp0UoFQks3IdTTbwurdqsAN4zhjzroisAV4SkW8AhcC1FsYQ8crqmmlzG3qnxga2Y7HhsNtIPuNais+aQ1R6Hm1Vh095WH6fAg4VamJSKpxYlmiMMfuAscd5vgI416p+1RcdrvZcn+mdGhfYjo2b+xbtpL65jcc/3s/s37/M1IG9TnnY3AuGBiA4pVQgaQmaMHe4ppGUuCi/bXLWWQkxDgoy4tlxtA5jTFBiUEoFlyaaMGaM4XB1U+CHzY4xPCeZuqY2iryz35RSkUUTTRirbmylsdVF75QAD5sdY2BmAtEOG9uPBHbWm1IqNGiiCWMlNU0A5KQE94zGYbcxJCuRPWVOXVOjVATSRBPGSuqacdiE9ATr65udyrDcZFpdhj1lzmCHopQKME00YayktomspBhsEvxS/b1TYkmJi9LhM6UikCaaMOV2G8rqmslKDu6wWTsRYXhOEkVVjdQ1tQY7HKVUAGmiCVOVDS20uQ3ZyTHBDuVzQ3KSANhdqsNnSkUSTTRhqqTWMxEgOyk0zmgA0uKjyUyKYVdJXbBDUUoFkCaaMFVa20y03UZqfFSwQ/mCIdmJlNQ2U9Oow2dKRQpNNGGqpM4zEUBCYCJAR0OyPMNnelajVOTQRBOGXG5DubOFrBC6PtMuOS6K3JRYTTRKRRBNNGGoor4Zl9uQHSIzzo41JDuJcmcLlfUtwQ5FKRUAmmjCUGltMwBZSaF3RgMwOCsR0OEzpSKFJpowVFLbRIzDRkpcaE0EaJcQ4yA/LY5dJVrRWalIoIkmDJXWNZOVHHoTAToakp1EVUMr5U4dPlMq3GmiCTOeiQDNZIXQ+pnjGZSZiE1gpw6fKRX2NNGEmcr6FtwGMhND8/pMu7hoO33S43X4TKkIoIkmzFTUeyYC9EoMfsXmUxmSnURdUxsl3skLSqnwpIkmzJQ7W7AJpMaHfqIZ2CsBm8DuUh0+UyqcaaIJM+XOZtITorHbQnciQLuYKDsF6fHsLnXq8JlSYUwTTZipcLbQK8Svz3Q0OEuHz5QKd5powkhTqwtncxsZPeD6TLsBmTp8plS400QTRiq8a1J60hlNrA6fKRX2NNGEkXKnd8ZZQs9JNNBh+KxOh8+UCkeaaMJIubOZGIeNhBh7sEPplM+Hz3TxplJhSRNNGKmo90wECOXSM8cTG+VZvKlbPCsVnjTRhAljPKVnesJCzeMZnJVIXVMb0TmDgx2KUsrPNNGEidqmNlpdhoweNBGgo4He2mfxw6YHOxSllJ85gh2A8o/PJwL00DOa9uGzlqHTMMb0uOE/pdSJ6RlNmGif2pzRw2acdTQ4KxFHag6bi2uCHYpSyo800YSJcmczKXFRRDt67n/pwMxEjKuNhZuPBDsUpZQf9dzfSuoLKutbSE/omcNm7WKj7DQd3MA7m4/o4k2lwogmmjDgNobqhlbSe0DF5lOp37GCQ5WNbCmuDXYoSik/0UQTBmobW3EZQ1pCVLBD6bbG3Stx2IQFmw8HOxSllJ9oogkDVQ2tAKSFwRmNu8nJ1EG9dPhMqTCiiSYMVNV7Zpyl9fBrNO0uHZ2jw2dKhRFNNGGgsqGFuCg7cVE9q8bZiVwwIge7TXT2mVJhwvJEIyJ2EflMRBZ4H6eLyGIR2e29T7M6hnBXVd8SFtdn2qUlRDNNh8+UChuBOKP5PrC9w+OfAkuMMYOBJd7HqhuqwmTGWUeXjs6hsLKBrYd1+Eypns7SRCMi+cClwGMdnp4FzPd+PR+YbWUM4a6xxUVjqytsrs+00+EzpcKH1Wc0DwA/Btwdnss2xhwB8N5nHe9AEbldRNaKyNqysjKLw+y5qhq8EwHC7IwmLSGaqQMzdPhMqTBgWaIRkcuAUmPMuq4cb4x51Bgz0RgzMTMz08/RhY/2RNPTqwIcz6WjczlYocNnSvV0Vp7RTAOuEJEDwAvATBF5BigRkVwA732phTGEvar6Vuw2ISk2/ApxXzBSh8+UCgeWJRpjzM+MMfnGmH7A9cAHxpibgbeAOd63zQHetCqGSFDZ0EJqfBS2MCyrn67DZ0qFhWCso/kjcL6I7AbO9z5WXVRV3xJ2M846ukSHz5Tq8QKSaIwxHxpjLvN+XWGMOdcYM9h7XxmIGMJRm9tNTVNr2E0E6OhC7/DZOzp8plSPpZUBerCahlaMIawWax5Lh8+U6vk00fRg4VRM82QuGZ3LgYoGth3R4TOleiJNND1YZZiuoTmWDp8p1bNpounBqupbSIxx9Ojtm79EbIjIF24ZiTE4963ngVeXf+m19lufgr7BjlwpdQLht/giglQ1hFcxTQCMm/sW7fzS05uLa/hgRyk/e3UTmUkxX3p97gVDAxGdUqoLwuhP4chijKGqPvyKaZ7IwMwERGB3aV2wQ1FKdZImmh6qvsVFi8sd9tdn2sVHO8hPjWN3iVNnnynVw2ii6aHCbVdNXwzOSqK6sZVyZ0uwQ1FKdYImmh6qfcZZpAydAQzMSkDQ4TOlehpNND1UVX0LUXYhISY8tm/2RXy0g/y0OHaX6vCZUj2JJpoeqqrBU3pGwrCY5skMzkqiukGHz5TqSTTR9FCV9S1huQfNqbQPn+0pdQY7FKWUjzTR9EASFYuzuS1iZpx11D58trOkTofPlOohdMFmDxSVngd0rZjmvHnz/B1OwA3NSeL97aUcrW0iNyUu2OEopU5BE00P5EjPB7o24+xXc87t9DFzVzzX6WOsNDgriQ93lrH9SJ0mGqV6AB0664GiMvIRICU+zMrP+CjaYWNgViK7Supoc7uDHY5S6hQ00fRAUel5JMdF4bBF7n/f8Jwkmtvc7C+vD3YoSqlT8Ok3lYhM8+U5FRhRGX0icsZZR33S40mItrPjiC7eVCrU+XqN5u/ABB+eUxZzuQ2OtN6k9YBhs65OPPD1uNh+43D2HsZvfvfHLvWjlAqMkyYaEZkCTAUyRWRuh5eSgchZkh5CDlc3YouK6RE1zro68cDX48qb7TxbZOOKS8/nqWX/7nRfSqnAONUZTTSQ6H1fUofna4FrrApKndieMs9CxUiqcXYivWJcZMW0sqVOZ54pFcpOmmiMMcuAZSLypDHmYIBiUiex17siviec0QTCqKRGPihPJjp3SLBDUUqdgK/XaGJE5FGgX8djjDEzrQhKndjesnpcDTXERenIJcCQpCaWVySROOaCYIeilDoBXxPNy8C/gMcAl3XhqFPZW+aktaIImBjsUEJCjM0wJLGJLcNnUN/cRkKMrkFWKtT4uhCjzRjzsDFmtTFmXfvN0sjUce0rc9JaWRTsMELKyORGbDHxLNh0ONihKKWOw9dE87aI/I+I5IpIevvN0sjUl1Q3tFDubKFNE80X5Ma00lJ+kOdXHwp2KEr5jYjcIyJbRWSTiGwQkcl+aPMKEfmpn+LzuYS6r+MMc7z3P+rwnAEG+NqR6r69ZZ5V8J6hM9VOBJwbF7GhV192HK1lWE5ysENSqlu8S0suAyYYY5pFpBeeWcC+HOswxrQd7zVjzFvAW/6L1Dc+ndEYY/of56ZJJsD2eqc2a6L5svotHxDjsPHMpzo5UoWFXKDcGNMMYIwpN8YcFpED3qSDiEwUkQ+9X/9aRB4VkUXAUyKySkRGtjcmIh+KyGki8jUReUhEUrxt2byvx4vIIRGJEpGBIvKuiKwTkY9EZJj3Pf1FZKWIrBGRezvzzfhaguarx7t1piPVfXvLnETbbbTVlAQ7lJDjbqrj8rG9eW19MbVNrcEOR6nuWgT0EZFdIvJPETnLh2NOA2YZY24EXgCuAxCRXKB3x+vqxpgaYCPQ3u7lwHvGmFbgUeBOY8xpwA+Bf3rf8yDwsDHmdOBoZ74ZX6/RnN7hdibwa+CKznSkum9vaT39esWDCbGKxcYQ31JOdt1W8mvWkVu7iT7JEvA450zpR0OLi1fX6Rmf6tmMMU48ieN2oAx4UUS+dorD3jLGNHq/fgm41vv1dXhmDh/rReAr3q+v9/aRiKcazMsisgF4BM/ZFcA04Hnv10935vvx6RqNMebOjo9FJKWzHanu21fmZGhOEouDHQggpo3+lSsYUrGEgurVJLRWfOH16+9KounILyiKGcjuuLHsjhuDS6ytzzY6P4XxBak8vfIgc6b0w2YTS/tTykrGGBfwIfChiGzGc628jf+eIMQec0h9h2OLRaRCRMbgSSbfOk4XbwF/8E7sOg34AEgAqo0x404UVle+l64uOmgABnfxWNUFLW1uDlY2cMno3FO/2UI2dyujSt7g9KL5JLeU0OhI4UDqGRxNGkVtTC4t9gQcppn3/t+3uOO6yfRr2sGgps2cVZPI+sSzWJ84A5dYV9Xgq1P6cteLG1mxt5wzB2da1o9SVhKRoYDbGLPb+9Q44CAQhycp/Ae4+hTNvAD8GEgxxmw+9kVjjFNEVuMZElvgTWy1IrJfRK41xrwsIgKMMcZsBFbgOfN5BripM9+PT4lGRN7mv5nMDgzHc2qmAqSwsh6X2zAwKyFoMeTVrOe8vb8nvfEgxcnj+HDAD9mXPh0jX/4YPbKulaHfuh6Mmz4tezmtbinTaxcyuv4T3k/9CoWxQy2J8ZLRufx2wXbmf3JQE43qyRKBv4tIKp6zmD14htGGA4+LyM+BVado4xU8SeRkF+5fxDOsdnaH524CHhaR/wWi8CSsjcD3gedE5PvAq535Znw9o/lLh6/bgIPGGB0ID6A9pZ6z4oGZiQHv22GDaQce4vTip6iNyeWN4fezP22aZ17xqYiNQzGDORQzmPzm3Zxb/QpXV/yLtYln83HyZRjxbymdGIedGyYV8I8P93Cwop6+GcFLzEp1lffC/dTjvPQR8KXCfsaYXx/nuRKO+R1vjHkSeLLD41cAOeY9+4GLjtPefmBKh6d83p/D1+nNy4AdeCo4pwEtvnag/KN9avOAACeaGHcD/7kpnknF89mSPYunxr/A/vTpviWZYxTFDOaZrLvZkDCdic4PuariEaLdjac+sJNumdIXh0144uP9fm9bKdV5vk5vvg5YjWcWw3XAKhHRbQICaG+Zk5zkWBIDWMsrzlXHdWV/Z0ZfO+8N+iXvD7qHNnv3SvK7JJqlqVfzXuoN5DXv5dryh4h1+Xc75uzkWGaNy+OltUVU1evfREoFm6/Tm+8BTjfGzDHGfBWYBPzCurDUsfaW1Qf0+kycq45ryv9JiquCi55pYFv25X5tf1vCJN7MuI301lKurHiEaHeTX9u/7cwBNLa6eHaVLuBUKth8TTQ2Y0xph8cVnThWdZMxhn1lzoBdn4lzObmm/GFSXBW8kXEbSw9YU7D7YOwwFqbPIbO1mFkVj2E3/jv7GJqTxFlDMnnyk4M0t2nBcaWCyddk8a6IvOctX/A1YCHwzskOEJFYEVktIhu9heHmeZ9PF5HFIrLbe5/WvW8h/JU5m6lragtIorGbNq6ofJzUtnLezLiNohhrZ7HvixvFe2k3kdeyj0srn8KfK19unzGAcmczb36mVZ2VCqaTJhoRGSQi04wxP8KzQnQMMBZYiadMwck0AzONMWPxzAG/SETOAH4KLDHGDAaWeB+rk9gbqBlnxnBu9cv0bjnAu+k3csjiJNNuZ/wEPkyZzcCmrdwzw39rbKYOzGBEbjKPLN+L292ldWZKKT841RnNA0AdgDHmNWPMXGPMXXjOZh442YHGo72MdJT3ZoBZwHzv8/OB2V0JPJK0zziz+hrN+PrljGxYzadJF7A7bpylfR1rQ8KZbI87jXlnx1DQtMMvbYoI/3POQPaW1fOfLZ0qzaSUAkTkIhHZKSJ7urO9wKmmMPUzxmw69kljzFoR6edDkHZgHTAI+IcxZpWIZBtjjnjbOSIiWSc49nY8C5QoKCg4VVdhbW+Zk/hoOznJx1ac8J+85r3MqHmT3bGjWZl04ZdenzdvnmV9AyDC+6nX0nZgNZfYn+HZzLnUObq/5dHFo3IZmLmLv3+wm4tH5WhZGtUjid1RhNuV57cGbfZi42rLP2mfnt/f/wDOB4qANSLyljFmW2e7O1WiOdlvtlPOc/WWNBjnXd36uoiM8jUwY8yjeIfnJk6cGNHjHnvL6hmYmYh0Ye2KL6LdjVxU9Sw19gzeS7sR5Msnur+ac26n2py74rlOx9Fmi+GqlxrZ8r0ELqp6jpd7/c9xY+kMu02445xBzH1pI+9vL+GCkTndak+poHC78vr+ZIHf/to7+KfLfuXD2yYBe4wx+wBE5AU8I1KdTjSn+ileIyK3HfukiHwDz5mKT4wx1XiKw10ElHjLVreXry498ZEKYG+pk4GZ1g2bnV3zOomuat5Nv4lWm3VnTb7YU+nmw5TZ5LfsZWz9Cr+0ecXY3vTNiOehpXswJqL/ZlGqM/KAjtvWFnmf67RTJZofALd6N835q/e2DPgmnro3JyQimd4zGUQkDjgPT3WBt/jvjp1zgDe7EnikaGxxUVzdaNlEgEGNGxnZsIbVSedzNLqfJX101rb4SRyIGcaZtQtIaSvvdnsOu43/OXsgm4pqWLarzA8RKhURjjeE0qW/1E6aaIwxJcaYqcA84ID3Ns8YM8UYc6qrq7nAUhHZBKwBFhtjFuCpj3O+iOzGM/bnc72cSLSvvH0igP8TTazLyXnVL1MSlc+qpAv83n6XibA49TrcCOdXveiXfW2uHJ9PXmoc9y/epWc1SvmmCOjT4XE+0KW1Ar7uR7MUWNqZhr2TCMYf5/kKoHMD/hFsT2l7jTP/D51Nr11IjLuR93rdgdvPxS27y+lIY3nKbM6vfpFRDavZknBGt9qLdtj4/nmD+fErm1i0rYQL9VqNUqeyBhgsIv2BYjxbBNzYlYZ0dX+I21vqxCbQv5d/E01OywFGN3zK+sQZVEQFd4+bE9kSP5ni6P5M8ybE7rpqfB4DMhO4b9EuXLquRqmTMsa0Ad8F3gO2Ay8ZY7Z2pa3AVWhUXbKnzEnfjARiHP474xDjZmb1KzhtKXx6nKnMIUOEpSlXcVPZfZxR+y7LUq/sVnMOu4255w/hu899xtsbDzN7vP9miyplKZu92MeZYj6358vbjDHvcIoqMD51190GlLV2lzgZ5OfrM2PqPyG7tZhlKbOCPsvsVMqi89kcfwbj6j8mvbX7iy4vGZXL8Nxk7n9/F62u7l/7USoQjKst3xgjfrudYg2Nv2miCWGtLjf7y+v9mmii3Y1Mqf0PhTGD2RXg1f9d9UnyJbRIDGfXvA7dvJBvswk/unAIBysaeH51oZ8iVEqdjCaaEHawooE2t2GwHxPNROdS4kwDy5Ov6NLmZcHQaE9kZfJF9G3eRd/mE5SnERsi4tPt3OE5NB3cyC9e/JSaxtbAfjNKRSC9RhPC9pTWAfjtjCYnUZjg/JAdceMpiw7omXO3bUqYygTnMqbXLuRgzNAvVwwwbu5btNPn9krrmnhu1UH+uXQPP7tkuJ+jVUp1pGc0Iax9arO/Fmv+8qwYbMbFJ8kX+6W9QHKLg0+SLyGrtZghjRu63V5WUiz1m5fw7xUHKKxo6H6ASqkT0kQTwnaXOslLjSPBD9s3pzYe5LYJUWxOmEKNI9MP0QXejrjxlDl6M632P9hM9zczq/7oaew24U/v+qdatFLq+MJ66KxfQT4HD/k0i+9zffvkcaCwyKKIOudkM846W035kZGf0ZxBaFUA6CyxsSLlEmZXPMaohk/ZlDCtW825nJV8+6yB3P/+Lm49UMnEft2vFq1UuBCRJ4DLgFJjjM8FkY8nrBPNwUPFmA9+36ljZObPLYqmc1xuw94yJ1MHZhz39c5UU05pK+fakoXc90kL9v7J/goxKPbHjKA4uj+TaxezNX4yLuneR/i2Gf15fnUh9y7czuvfmarbCKiQFGWXojZ31wpaHo/DRnGry5zqQu2TwEPAU93ur7sNKGsUVzXS3Ob2y0SA0+uW4MbOX1e28ONr/RBcMImwMukirql4mJENq7p9VhMf7eBHFw7l7pc38saGYq6a0LMmSajI0OYmz/wq2W/bBMi82lMu/jTGLPdl3zFf6DWaELWnzDPjbHB29xJNYlsVIxrWsCVhMked4VF25VDMYA5H9WVi3RK/XKu5cnweY/uk8of/7KC2Sac7K+VvmmhC1O4Sz4yzQZlJ3WpnonMpYFibONMPUYUIEVYlX0CKq4phDWu73ZzNJtw7ayTlzmYeWLzbDwEqpTrSRBOidpc6yUyKISU+qsttxLvqGF3/KdvjT/fLtsih5EDMcEqi8plU9z7ih7OaMfmp3DipgPkrD7DjaK0fIlRKtdNEE6L2lDoZ1M31M2PrP8ZOG2vC6WymnQirks4nzVXOUD+sqwH40YVDSY518Ms3tuqeNUr5kSaaEGSMYU+ps1vXZ+ymhbH1K9gXO5LqqCw/Rhc69saOotyRy6S6xcfdCrCzUuOj+clFw1h9oJI3NnRuWrxS4UZEngdWAkNFpEhEvtHVtnTWWQg6WtuEs7mtWzPORjSsJc5dz7rEs/wYWYgRG6uSzuPSqqe5arh/PsrXTezD82sO8buFOzh3eDbJsV0fulTKXxw2in2ZKdaZ9k71HmPMDf7qT89oQtCOo54ZZ0OzuzgRwLgZ71xOSVQexdED/RhZ6NkdN45KRyb/OyOm25WdwTMx4LezRlFR38x9i3b5IUKluq/VZfy6TYAPa2j8ShNNCNpxxJNohuV0bXFlv+adZLSVsD7x7B5TobmrjNhYk3ge43Ls9Kv+xC9tjs5P4ebJfXlq5QG2FNf4pU2lIpkmmhC082gtuSmxXZ5xNsH5IU5bSo/Zb6a7dsRP4FCNm4lF3V7A/LkfXjiU9IQY7nlji277rFQ3aaIJQTuO1jEsp2vDZumtJfRt3sWGxGm4u1mepadwi4O/rmyhT+16cms3+aXNlLgo/vfS4Ww8VK0bpCnVTZpoQkyry83eMidDuzhsNqZ+BW3Y2RJ/hp8jC22PrW+h0ZHCxGL/ndXMGtebqQMz+H/v7qCsrtlv7SoVaTTRhJh9ZfW0ukyXzmii3M2MaFjD7rhxNNq7V1Ggp6lvhQ251zGochnpDfv80qaI8JtZo2hsdfGHd7b7pU2lIpEmmhDTvip9WG7nE8WwxnXEmCY2Jkz3d1g9wobc62i1xfj1rGZQViLfmjGQ1z4rZuXeCr+1q1Qk0UQTYnYcrcNhEwb06uQaGmMY61xBaVQeR6L7WhNciGuKSmVL9myGlb1LUvNRv7X73ZmD6JMexy/e3EJLm9tv7SoVKTTRhJidR+sYlJVItKNz/zW9W/aT2XaYjQnTwn5K88ms630TABOKn/Vbm7FRduZdMZI9pU4e+9g/w3JKRRJNNCFmx5Fahnbh+syY+hU0SSw74iZYEFXPUReby85eFzG65A1iW6v91u7MYdlcODKbvy3ZzaHKBr+1q1Qk0EQTQmoaWzlc09TpRBPjrmdw4ya2x0+kzRZjUXQ9x9r8W4hyNzHuyMsnf6PYEBGfb4/fcTEN9fVM/NafOnVc+61PQWQOaSoVGQsteohdJZ6KAMM7ObV5eMM6HLSxJSGypjSfSEX8QPamz2DckRdZm3czbfa447/RuLlv0c5Otb3uYBUfR8dxx7PrGNjJ6tpzLxjaqfcrFS70jCaE7DjimXHWqTMaYxhV/ylHo/pQHuW3LcV7vDV5c4hrq2F0yRt+bXdcn1Rayg6wbFcZrS6dGKCULzTRhJAdR+tIjnWQmxLr8zHZrYfIbDuiZzPHOJI8hqLk8Uwofhab23/bM9ttQuV7/6CuqY1V+yv91q5S4UwTTQjZebSOYTnJSCdmjY2q/5RWiWZnhE8COJ41eXNIbilhWPl7fm23uXg7I3KT+aywinKnVgxQ6lQ00YQIl9uw7UgtwzuxUNPhbmZo43p2xY2lxeb7WVCkOJA2lbL4QZ5im8a/w1zTB/Ui2m5j6c5S3Y1TqVPQRBMi9pc7aWhxMTo/1edjhjRuJMY0R1xdM5+JsCZ/DhmN+xlQ+ZFfm46LtjNtcC8OVzex3butg1Lq+DTRhIjN3n1PRuel+HzMqIZPqXRkcTi6v1Vh9Xi7ep1HTUxvTi+e75eN0ToamZtMbkosH+8pp7HV5de2lQonmmhCxKaiGmKjbAzMTPDp/emtJeS17PeczURwJYBTMeJgbd7N9K7bTF7tZ35tW0Q4Z2gWTW0uPtlT7te2lQonmmhCxJbiGkb2TsFh9+2/ZGTDKlzY2BY/0eLIer6tWZfTEJXmOavxs8ykGMb1SWXL4VqO1DT6vX2lwoEmmhDgchu2Hq71edgsygYjGtawL3ZUxG0H0BUueyyf5V5P/6pP6FW/y+/tn9E/g8QYBx/sKMWtu3Eq9SWWJRoR6SMiS0Vku4hsFZHve59PF5HFIrLbe59mVQw9xb4yz0SAUT4mmsuHOoh3O3XtTCdszL2GFls8p/txu+d20Q4bM4b0otzZwsaiar+3r1RPZ+UZTRtwtzFmOHAGcIeIjAB+CiwxxgwGlngfR7T2iQBj8n1LNN8cH02dPZWDMVrSxFfNjmQ25VzFkPLFpDQV+b39QZmJ9M2IZ+W+CpxNbX5vX6mezLJEY4w5YoxZ7/26DtgO5AGzgPbB8vnAbKti6Ck2F9cQF2X3rXZWTREXDrKzNX4SRnTkszPW974Rt9g5rfgZv7fdPjHAbWDFXp0YoFRHAflNJSL9gPHAKiDbGHMEPMkIyDrBMbeLyFoRWVtWVhaIMINmc1ENI3onY7f5MHvsM88+K1vjJ1scVfipj8lke9YljCxdQHyL/3fLTImLYnyfVHYcrdOJAUp1YHmiEZFE4FXgB8aYWl+PM8Y8aoyZaIyZmJmZaV2AQdapiQBuN3z2DO/vc1HrSLc+uDC0Nu8W7O4Wxh150ZL2T++XTkK0nWW7yrRigFJeliYaEYnCk2SeNca85n26RERyva/nAqVWxhDq9pU5aWx1+ZZo9n8INYU8tr7F8rjCVXVcX/ZknMPYIy+TFO3/9qMdNqYN6kVJbTM7jmrFAKXA2llnAjwObDfG3NfhpbeAOd6v5wBvWhVDT7CpyFsRwJeJAOvmQ1w6b+7Ui83dsSbvq8S6nHxrogWZBhiWk0R2cgwr9pTT0qZbCShl5RnNNOAWYKaIbPDeLgH+CJwvIruB872PI5bPEwHqy2HHQhh7Ay1a7aRbSpJGUphyOnPPiMbu9n/1ZRHhrCGZ1Le4WHtQtxJQyspZZx8bY8QYM8YYM857e8cYU2GMOdcYM9h7H9E/iesLqxiTn3LqiQAbnwd3K0y4JTCBhbk1+XPITbIxonShJe3npsQxLCeJ9YXV1DT6bz8cpXoinR8bRI0tLrYdruW0vqdYs2oMrH8K8idB1vDABBfmClMmsbrYxelFT2J3W3PNa9rAXgjw0e7wnjWp1KloogmiTUXVtLnNqRNN4adQvgtOm3Py9ynfiXDPB02kNB9hzNFXLekiMdbB6f3S2VtWz6HKBkv6UKon0EQTROsKqwAYX3CKRLP+KYhOgpFXBiCqyPH+PheFKacz6dATRLc5LeljQkEqybEOlu8uA11gqyKUfvKDaP3BKgb0SiA94SSznxqrYevrMPoaiPZtCwHlu4/73kF8WzUTDj9nSfsOu43pgz110BLHXmhJH0qFOk00QWKMYX1h9anPZra8Am2NMOGrgQkswpQkjWRXxrmcVvwscS3WzEsZlJlIfmocqWfeTE2DTgxQkUcTTZDsKXVSWd/C5P6nWOG/bj5kj4be4wMTWARa0fc7ONzNTC18xJL2RYQZQzKxxSbywBL/b1OgVKjTRBMkn+73/PU8ecBJEs3hDXB0k2cSgO6iaZnquL5syL2O0SWvk+ncaUkfmUkxODcu4qmVB9ldohUDVGTRRBMkq/ZVkJMcS0F6/InftH4+OGI912eUpT4tuI3GqFTO2f8Xz3RyC1R/9DTx0XZ+s2Cb1kFTEUUTTRAYY1i1v5LJA9KRE52pNNXCppc8M83iIn5vOMs1O5L4uO8d5NVuYGj5Ikv6cDfWMvf8IXy0u5zF20os6UOpUOQIdgCRaH95PWV1zUzun3HiN218AVqccPptgQush5s3b163jt+adTljjr7KjAMPsi9tOq0O/8/yu/mMvjy/upB7F25jxpBMYqPsfu9DqVCjiSYIVu7z7IVywuszxsCax6D3BMg/LYCR9Wy/mnNup94/d8UxU5rFxtIBP+L6Td9g+sF/sHTgj/0YnUeU3cavLh/JTY+t4rGP9vHdmYP93odSoUaHzoLgo13l9E6JZUCvE/zFvH85lO+ESXo2E2hHk0bzWe71jDv6Mnk16y3pY9qgXlw8Kod/LN3L4WrdIE2FP000AeZyGz7ZW86ZgzNPfH1m9aMQlw4jrwpscArwTHeujs3j/D2/xeFqsqSPn18yHLcx/P6d7Za0r1Qo0UQTYJuKqqltamP64F4A9Cnoi4h8fuuTYsO17W3+uPgIEh33hdfab8pabfY43h94D2lNh5hS+C9L+uiTHs+3zxrIgk1H+HSf/7eVViqU6DWaAPtodzkinuETgKJDhdy36L9rN6YdeAgpfprM77/LfT/pfdw25l4wNCCxRrJDqaezMedqTjv8HAfTplCYOtnvfXz7rIG8sq6IX7+1lQV3Tsdh17/7VHjST3aALdtVxqjeKcetbxbd5mTM0VfZkzGT2tjjJxkVOMv7/YCK+P5cvOsXJLSU+739uGg791w6nB1H63h+daHf21cqVGiiCaAKZzPrC6uYOSzruK+PKnmDWJeTtXk3BzgydTxt9lgWDv0DUa5GLtr1C8T4f2vTi0flMGVABn9ZtItyp/93+1QqFGiiCaClO8swBs4bnv2l12zuViYcfp7ClImUJI0MQnTqeCrjB/DBgB9TULOWKYWP+r19EeHe2SNpaGnjtwu2+b19pUKBXqMJoCXbS8hOjmFUXvIXnp83bx435B4iaWQpX1vVjyWvdm/hofKvbdmX07t2I5OLnqAqrm/XGxLbCSdzpEy/iTdcN/DIz75O04ENnz+f36eAQ4UHu96nUiFAE02ANLe5WL6rjFnj8770y+ZXXz2HW0r/TBm5TL/0eqafYmbZlxYaKst9MPAnpDQXc/6eezmzoIur+Y37CxM/OmpzuXl2VSEpX/sTN08u+HxigE78UOFAh84CZPmucupbXJw/4svDZoOattCr7Shrk2ZqleYQ5bZFsWDYn6iOzeeN6+NJazjg1/Yddhszh2VR09jKqv3W7IujVLBoogmQhZsOkxofxXTvtOZ2doGpte9Q4chiZ5zuORPKmh3JvDniflpchmu2fIfURv8OafVJj2d4bhLrC6t0YoAKK5poAqCp1cXibSVcNDKHqGPWStwyNoqMthI+Sb4UI1pgMdTVxOYzc34DNlxcu+U7pDb6d1rymYMyiXbY+GBHqW4loMKGXqMJgA93llHf4uLSMblffKG1iXlnx3A0qoA9saODE5zqtO3lbl4Z+U+u2fIdrtnyHV4f+Tcq4gf6dKwvFaajsvrTNGQKf3rsxe6GqlRI0EQTAK+tL6JXYgxTBhyzLcDaxylIsfFKymV6baaHqUgYxCujHuaqrXdy3aZv8vbwv1CUcupK275UmDYG3j7aTOHACVSm5/sjXKWCSofOLFbubOaDHaVcPSHviyVGGiph+V9YtLeNQzFaKr4nqkgYxAtjnqA+OpMrt97J0LJ3/dKuCJybWUuUGHpdehdtLrdf2lUqWDTRWOyNz4ppcxuunXjMX6bv/xqaarh7kTXVgVVg1MXm8uKYxziSNJpLdv2CM/c/gJi2breb4HBzTmYtMb2H8q9le/0QqVLBE95DZ2JDZv6808f4izGGF9ccYlyfVAZlJf33hcJPYf18mPJdtvz6937rTwVHsyOZ10Y+xFn772fi4WfJdu5g4dDf0xh9go3tfDQksZlXPlzOAzZh2qBejC/QLb1VzxTeica4ue/Rxzt1yNzbv+G37lfsqWB3qZO/XDv2v082O+H1b0NqAZz9M0ATTThw26JYOvDHHE0ayXl7/8AtG27k3cG/pjDtjG61W/HePxgy5ULufP4zFn7vTFLiovwUsVKBo0NnFvr3iv30Sozm8rEdZpu99zOoOgCz/wUxiUGLTVlje9alPDfmSRqjUrh6253M2H8/dndLl9szzfX8/cbxHK1p4uevbdYpz6pH0kRjkf3l9Xyws5QbJxUQ4/Cuj1k3H9Y/BdPvgn7TghugskxFwiCeGzOfDTnXctrh57h+062kN+zvcnsTCtL44YVDWbj5CM+s0u0EVM+jicYi/1i6h2i7jZuneIsw7vsQ3vkhDDgHZv5vUGNT1nPZY1k68Me8OfyvJDaXcuPGW7j9tCjP3OUuuP3MAZw9NJPfvL2VtQe0RI3qWcL7Gs2pGENqWxkFzbtJaysl2jTz8KWxsOzP0HscFJwBMUmnbOZYhRUNvP5ZMXOm9CMrKdZz8f/5GyFjEFzzBNi0AkCo8GUBZXePy46eyMMjN/DIZc3srnySxWlfodkW36n+bDbhwevHM/sfK/j2M+t5+85p5KbEdTZspYIiMhONMQxp3MBE5wdktxYB0CrRNNniyR7ugKW/9bxP7NB7PAy/DEbMhvT+PjX/4JLd2G3Ct84aAFtf91z8T86DW16H+O7NRFL+5csCymPNXfFcp4/baC7mnSfv4E8XbOHm0kO8k3YLR2J8+zy1S4mL4tFbTmP2P1bwrafX8dK3phAbpX+0qNAXcUNnKW3lXFf+dy6tegqHaWFpypU8kX0PD+X+kcdyfkXWX5zw88Pw1TfhzLmA8ax5+ds4ePRsWPEgVJ24mOKW4hpe+6yIW0/PIvuDu+Hlr0HOGPjGYkjKCcw3qUKP2PjryhZezPwebmxcV/4Qp9ctRkznFmMOzk7i/q+MY1NRDXe9uAGXWycHqNAXUWc0/Ru3cnHVMxhsLEr9ClvjJx1/3Ux0Agw423Ob+b+exLLtTc/ZyeJfem69J8DwyyF/IqT2hehETFMN9760nTR7C3dsugbcNXDm3XDWT8ERHehvV4Wgkui+PJt1N+dVv8z02ncoaN7Nu2k3UW9P8bmNC0bm8IvLRnDvgm3Me3sr864YecIN1ZQKBRGTaEbUr+b86hcoi8pjQfqt1Do6MYSV1hemfc9zqzoAW9+AbW/Aki+O07/cdhar2r7F72NfInn0JZ4zogzfii2qyNFii+OdtFs4GDOEc2pe48bS+3g741aORvfzuY1vTO9PSW0Tjy7fR3ZyLHecM8i6gJXqpohINMMa1nJh9fMcjBnC2+lfp9UW0/XG0vrB9B94bvXlcHQT1BRx9y9+x5vDbiK6cgtff/pFbnIZ4J/++QZU+BFha8IZHI0u4IqKJ7i27CE+SL2WrQmTfW7ipxcNo7S2iT+/t5O4KDtfn965az5KBYpliUZEngAuA0qNMaO8z6UDLwL9gAPAdcaYKqtiACho2sGFVc9TGDOYNzO+iUv8uLI6oRcMnInLbXgmqYikmCSun30paTde6XMTulVvZKuI6s1zWXdxaeVTXFD9ApmtRSxPmY3bh72JbDbhz9eOpanVzW8WbMPgOdNRKtRYORngSeCiY577KbDEGDMYWOJ9bJm+KcIllU9T4cjmrfSv+zfJdPC3JbuJ6zeWs4dmkhav12JU5zTbEng943bWJp7N+PqPubLiEaLdjT4dG2W38fcbx3PRyBzuXbCN/1u+z+Joleo8yxKNMWY5cOzKslnAfO/X84HZVvVPaxOvXBePDTcLMm6l1RZrSTcLNh3mwSW7cW5ewojcZEv6UOHPiJ2PUmbxbtqN5DXv47qyv5Poqvbp2PZkc8noHH73znb+8J/tuHU2mgohgZ7enG2MOQLgvc+yrKd3f8rE3nbeTbuRakemJV18sqecuS9t5PR+aVS893ed+aO6bXv86byecTvJrkquL3uQkZm+/YhG2W38/YYJ3DS5gEeW7WPuSxtoadN9bFRoCNl1NCJyu4isFZG1ZWVlnTu4eD2s+zd/+LiZfXHWbJG8cm8F35i/lv4ZCTx6y0RwdX8PEqUADsUO4aXMOxFj+PjrCbB/uU/H2W3Cb2eP4ocXDOGNDYe55fFVVDibLY5WqVMLdKIpEZFcAO996YneaIx51Bgz0RgzMTOzk2ckeRPgljf4xQfW/JC9u+Uoc/69mry0OJ755mTSEvS6jPKv8qg8ns/8PkW1bnjmatix0KfjRITvzhzMA18Zx4ZD1Vzx0Aq2FNdYHK1SJxfoRPMWMMf79RzgTct6GngOLj8PU7vdhvsX7+Lbz6xjeG4yL39rCplJ3ZgqrdRJOB1pzPh3vaeyxIu3wKaXfD529vg8Xvn2VIwxXP3wJzy3qlC3GFBBY1miEZHngZXAUBEpEpFvAH8EzheR3cD53sc9Qk1jK7c9tZYHl+zmqgl5vHj7GXomoyxX1QR89Q3oOxVeux3WPuHzsaPzU3jrzumc3i+dn7++me88s57qhq7vjaNUV1k56+wGY0yuMSbKGJNvjHncGFNhjDnXGDPYex+S9c5F5Au3uH7jGHn3M7y/9TAVix7m/q+MJy7a8YX3KGUJsSGxycTdtpAFu1pgwV38cGrMlz6jx976FHi2p+iVGMNTX5/Ezy8ZxpIdJVz0wEes3FsR5G9KRZqIqAzQWeYDz/bKjS7hT7tyebKwFwPim7lv9H7GXTIN+PKmZTLz5wGOUkUE4+a+RTsB2OtuZeeuX/KXC97nmq/fwcqCb8EJ/sjpuBDYZhNunzGQKQN68b0XPuPGxz7ltjMHMPf8IVr9WQVEyM46C7aNNXFcunIwTxb24msF5Sycuotxqb4tolPKCm5bFP8Z+ls2Z83ijKLHOWv/fdCJ6s+j81NYcOd0bphUwKPL93Hxgx+xen9IDiqoMKOJ5lhi48E9WVy1ahCNLhvPTNzHr4cfJs6uF1JV8Bmx8/6ge1ifewMTjrzA+Xt+ixjfp9YnxDj4/ZWjee6bk2lzu7nukZX88s0tOJt1er6yjiaaDqpa7OTc/Gfu35vDFTnVvDt1F9MznMEOS6kvEmFZ/7tY2ec2RpW+zaU778Hu7txF/qmDevHeD2Zw67R+PP3pQS68fznLd3VyvZpSPtJrNHi2cd9SF8fy8iQcaTE8NPYgl+Xo2gMVwkT4tOB2mu2JnH3gfqK2N/D2sP9Hm927vbPYfJ6kEpM3jJaLv89Xn2jEvXclm+b/klSt2af8KOITTasblpYls90ZR0FcM588dAeXzf5hsMNSyief5d1IiyOR8/b8jqu3fpc3RjxAsyPpC5MIfNHmcrNqfyVr3JM4777l3DtrJBePzrUwchVJInrorKbVxkvF6Wx3xnJGmpPZudW4nHpxVPUsW7OvYOHQP5Dt3MY1W75NXEvnP8MOu41pg3pxZP5dZCfH8J1n1/Ptp9dRWttkQcQq0kRsoilpcvBicTp1bXZm5VQzOb3+RDNFlQp5e3rN5M3h95HWeJDrNt9Gn+SufZhbS/fxxh3T+MlFw/hgZynn3beMl9Ye0qoCqlsiMtHsr4/mlcPpRAl8Ja+Sfgm6Wlr1fAfTpvDayH8Q31rJx19PIK3hQJfaibLb+M7ZA/nP989kWE4yP35lE7c8vppDlQ3+DVhFjIi7RrOjLpZFpclkRrdxRW41CQ4tpa5C27x58zr1/ocSx/PKqGV8ZfM3eWv4XzicPM73g780iUBIHH8xy5u/xrRtRVQvf4q69Qu+sH4nv08BhwoPdipGFVkiKtG0J5m82FYuz60m2qbDASr0/WrOuZ0+ZupP3mHNj/tx9ZY7eG/wr9iVeYFvB55gEkFtUysf7Cjl4Hm3M+Kq73He8CwyEj0FZXU7cnUqETN01jHJXJFbpUlGhbV9VYYXxzxOSdIILt11DxOL5nvm8XdRcmwUs8b25sIR2VQ3tvD86kOs2l+BS3fyVD6IiDOavfUxX0gyURGTXlUka4pK5dWRD3Hh7nmcefAhUpoO88HAH2Gkaz/2IsKw3GQKMuJZtquMT/dVsrvUSXTOYD9HrsJN2P/KPdwYxX9KUsiKadMkoyKOyxbDO0N+y5q8rzKm5DVmbb+b6LbuVbuIj3Zw8ahcLh+TS1Ori5xb/sIf3tlOY4vLT1GrcBPWv3ajMvrw1tFUkhwuTTIqcomNj/vdyfsDf0ZB9Spu2PS1Ls9I62hAZiK3TO6Lc9NiHlm+j4sfXM6n+3QLAvVlYfur90hNI1nXzcMuhtm5VcRrUUwV4TbnXMWrI/9JbFstN2z6GgMqlnW7zZgoO5XvPcRz35yM28D1j37KPa9vpq6p1Q8Rq3ARlommprGVrz2xBltMIrNyq0mJ0inMSgEUp0zg2bFPUR1bwKwdP+SMwv/r1FYDJ9JepPOb0/vz/OpCzr9vOQs3HdGFngoI00RTWd9Cc5uLstd/R1aMlj9XqiNnTA4vjn6UbZmXMuXQo1yx40fdvm4DEBdt538vG8Gr35lKWkI0dzy3npsfX8Xukjo/RK16srCcdda/VwKL555F9I83dv5gselumSosnGqh5y+Bb/UZye8Gf8SFhy7j1s0T/NLv+II0Ftw5nedWHeTP7+3k4gc/4tZp/fjeuYNJio36/H19CvpSdKiwU23r4tCeKSwTDXjKaHSJcXPfo493+rC5t3+ja/0pZRFfF3q+1ryXSyqfZukZK7mjPMqz3qabhf/sNuGWKf24ZHQuf35vJ499vJ83NhzmJxcN48rxedhtQtGhwk5VmAZdHNpTheXQmVLKd8UxA3km64cUxQzikcviuHjXL4hqq/dL2xmJMfzx6jG8/j/T6J0axw9f3silf/uIpTtK/dK+6hk00SilaLQn8nrGbfxsSRNDyhdz08av0qt+l9/aH9cnlde/M5WHbhxPY6uLW59cQ/YNf+BojW5DEAk00SilPMTGHz9u4ZVRDxPlbuSGjbcy/vDzfpmVBmCzCZeN6c3iu87iN7NGEpWRz4trD7Fw0xEq67WCejgL22s0wdDZKrtKhaLbH3ibjKhxPDRiExeb+2hb8zR3bBtLSUvs8Q/oxLbRXzgsOo5r/7aE9YVV7C1zMjw3mckD0knuMGFAhQdNNH7UlSq7c1c8Z0EkSnVd++d4h7mY6IZPOEve5LOzV7I49Svsixv9pffPXfFcpy/qg+fC/hkDMhiTn8LaA1VsKq5h59E6RuencHq/NOKj9ddTuNChM6XU8YmwKWEaz2beTZ09lVmVT3Bu1Us43M1+7SY+2sGMIZnMmdKXYblJbCyq5slPDrBybwXNbVo/LRxoolFKnVRVVDYvZP6ANYkzGd3wKTeV/ZXsls6tf/FFUmwU5w3P5pbJfemXkcDqA5X8e8UB1h6spNWl1T16Mk00SqlTcouDj1Mu55Ve3yHKtHJ92YNMrVmI3fi/8kZaQjSXjM7lhkl9yEmJZcWeCuZ/coBNRdVg0+G0nkgTjVLKZ0Uxg3k660dsi5/IZOf73FT6Fybl2S3pKyspltnj8rhmQj4pcVEs3VlG728+zOufFemGaz2MJhqlVKc02+JZnHYDr2XcTpRp5pOvx3Pm/gdwuKxZE5OXFsc1p+Uza2xvTEsDd724kUse/IhFW49q0c4eQhONUqpLDsYO5+msn/Do+lYmHn6WmzfcSEH1Kkv6EhH69UrgyJM/4O83jKfF5eb2p9dx5T8/4ZO95Zb0qfxHE41SqstabLH8z8ImXh75MILh6q3f5bIdPyGp6YhFPRouH9ubxXfN4I9Xjaaktokb/28Vtzy+is1FNRb1qbpLE41SqtuKUify1PgXWFHwHfpVrWDOZ9cyufD/sFs0nOaw27h+UgFLf3g291wynM3FNVz+0Mfc8dx69pV1f8sD5V+aaJRSfuGyxbC6z9eZP+EV9qedydRDj/L19Vcx5sgr2NzW7LgZG2XnthkDWP7jc/jezEEs3VHK+fcv52evbdY6aiFEE41Syq/qYnJYOOwPvDTqX9TE5nHuvj/xtfVXM6LkLcSC6dAAybFRzL1gKMt+dA63nNGXV9YdYsafl3LP65sprGiwpE/lO000SilLFKecxkujHuW1EX+jMSqVC/fcy63rrmJC8TN+2dHzeDKTYvj1FSP54O6zuXpCHi+vLeLsvyzle89/xrbDtZb0qU5NVz8ppawjwsG0KRxMPYMBVR8xofhZzjrwIFMK/4+Yy2NJqt3I4aQx3d5o7Vh90uP5w1VjuOu8ITy+Yj/PflrIWxsPM7FvGl85vQ+XjsnVWmoBpP/SSinribAvfQb70meQ5dzBuCMvcv2ot0nc/E2qY/PZk3EOe9PP4kjSKIycZAFoFytFOxJSiBsxk5VjL2DtwSrufnYl9duWU799Gc1F2064FULfPnkcKCzqdH/qizTRKKUCqjRxGIsG/4pf/OA5Xv33Xxla9h7jDz/PxOKnaXSkUJw8juLk8RxNGkVZ/CBaHQn/Pdi4u1wpuvZPp2NMFWuqm3mhKJ134i4kafzFpEe1cW5WLdMznExNd5IZ89/rSDLz5/74liNeUBKNiFwEPAjYgceMMX8MRhxKqeCpb4VtWZexLesyotuc9Kv6hL7Vq8ir/YxBlcs+f191bB41sfnURufwixnRjCh5iyZHCi32BFocCbTY43HLl/ewEdzY3G3YTSun5dqgpggxLiYZN5N6u7g3E5bVZPFudT7vHunNy8XpAAyMrmJsbCljYko497SBAfv3CGcBTzQiYgf+AZwPFAFrROQtY8y2QMeilAoNLY5EdmVewK7MCwBIaC4jq34HmfW76VW/m+Tmo/SvX8FvzomFPfd2uv1bbk+EDc984bkE4BLvzRUlbDH9WeEeyfq2IXxUO4DXGMq4sXXd/+ZUUM5oJgF7jDH7AETkBWAWoIlGKQVAfUwm+2My2Z9+5hee/+nFQ3n49SXEtNUR7Wogus1JtKsB2/GmTYvgkihctige+eWdLPjDrWCzgdjBZv/Cvd1mY6zYGWuzg4CRg5S0HCH/Ky/D4/8M0HcdviTQRelE5BrgImPMN72PbwEmG2O+e8z7bgdu9z4cCnRmYLYXECoFkEIlFo3ji0IlDgidWDSOL+tKLOXGmIusCKanCsYZzfGmjHwp2xljHgUe7VIHImuNMRO7cqy/hUosGkdoxgGhE4vG8WWhFEtPFowFm0VAnw6P84HDQYhDKaVUAAQj0awBBotIfxGJBq4H3gpCHEoppQIg4ENnxpg2Efku8B6e6c1PGGO2+rmbLg25WSRUYtE4vihU4oDQiUXj+LJQiqXHCvhkAKWUUpFFi2oqpZSylCYapZRSlgq7RCMiF4nIThHZIyI/DWC/T4hIqYhs6fBcuogsFpHd3vu0AMTRR0SWish2EdkqIt8PYiyxIrJaRDZ6Y5kXrFi8/dpF5DMRWRCsOETkgIhsFpENIrI2WHF4+00VkVdEZIf38zIl0LGIyFDvv0X7rVZEfhCk/5u7vJ/TLSLyvPfzG5T/m3ATVommQ3mbi4ERwA0iMiJA3T8JHLtI66fAEmPMYGCJ97HV2oC7jTHDgTOAO7z/BsGIpRmYaYwZC4wDLhKRM4IUC8D3ge0dHgcrjnOMMeM6rM8IVhwPAu8aY4YBY/H82wQ0FmPMTu+/xTjgNKABeD3QcYhIHvA9YKIxZhSeiUrXBzqOsGWMCZsbMAV4r8PjnwE/C2D//YAtHR7vBHK9X+cCO4Pwb/ImnrpyQY0FiAfWA5ODEQue9VpLgJnAgmD9/wAHgF7HPBeMOJKB/XgnBAUzlg59XwCsCEYcQB5wCEjHMxt3gTeeoP8Mh8MtrM5o+O+HpV2R97lgyTbGHAHw3mcFsnMR6QeMB1YFKxbvcNUGoBRYbIwJViwPAD8GOm48Eow4DLBIRNZ5yywFK44BQBnwb+9w4mMikhCkWNpdDzzv/TqgcRhjioG/AIXAEaDGGLMo0HGEq3BLND6Vt4kEIpIIvAr8wBgTtD1sjTEu4xkWyQcmicioQMcgIpcBpcaYdYHu+zimGWMm4BnevUNEZgQpDgcwAXjYGDMeqCeIw0LexdtXAC8Hqf80PMV9+wO9gQQRuTkYsYSjcEs0oVbepkREcgG896WB6FREovAkmWeNMa8FM5Z2xphq4EM817ECHcs04AoROQC8AMwUkWeCEAfGmMPe+1I81yImBSMOPD8rRd4zTIBX8CSeYH1OLgbWG2NKvI8DHcd5wH5jTJkxphV4DZgahDjCUrglmlArb/MWMMf79Rw810ssJSICPA5sN8bcF+RYMkUk1ft1HJ4f5h2BjsUY8zNjTL4xph+ez8QHxpibAx2HiCSISFL713iuAWwJdBwAxpijwCERGep96lw8W3UEPBavG/jvsBlBiKMQOENE4r0/Q+fimRwRrH+P8BLsi0T+vuHZx2gXsBe4J4D9Po9nbLcVz1+L3wAy8FyA3u29Tw9AHNPxDBduAjZ4b5cEKZYxwGfeWLYAv/Q+H/BYOsR0Nv+dDBDQOPBcF9novW1t/3wG698Dz0zAtd7/nzeAtCB9TuKBCiClw3PBiGMenj+EtgBPAzHB/KyG001L0CillLJUuA2dKaWUCjGaaJRSSllKE41SSilLaaJRSillKU00SimlLKWJRoU1EblSRIyIDAt2LEpFKk00KtzdAHyMZ6GmUioINNGosOWt9zYNz+LZ673P2UTkn959RxaIyDsico33tdNEZJm34OV77aVHlFLdo4lGhbPZePZb2QVUisgE4Co82zmMBr6JZ2uJ9vpwfweuMcacBjwB/C4IMSsVdhzBDkApC92AZ3sA8BTTvAGIAl42xriBoyKy1Pv6UGAUsNhT6go7npJCSqlu0kSjwpKIZODZ5GyUiBg8icPgqZh83EOArcaYKQEKUamIoUNnKlxdAzxljOlrjOlnjOmDZ0fJcuBq77WabDxFNsGzk2KmiHw+lCYiI4MRuFLhRhONClc38OWzl1fxbGpVhKdC7yN4dh+tMca04ElOfxKRjXiqXk8NWLRKhTGt3qwijogkGmOc3uG11Xh2vTwa7LiUCld6jUZFogXeDdmigXs1yShlLT2jUUopZSm9RqOUUspSmmiUUkpZShONUkopS2miUUopZSlNNEoppSz1/wF3Z7dolAWFKgAAAABJRU5ErkJggg==\n", + "text/plain": [ + "<Figure size 411.875x360 with 1 Axes>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "sns.displot(data=df, x=\"Age\", hue=\"Survived\", kde=True)" + ] + }, + { + "cell_type": "markdown", + "id": "northern-connecticut", + "metadata": {}, + "source": [ + "## Barplot\n", + "\n", + "A barplot is a way of displaying for example counts, frequencies or average for different categories." + ] + }, + { + "cell_type": "code", + "execution_count": 58, + "id": "gross-newport", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "<seaborn.axisgrid.FacetGrid at 0x7f320d9623d0>" + ] + }, + "execution_count": 58, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<Figure size 360x360 with 1 Axes>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "sns.catplot(data=df, x=\"Sex\", y=\"Survived\", kind=\"bar\")" + ] + }, + { + "cell_type": "markdown", + "id": "electric-component", + "metadata": {}, + "source": [ + "## Swarmplot" + ] + }, + { + "cell_type": "code", + "execution_count": 74, + "id": "russian-seating", + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/khourhin/programs/miniconda3/envs/dev/lib/python3.9/site-packages/seaborn/categorical.py:1296: UserWarning: 30.6% of the points cannot be placed; you may want to decrease the size of the markers or use stripplot.\n", + " warnings.warn(msg, UserWarning)\n", + "/home/khourhin/programs/miniconda3/envs/dev/lib/python3.9/site-packages/seaborn/categorical.py:1296: UserWarning: 63.0% of the points cannot be placed; you may want to decrease the size of the markers or use stripplot.\n", + " warnings.warn(msg, UserWarning)\n", + "/home/khourhin/programs/miniconda3/envs/dev/lib/python3.9/site-packages/seaborn/categorical.py:1296: UserWarning: 81.9% of the points cannot be placed; you may want to decrease the size of the markers or use stripplot.\n", + " warnings.warn(msg, UserWarning)\n" + ] + }, + { + "data": { + "text/plain": [ + "<seaborn.axisgrid.FacetGrid at 0x7f320c6e4760>" + ] + }, + "execution_count": 74, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<Figure size 360x360 with 1 Axes>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "sns.catplot(data=df, x=\"Pclass\", y=\"Fare\", kind=\"swarm\")" + ] + }, + { + "cell_type": "markdown", + "id": "cellular-russian", + "metadata": {}, + "source": [ + "## Boxplot" + ] + }, + { + "cell_type": "code", + "execution_count": 76, + "id": "guided-terrorist", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "<seaborn.axisgrid.FacetGrid at 0x7f320c69d850>" + ] + }, + "execution_count": 76, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<Figure size 360x360 with 1 Axes>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "sns.catplot(data=df, x=\"Pclass\", y=\"Fare\", kind=\"box\")" + ] + }, + { + "cell_type": "markdown", + "id": "affecting-lesson", + "metadata": {}, + "source": [ + "## Scatterplot" + ] + }, + { + "cell_type": "code", + "execution_count": 125, + "id": "magnetic-simple", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "<AxesSubplot:xlabel='Age', ylabel='Fare'>" + ] + }, + "execution_count": 125, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<Figure size 432x288 with 1 Axes>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "sns.scatterplot(data=df, x=\"Age\", y=\"Fare\", hue=\"Sex\", size=\"Pclass\")" + ] + }, + { + "cell_type": "markdown", + "id": "cooperative-lobby", + "metadata": {}, + "source": [ + "## Heatmap" + ] + }, + { + "cell_type": "code", + "execution_count": 107, + "id": "treated-immigration", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "<AxesSubplot:>" + ] + }, + "execution_count": 107, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<Figure size 432x288 with 2 Axes>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "uniform_data = np.random.rand(5, 5)\n", + "sns.heatmap(uniform_data, vmin=0, vmax=1)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "dev", + "language": "python", + "name": "dev" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.5" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +}