From c5cd3295ff02eda683bfcfc7834a21f00c9eb7e6 Mon Sep 17 00:00:00 2001 From: s444501 Date: Wed, 18 May 2022 01:08:58 +0200 Subject: [PATCH 1/4] test 3 --- bootstrap-t.ipynb | 364 +++++++++++++++++++++++++--------------------- 1 file changed, 200 insertions(+), 164 deletions(-) diff --git a/bootstrap-t.ipynb b/bootstrap-t.ipynb index feee38d..50d8ac9 100644 --- a/bootstrap-t.ipynb +++ b/bootstrap-t.ipynb @@ -23,9 +23,18 @@ "Wszystkie rodzaje testów są testami parametrycznymi, a co za tym idzie nasze mierzone zmienne ilościowe powinny mieć rozkład normalny." ] }, + { + "cell_type": "markdown", + "source": [ + "# Definicje funkcji" + ], + "metadata": { + "collapsed": false + } + }, { "cell_type": "code", - "execution_count": 68, + "execution_count": 510, "metadata": { "pycharm": { "name": "#%%\n" @@ -42,16 +51,16 @@ }, { "cell_type": "code", - "execution_count": 69, + "execution_count": 511, "metadata": {}, "outputs": [], "source": [ - "dataset = pd.read_csv('experiment_data.csv')" + "dataset = pd.read_csv('experiment_data.csv') # TODO: del?" ] }, { "cell_type": "code", - "execution_count": 70, + "execution_count": 512, "metadata": {}, "outputs": [], "source": [ @@ -62,7 +71,7 @@ }, { "cell_type": "code", - "execution_count": 71, + "execution_count": 513, "metadata": {}, "outputs": [], "source": [ @@ -83,7 +92,7 @@ }, { "cell_type": "code", - "execution_count": 72, + "execution_count": 514, "metadata": { "pycharm": { "name": "#%%\n" @@ -105,7 +114,7 @@ }, { "cell_type": "code", - "execution_count": 73, + "execution_count": 515, "metadata": {}, "outputs": [], "source": [ @@ -123,7 +132,7 @@ }, { "cell_type": "code", - "execution_count": 74, + "execution_count": 516, "metadata": {}, "outputs": [], "source": [ @@ -141,7 +150,7 @@ }, { "cell_type": "code", - "execution_count": 75, + "execution_count": 517, "metadata": {}, "outputs": [], "source": [ @@ -169,7 +178,7 @@ }, { "cell_type": "code", - "execution_count": 76, + "execution_count": 518, "metadata": {}, "outputs": [], "source": [ @@ -208,7 +217,7 @@ }, { "cell_type": "code", - "execution_count": 77, + "execution_count": 519, "metadata": {}, "outputs": [ { @@ -272,7 +281,7 @@ }, { "cell_type": "code", - "execution_count": 78, + "execution_count": 520, "metadata": { "pycharm": { "name": "#%%\n" @@ -300,7 +309,7 @@ }, { "cell_type": "code", - "execution_count": 79, + "execution_count": 521, "metadata": { "collapsed": false, "pycharm": { @@ -321,66 +330,6 @@ " return p, t, ts" ] }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Sprawdzenie czy osoba o wzroście 165cm pasuje do populacji (nie jest odmieńcem)" - ] - }, - { - "cell_type": "code", - "execution_count": 80, - "metadata": {}, - "outputs": [], - "source": [ - "dummy = pd.DataFrame([1, 2, 3, 4, 5])\n", - "dummy2 = pd.DataFrame([4, 5, 6, 7, 8])\n", - "dummy3 = pd.DataFrame([1, 3 , 3, 4, 6])" - ] - }, - { - "cell_type": "code", - "execution_count": 81, - "metadata": { - "collapsed": false, - "pycharm": { - "name": "#%%\n" - } - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Wyniki bootstrapowej wersji testu T-studenta\n", - "\n", - "Hipoteza: średnia jest równa 165\n", - "Hipoteza alternatywna: średnia jest mniejsza\n", - "\n", - "p: 0.72\n", - "Wartość statystyki testowej z próby: [-229.1025971]\n", - "Wartości statystyk z prób boostrapowych:\n", - "[-239.4457368], [-201.5], [-176.97470898], [-256.14449047], [-436.1703468], ... (i 95 pozostałych)\n", - "\n", - "\n", - "\n" - ] - } - ], - "source": [ - "#TODO: poprawić kod aby można było podawać kolumny\n", - "\n", - "p, t, ts = bootstrap_one_sample(dummy, 165)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "TODO: Wniosek" - ] - }, { "cell_type": "markdown", "metadata": {}, @@ -395,7 +344,7 @@ }, { "cell_type": "code", - "execution_count": 82, + "execution_count": 522, "metadata": { "collapsed": false, "pycharm": { @@ -415,13 +364,6 @@ " return p, t, ts" ] }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "TODO: Wniosek" - ] - }, { "cell_type": "markdown", "metadata": {}, @@ -435,7 +377,7 @@ }, { "cell_type": "code", - "execution_count": 83, + "execution_count": 523, "metadata": { "collapsed": false, "pycharm": { @@ -455,32 +397,9 @@ " return p, t, ts" ] }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# TODO: Wyciągnąć wagi przed dietą i po oraz poprawić kod aby można było podawać kolumny\n", - "t_stat, df, cv, p, _ = bootstrap_dependent(dataset, dataset)\n", - "pretty_print_full_stats(t_stat, df, cv, p)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "TODO: Wniosek" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Wykresy" - ] - }, { "cell_type": "code", - "execution_count": 84, + "execution_count": 524, "metadata": { "collapsed": false, "pycharm": { @@ -489,12 +408,14 @@ }, "outputs": [], "source": [ - "def draw_distribution(stats):\n", + "def draw_distribution(stats, comparision_value):\n", " \"\"\"\n", " Funkcja rysuje rozkład statystyki testowej\n", " @param stats: lista statystyk testowych\n", + " @param comparision_value: pierwotna próbka\n", " \"\"\"\n", " plt.hist(stats)\n", + " plt.axvline(comparision_value, color='red')\n", " plt.xlabel('Test statistic value')\n", " plt.ylabel('Frequency')\n", " plt.show()" @@ -502,100 +423,215 @@ }, { "cell_type": "markdown", - "metadata": {}, "source": [ - "## Testy" - ] + "# Wczytanie danych" + ], + "metadata": { + "collapsed": false + } }, { "cell_type": "code", - "execution_count": 85, - "metadata": {}, + "execution_count": 525, + "outputs": [], + "source": [ + "dataset = pd.read_csv('experiment_data.csv')\n", + "heights_female = pd.DataFrame(dataset['Female height'].to_numpy()) # xd\n", + "heights_male = pd.DataFrame(dataset['Male height'].to_numpy())\n", + "weights_before = pd.DataFrame(dataset['Weight before'].to_numpy())\n", + "weights_after = pd.DataFrame(dataset['Weight after'].to_numpy())" + ], + "metadata": { + "collapsed": false, + "pycharm": { + "name": "#%%\n" + } + } + }, + { + "cell_type": "markdown", + "source": [ + "# Jedna próba\n", + "\n", + "### Hipoteza\n", + "\n", + "### Sprawdzenie założeń\n", + "\n", + "## Test" + ], + "metadata": { + "collapsed": false + } + }, + { + "cell_type": "markdown", + "source": [ + "# Dwie próby niezależne\n", + "\n", + "### Hipoteza\n", + "\n", + "### Sprawdzenie założeń\n", + "\n", + "## Test" + ], + "metadata": { + "collapsed": false + } + }, + { + "cell_type": "markdown", + "source": [ + "# Dwie próby zależne\n", + "\n", + "W odróżnieniu od testu dla prób niezależnych, gdzie porównujemy dwie grupy, ten rodzaj testu stosujemy gdy poddajemy analizie tą samą pojedynczą grupę, ale dwukrotnie w czasie.\n", + "\n", + "**Przykład**: Porównane zostały wagi przed dietą i po diecie.\n" + ], + "metadata": { + "collapsed": false + } + }, + { + "cell_type": "markdown", + "source": [ + "### Hipoteza\n", + "H0 - Średnia waga nie uległa zmianie po zastosowaniu diety\n", + "H1 - Średnia waga po diecie jest znacząco mniejsza od wagi przed dietą\n" + ], + "metadata": { + "collapsed": false + } + }, + { + "cell_type": "markdown", + "source": [ + "\n", + "### Sprawdzenie założeń\n", + "\n", + "Założenie o rozkładzie normalnym danych - sprawdzane testem Shapiro-Wilka" + ], + "metadata": { + "collapsed": false + } + }, + { + "cell_type": "code", + "execution_count": 526, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "Statystyki dla jednej próby:\n", - "Wyniki bootstrapowej wersji testu T-studenta\n", - "\n", - "Hipoteza: średnia jest równa 2\n", - "Hipoteza alternatywna: średnia jest mniejsza\n", - "\n", - "p: 0.35\n", - "Wartość statystyki testowej z próby: [1.41421356]\n", - "Wartości statystyk z prób boostrapowych:\n", - "[2.44948974], [3.13785816], [1.72328087], [0.27216553], [1.17669681], ... (i 95 pozostałych)\n", - "\n", - "\n", - "\n" + "p = 0.0627\n" ] } ], "source": [ - "# Testy z bootstrappowaniem\n", - "\n", - "print('Statystyki dla jednej próby:')\n", - "p, t, ts = bootstrap_one_sample(dummy, 2)" - ] + "shapiro_test = shapiro(weights_before)\n", + "print(f\"p = {round(shapiro_test.pvalue,4)}\")" + ], + "metadata": { + "collapsed": false, + "pycharm": { + "name": "#%%\n" + } + } + }, + { + "cell_type": "markdown", + "source": [ + "Wartość **p** w teście Shapiro-Wilka powyżej **0.05** -> Dane prawdopodobnie mają rozkład normalny" + ], + "metadata": { + "collapsed": false + } + }, + { + "cell_type": "markdown", + "source": [ + "## Test" + ], + "metadata": { + "collapsed": false + } }, { "cell_type": "code", - "execution_count": 86, - "metadata": {}, + "execution_count": 527, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "Statystyki dla dwóch prób zależnych:\n", "Wyniki bootstrapowej wersji testu T-studenta\n", "\n", "Hipoteza: średnie są takie same\n", "Hipoteza alternatywna: średnia jest mniejsza\n", "\n", "p: 1.0\n", - "Wartość statystyki testowej z próby: [10.61445555]\n", + "Wartość statystyki testowej z próby: [7.89079918]\n", "Wartości statystyk z prób boostrapowych:\n", - "[-2.66666667], [-0.14359163], [0.21199958], [0.11470787], [0.76696499], ... (i 95 pozostałych)\n", + "[-0.05395381], [0.15520269], [-0.2285374], [1.05735295], [2.77041326], ... (i 95 pozostałych)\n", "\n", "\n" ] + }, + { + "data": { + "text/plain": "
", + "image/png": "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\n" + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" } ], "source": [ - "print('Statystyki dla dwóch prób zależnych:')\n", - "p, t, ts = bootstrap_dependent(dummy2, dummy3)" - ] + "p, t, ts = bootstrap_dependent(weights_before, weights_after)\n", + "ts = [x[0] for x in ts]\n", + "draw_distribution(ts, t)" + ], + "metadata": { + "collapsed": false, + "pycharm": { + "name": "#%%\n" + } + } + }, + { + "cell_type": "markdown", + "source": [ + "## Wniosek\n", + "\n", + "???" + ], + "metadata": { + "collapsed": false + } }, { "cell_type": "code", - "execution_count": 87, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Statystyki dla dwóch prób niezależnych:\n", - "Wyniki bootstrapowej wersji testu T-studenta\n", - "\n", - "Hipoteza: średnie są takie same\n", - "Hipoteza alternatywna: średnia jest mniejsza\n", - "\n", - "p: 0.95\n", - "Wartość statystyki testowej z próby: [2.4140394]\n", - "Wartości statystyk z prób boostrapowych:\n", - "[-2.20937908], [0.13187609], [-0.81110711], [-0.94280904], [-0.77151675], ... (i 95 pozostałych)\n", - "\n", - "\n" - ] + "execution_count": null, + "outputs": [], + "source": [], + "metadata": { + "collapsed": false, + "pycharm": { + "name": "#%%\n" } - ], - "source": [ - "print('Statystyki dla dwóch prób niezależnych:')\n", - "p, t, ts = bootstrap_independent(dummy2, dummy3)" - ] + } + }, + { + "cell_type": "code", + "metadata": { + "pycharm": { + "name": "#%%\n" + } + }, + "source": [], + "execution_count": null, + "outputs": [] } ], "metadata": { @@ -626,4 +662,4 @@ }, "nbformat": 4, "nbformat_minor": 2 -} +} \ No newline at end of file From 16c4442ad27d861a5dc6925f6ab82f2925c20cc7 Mon Sep 17 00:00:00 2001 From: s444501 Date: Wed, 18 May 2022 06:37:27 +0200 Subject: [PATCH 2/4] test 3 --- bootstrap-t.ipynb | 116 ++++++++++++++++++++++++++++++++-------------- 1 file changed, 81 insertions(+), 35 deletions(-) diff --git a/bootstrap-t.ipynb b/bootstrap-t.ipynb index 50d8ac9..e6eec77 100644 --- a/bootstrap-t.ipynb +++ b/bootstrap-t.ipynb @@ -34,7 +34,7 @@ }, { "cell_type": "code", - "execution_count": 510, + "execution_count": 546, "metadata": { "pycharm": { "name": "#%%\n" @@ -51,7 +51,7 @@ }, { "cell_type": "code", - "execution_count": 511, + "execution_count": 547, "metadata": {}, "outputs": [], "source": [ @@ -60,7 +60,7 @@ }, { "cell_type": "code", - "execution_count": 512, + "execution_count": 548, "metadata": {}, "outputs": [], "source": [ @@ -71,7 +71,7 @@ }, { "cell_type": "code", - "execution_count": 513, + "execution_count": 549, "metadata": {}, "outputs": [], "source": [ @@ -92,7 +92,7 @@ }, { "cell_type": "code", - "execution_count": 514, + "execution_count": 550, "metadata": { "pycharm": { "name": "#%%\n" @@ -114,7 +114,7 @@ }, { "cell_type": "code", - "execution_count": 515, + "execution_count": 551, "metadata": {}, "outputs": [], "source": [ @@ -132,7 +132,7 @@ }, { "cell_type": "code", - "execution_count": 516, + "execution_count": 552, "metadata": {}, "outputs": [], "source": [ @@ -150,7 +150,7 @@ }, { "cell_type": "code", - "execution_count": 517, + "execution_count": 553, "metadata": {}, "outputs": [], "source": [ @@ -178,7 +178,7 @@ }, { "cell_type": "code", - "execution_count": 518, + "execution_count": 554, "metadata": {}, "outputs": [], "source": [ @@ -217,7 +217,7 @@ }, { "cell_type": "code", - "execution_count": 519, + "execution_count": 555, "metadata": {}, "outputs": [ { @@ -281,7 +281,7 @@ }, { "cell_type": "code", - "execution_count": 520, + "execution_count": 556, "metadata": { "pycharm": { "name": "#%%\n" @@ -309,7 +309,7 @@ }, { "cell_type": "code", - "execution_count": 521, + "execution_count": 557, "metadata": { "collapsed": false, "pycharm": { @@ -344,7 +344,7 @@ }, { "cell_type": "code", - "execution_count": 522, + "execution_count": 558, "metadata": { "collapsed": false, "pycharm": { @@ -364,20 +364,9 @@ " return p, t, ts" ] }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Test t studenta dla prób zależnych\n", - "\n", - "W odróżnieniu od testu t – Studenta dla prób niezależnych, gdzie porównujemy dwie grupy, ten rodzaj testu stosujemy gdy poddajemy analizie tą samą pojedynczą grupę, ale dwukrotnie w czasie. Na przykład gdy chcemy porównać średnie wagi grupy osób przed dietą oraz po diecie, aby sprawdzić czy dieta spowodowała istotne zmiany statystyczne.\n", - "\n", - "Hipoteza zerowa takiego testu będzie brzmiała H0: Średnia waga osób po diecie jest taka sama jak przed dietą. Hipoteza alternatywna z kolei H1: Dieta znacząco wpłynęła na średnią wagę danej grupy." - ] - }, { "cell_type": "code", - "execution_count": 523, + "execution_count": 559, "metadata": { "collapsed": false, "pycharm": { @@ -399,7 +388,7 @@ }, { "cell_type": "code", - "execution_count": 524, + "execution_count": 560, "metadata": { "collapsed": false, "pycharm": { @@ -432,7 +421,7 @@ }, { "cell_type": "code", - "execution_count": 525, + "execution_count": 561, "outputs": [], "source": [ "dataset = pd.read_csv('experiment_data.csv')\n", @@ -455,9 +444,37 @@ "\n", "### Hipoteza\n", "\n", - "### Sprawdzenie założeń\n", - "\n", - "## Test" + "### Sprawdzenie założeń\n" + ], + "metadata": { + "collapsed": false + } + }, + { + "cell_type": "markdown", + "source": [ + "## Test\n" + ], + "metadata": { + "collapsed": false + } + }, + { + "cell_type": "code", + "execution_count": 561, + "outputs": [], + "source": [], + "metadata": { + "collapsed": false, + "pycharm": { + "name": "#%%\n" + } + } + }, + { + "cell_type": "markdown", + "source": [ + "## Wniosek" ], "metadata": { "collapsed": false @@ -471,13 +488,42 @@ "### Hipoteza\n", "\n", "### Sprawdzenie założeń\n", - "\n", + "\n" + ], + "metadata": { + "collapsed": false + } + }, + { + "cell_type": "markdown", + "source": [ "## Test" ], "metadata": { "collapsed": false } }, + { + "cell_type": "code", + "execution_count": 561, + "outputs": [], + "source": [], + "metadata": { + "collapsed": false, + "pycharm": { + "name": "#%%\n" + } + } + }, + { + "cell_type": "markdown", + "source": [ + "## Wniosek" + ], + "metadata": { + "collapsed": false + } + }, { "cell_type": "markdown", "source": [ @@ -516,7 +562,7 @@ }, { "cell_type": "code", - "execution_count": 526, + "execution_count": 562, "outputs": [ { "name": "stdout", @@ -557,7 +603,7 @@ }, { "cell_type": "code", - "execution_count": 527, + "execution_count": 563, "outputs": [ { "name": "stdout", @@ -571,7 +617,7 @@ "p: 1.0\n", "Wartość statystyki testowej z próby: [7.89079918]\n", "Wartości statystyk z prób boostrapowych:\n", - "[-0.05395381], [0.15520269], [-0.2285374], [1.05735295], [2.77041326], ... (i 95 pozostałych)\n", + "[-2.17000034], [-0.74957325], [-1.53238091], [-2.4791557], [1.17261618], ... (i 95 pozostałych)\n", "\n", "\n" ] @@ -579,7 +625,7 @@ { "data": { "text/plain": "
", - "image/png": "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\n" + "image/png": "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\n" }, "metadata": { "needs_background": "light" From 520328538ec265223b05e659e570b7dbbf9ae498 Mon Sep 17 00:00:00 2001 From: s444501 Date: Wed, 18 May 2022 06:51:04 +0200 Subject: [PATCH 3/4] test 3 --- bootstrap-t.ipynb | 68 ++++++++++++++++++++++++----------------------- 1 file changed, 35 insertions(+), 33 deletions(-) diff --git a/bootstrap-t.ipynb b/bootstrap-t.ipynb index e6eec77..0f694a4 100644 --- a/bootstrap-t.ipynb +++ b/bootstrap-t.ipynb @@ -23,6 +23,19 @@ "Wszystkie rodzaje testów są testami parametrycznymi, a co za tym idzie nasze mierzone zmienne ilościowe powinny mieć rozkład normalny." ] }, + { + "cell_type": "markdown", + "source": [ + "## Testowanie hipotez metodą bootstrap\n", + "\n", + "**Bootstrap** – metoda szacowania (estymacji) wyników poprzez wielokrotne losowanie ze zwracaniem z próby. Polega ona na utworzeniu nowego rozkładu wyników, na podstawie posiadanych danych, poprzez wielokrotne losowanie wartości z posiadanej próby. Metoda ze zwracaniem polega na tym, że po wylosowaniu danej wartości, “wraca” ona z powrotem do zbioru.\n", + "\n", + "Metoda bootstrapowa znajduje zastosowanie w sytuacji, w której nie znamy rozkładu z populacji z której pochodzi próbka lub w przypadku rozkładów małych lub asymetrycznych. W takim wypadku, dzięki tej metodzie, wyniki testów parametrycznych i analiz opartych o modele liniowe są bardziej precyzyjne. Zazwyczaj losuje się wiele próbek, np. 2000 czy 5000." + ], + "metadata": { + "collapsed": false + } + }, { "cell_type": "markdown", "source": [ @@ -34,7 +47,7 @@ }, { "cell_type": "code", - "execution_count": 546, + "execution_count": 582, "metadata": { "pycharm": { "name": "#%%\n" @@ -51,7 +64,7 @@ }, { "cell_type": "code", - "execution_count": 547, + "execution_count": 583, "metadata": {}, "outputs": [], "source": [ @@ -60,7 +73,7 @@ }, { "cell_type": "code", - "execution_count": 548, + "execution_count": 584, "metadata": {}, "outputs": [], "source": [ @@ -71,7 +84,7 @@ }, { "cell_type": "code", - "execution_count": 549, + "execution_count": 585, "metadata": {}, "outputs": [], "source": [ @@ -92,7 +105,7 @@ }, { "cell_type": "code", - "execution_count": 550, + "execution_count": 586, "metadata": { "pycharm": { "name": "#%%\n" @@ -114,7 +127,7 @@ }, { "cell_type": "code", - "execution_count": 551, + "execution_count": 587, "metadata": {}, "outputs": [], "source": [ @@ -132,7 +145,7 @@ }, { "cell_type": "code", - "execution_count": 552, + "execution_count": 588, "metadata": {}, "outputs": [], "source": [ @@ -150,7 +163,7 @@ }, { "cell_type": "code", - "execution_count": 553, + "execution_count": 589, "metadata": {}, "outputs": [], "source": [ @@ -178,7 +191,7 @@ }, { "cell_type": "code", - "execution_count": 554, + "execution_count": 590, "metadata": {}, "outputs": [], "source": [ @@ -217,7 +230,7 @@ }, { "cell_type": "code", - "execution_count": 555, + "execution_count": 591, "metadata": {}, "outputs": [ { @@ -268,20 +281,9 @@ "\n" ] }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Testowanie hipotez metodą bootstrap\n", - "\n", - "**Bootstrap** – metoda szacowania (estymacji) wyników poprzez wielokrotne losowanie ze zwracaniem z próby. Polega ona na utworzeniu nowego rozkładu wyników, na podstawie posiadanych danych, poprzez wielokrotne losowanie wartości z posiadanej próby. Metoda ze zwracaniem polega na tym, że po wylosowaniu danej wartości, “wraca” ona z powrotem do zbioru.\n", - "\n", - "Metoda bootstrapowa znajduje zastosowanie w sytuacji, w której nie znamy rozkładu z populacji z której pochodzi próbka lub w przypadku rozkładów małych lub asymetrycznych. W takim wypadku, dzięki tej metodzie, wyniki testów parametrycznych i analiz opartych o modele liniowe są bardziej precyzyjne. Zazwyczaj losuje się wiele próbek, np. 2000 czy 5000." - ] - }, { "cell_type": "code", - "execution_count": 556, + "execution_count": 592, "metadata": { "pycharm": { "name": "#%%\n" @@ -309,7 +311,7 @@ }, { "cell_type": "code", - "execution_count": 557, + "execution_count": 593, "metadata": { "collapsed": false, "pycharm": { @@ -344,7 +346,7 @@ }, { "cell_type": "code", - "execution_count": 558, + "execution_count": 594, "metadata": { "collapsed": false, "pycharm": { @@ -366,7 +368,7 @@ }, { "cell_type": "code", - "execution_count": 559, + "execution_count": 595, "metadata": { "collapsed": false, "pycharm": { @@ -388,7 +390,7 @@ }, { "cell_type": "code", - "execution_count": 560, + "execution_count": 596, "metadata": { "collapsed": false, "pycharm": { @@ -421,7 +423,7 @@ }, { "cell_type": "code", - "execution_count": 561, + "execution_count": 597, "outputs": [], "source": [ "dataset = pd.read_csv('experiment_data.csv')\n", @@ -461,7 +463,7 @@ }, { "cell_type": "code", - "execution_count": 561, + "execution_count": 597, "outputs": [], "source": [], "metadata": { @@ -505,7 +507,7 @@ }, { "cell_type": "code", - "execution_count": 561, + "execution_count": 597, "outputs": [], "source": [], "metadata": { @@ -562,7 +564,7 @@ }, { "cell_type": "code", - "execution_count": 562, + "execution_count": 598, "outputs": [ { "name": "stdout", @@ -603,7 +605,7 @@ }, { "cell_type": "code", - "execution_count": 563, + "execution_count": 599, "outputs": [ { "name": "stdout", @@ -617,7 +619,7 @@ "p: 1.0\n", "Wartość statystyki testowej z próby: [7.89079918]\n", "Wartości statystyk z prób boostrapowych:\n", - "[-2.17000034], [-0.74957325], [-1.53238091], [-2.4791557], [1.17261618], ... (i 95 pozostałych)\n", + "[-1.2615733], [-0.73536146], [0.56657145], [-0.63034854], [0.27066658], ... (i 95 pozostałych)\n", "\n", "\n" ] @@ -625,7 +627,7 @@ { "data": { "text/plain": "
", - "image/png": "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\n" + "image/png": "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\n" }, "metadata": { "needs_background": "light" From 83ec33fd15e90347dec2cf25a86d6a0d8301890e Mon Sep 17 00:00:00 2001 From: Wirus006 Date: Wed, 18 May 2022 11:20:39 +0200 Subject: [PATCH 4/4] code and data refactor --- bootstrap-t.ipynb | 620 ++++++++++++++------------- experiment_data.csv | 1000 +++++++++++++++++++++---------------------- generateData.py | 32 ++ 3 files changed, 854 insertions(+), 798 deletions(-) create mode 100644 generateData.py diff --git a/bootstrap-t.ipynb b/bootstrap-t.ipynb index 0f694a4..d8baa0d 100644 --- a/bootstrap-t.ipynb +++ b/bootstrap-t.ipynb @@ -17,37 +17,45 @@ "Wyróżniamy 3 wersję testu t:\n", "\n", "1. test t Studenta dla jednej próby\n", - "2. test t Studenta dla prób niezależnych\n", - "3. test t Studenta dla prób zależnych\n", - "\n", - "Wszystkie rodzaje testów są testami parametrycznymi, a co za tym idzie nasze mierzone zmienne ilościowe powinny mieć rozkład normalny." + "2. test t Studenta dla prób niezależnych \n", + "3. test t Studenta dla prób zależnych" ] }, { "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Test Shapiro Wilka\n", + "\n", + "Wszystkie rodzaje testów są testami parametrycznymi, a co za tym idzie nasze mierzone zmienne ilościowe powinny mieć rozkład normalny. \n", + "Dzięki testowi Shapiro Wilka możemy sprawdzić to założenie." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": false + }, "source": [ "## Testowanie hipotez metodą bootstrap\n", "\n", "**Bootstrap** – metoda szacowania (estymacji) wyników poprzez wielokrotne losowanie ze zwracaniem z próby. Polega ona na utworzeniu nowego rozkładu wyników, na podstawie posiadanych danych, poprzez wielokrotne losowanie wartości z posiadanej próby. Metoda ze zwracaniem polega na tym, że po wylosowaniu danej wartości, “wraca” ona z powrotem do zbioru.\n", "\n", "Metoda bootstrapowa znajduje zastosowanie w sytuacji, w której nie znamy rozkładu z populacji z której pochodzi próbka lub w przypadku rozkładów małych lub asymetrycznych. W takim wypadku, dzięki tej metodzie, wyniki testów parametrycznych i analiz opartych o modele liniowe są bardziej precyzyjne. Zazwyczaj losuje się wiele próbek, np. 2000 czy 5000." - ], - "metadata": { - "collapsed": false - } + ] }, { "cell_type": "markdown", - "source": [ - "# Definicje funkcji" - ], "metadata": { "collapsed": false - } + }, + "source": [ + "# Definicje funkcji" + ] }, { "cell_type": "code", - "execution_count": 582, + "execution_count": 134, "metadata": { "pycharm": { "name": "#%%\n" @@ -64,7 +72,7 @@ }, { "cell_type": "code", - "execution_count": 583, + "execution_count": 135, "metadata": {}, "outputs": [], "source": [ @@ -73,7 +81,7 @@ }, { "cell_type": "code", - "execution_count": 584, + "execution_count": 136, "metadata": {}, "outputs": [], "source": [ @@ -84,7 +92,7 @@ }, { "cell_type": "code", - "execution_count": 585, + "execution_count": 137, "metadata": {}, "outputs": [], "source": [ @@ -96,16 +104,16 @@ " all_stats = len(t_stat_list)\n", " stats_different_count = 0\n", " for t_stat_boot in t_stat_list:\n", - " if alternative is Alternatives.LESS and t_stat_boot < t_stat_sample:\n", + " if alternative is Alternatives.LESS and t_stat_boot > t_stat_sample:\n", " stats_different_count += 1 \n", - " elif alternative is Alternatives.GREATER and t_stat_boot > t_stat_sample:\n", + " elif alternative is Alternatives.GREATER and t_stat_boot < t_stat_sample:\n", " stats_different_count += 1\n", " return stats_different_count / all_stats" ] }, { "cell_type": "code", - "execution_count": 586, + "execution_count": 138, "metadata": { "pycharm": { "name": "#%%\n" @@ -127,7 +135,7 @@ }, { "cell_type": "code", - "execution_count": 587, + "execution_count": 139, "metadata": {}, "outputs": [], "source": [ @@ -145,7 +153,7 @@ }, { "cell_type": "code", - "execution_count": 588, + "execution_count": 140, "metadata": {}, "outputs": [], "source": [ @@ -163,7 +171,7 @@ }, { "cell_type": "code", - "execution_count": 589, + "execution_count": 141, "metadata": {}, "outputs": [], "source": [ @@ -191,7 +199,7 @@ }, { "cell_type": "code", - "execution_count": 590, + "execution_count": 142, "metadata": {}, "outputs": [], "source": [ @@ -219,71 +227,9 @@ " print()" ] }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Test Shapiro Wilka\n", - "\n", - "Wszystkie rodzaje testów są testami parametrycznymi, a co za tym idzie nasze mierzone zmienne ilościowe powinny mieć rozkład normalny." - ] - }, { "cell_type": "code", - "execution_count": 591, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Female height: Dane mają rozkład normalny.\n", - "Male height: Dane mają rozkład normalny.\n", - "Weight before: Dane mają rozkład normalny.\n", - "Weight after: Dane mają rozkład normalny.\n" - ] - } - ], - "source": [ - "ALPHA = 0.05\n", - "female_heights = dataset['Female height'].to_numpy()\n", - "shapiro_test = shapiro(female_heights)\n", - "\n", - "if shapiro_test.pvalue > ALPHA:\n", - " print(\"Female height: Dane mają rozkład normalny.\")\n", - "else:\n", - " print(\"Female height: Dane nie mają rozkładu normalnego.\")\n", - "\n", - "male_heights = dataset['Male height'].to_numpy()\n", - "shapiro_test = shapiro(male_heights)\n", - "\n", - "if shapiro_test.pvalue > ALPHA:\n", - " print(\"Male height: Dane mają rozkład normalny.\")\n", - "else:\n", - " print(\"Male height: Dane nie mają rozkładu normalnego.\")\n", - "\n", - "weights_before = dataset['Weight before'].to_numpy()\n", - "shapiro_test = shapiro(weights_before)\n", - "\n", - "if shapiro_test.pvalue > ALPHA:\n", - " print(\"Weight before: Dane mają rozkład normalny.\")\n", - "else:\n", - " print(\"Weight before: Dane nie mają rozkładu normalnego.\")\n", - "\n", - "weights_after = dataset['Weight after'].to_numpy()\n", - "shapiro_test = shapiro(weights_after)\n", - "\n", - "if shapiro_test.pvalue > ALPHA:\n", - " print(\"Weight after: Dane mają rozkład normalny.\")\n", - "else:\n", - " print(\"Weight after: Dane nie mają rozkładu normalnego.\")\n", - "\n", - "\n" - ] - }, - { - "cell_type": "code", - "execution_count": 592, + "execution_count": 143, "metadata": { "pycharm": { "name": "#%%\n" @@ -298,20 +244,9 @@ " yield data.iloc[indices, :]" ] }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Test t studenta dla jednej próby\n", - "\n", - "**Test t Studenta dla jednej próby** wykorzystujemy gdy chcemy porównać średnią “teoretyczną” ze średnią, którą faktycznie możemy zaobserwować w naszej bazie danych. Średnia teoretyczna to średnia pochodząca z innych badań lub po prostu bez większych uzasadnień pochodząca z naszej głowy.\n", - "\n", - "Wyobraźmy sobie, że mamy dane z takimi zmiennymi jak wzrost pewnej grupy ludzi. Dzięki testowi t Studenta dla jednej próby możemy dowiedzieć się np. czy wzrost naszego młodszego brata wynoszący 155cm odbiega znacząco od średniej wzrostu tej grupy. Hipoteza zerowa w takim badaniu wyglądałaby następująco H0: Badana próba została wylosowana z populacji, w której wzrost osób wynosi średnio 155cm. Z kolei hipoteza alternatywna będzie brzmiała H1: Badana próba nie została wylosowana z populacji gdzie średni wzrost wynosi 155cm\n" - ] - }, { "cell_type": "code", - "execution_count": 593, + "execution_count": 144, "metadata": { "collapsed": false, "pycharm": { @@ -332,21 +267,9 @@ " return p, t, ts" ] }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Test t studenta dla prób niezależnych\n", - "\n", - "**Test t Studenta dla prób niezależnych** jest najczęściej stosowaną metodą statystyczną w celu porównania średnich z dwóch niezależnych od siebie grup. Wykorzystujemy go gdy chcemy porównać dwie grupy pod względem jakiejś zmiennej ilościowej. Na przykład gdy chcemy porównać średni wzrost kobiet i mężczyzn w danej grupie.\n", - "\n", - "Zazwyczaj dwie średnie z różnych od siebie grup będą się różnić. Test t Studenta powie nam jednak czy owe różnice są istotne statystycznie – czy nie są przypadkowe. Hipoteza zerowa takiego testu będzie brzmiała H0: Średni wzrost w grupie mężczyzn jest taki sam jak średni w grupie kobiet. Hipoteza alternatywna z kolei H1: Kobiety będą różnić się od mężczyzn pod wzrostu.\n", - "Jeśli wynik testu t Studenta będzie istotny na poziomie p < 0,05 możemy odrzucić hipotezę zerową na rzecz hipotezy alternatywnej.\n" - ] - }, { "cell_type": "code", - "execution_count": 594, + "execution_count": 145, "metadata": { "collapsed": false, "pycharm": { @@ -368,7 +291,7 @@ }, { "cell_type": "code", - "execution_count": 595, + "execution_count": 146, "metadata": { "collapsed": false, "pycharm": { @@ -390,7 +313,7 @@ }, { "cell_type": "code", - "execution_count": 596, + "execution_count": 147, "metadata": { "collapsed": false, "pycharm": { @@ -414,198 +337,171 @@ }, { "cell_type": "markdown", + "metadata": { + "collapsed": false + }, "source": [ "# Wczytanie danych" - ], - "metadata": { - "collapsed": false - } + ] }, { "cell_type": "code", - "execution_count": 597, - "outputs": [], - "source": [ - "dataset = pd.read_csv('experiment_data.csv')\n", - "heights_female = pd.DataFrame(dataset['Female height'].to_numpy()) # xd\n", - "heights_male = pd.DataFrame(dataset['Male height'].to_numpy())\n", - "weights_before = pd.DataFrame(dataset['Weight before'].to_numpy())\n", - "weights_after = pd.DataFrame(dataset['Weight after'].to_numpy())" - ], + "execution_count": 148, "metadata": { "collapsed": false, "pycharm": { "name": "#%%\n" } - } - }, - { - "cell_type": "markdown", - "source": [ - "# Jedna próba\n", - "\n", - "### Hipoteza\n", - "\n", - "### Sprawdzenie założeń\n" - ], - "metadata": { - "collapsed": false - } - }, - { - "cell_type": "markdown", - "source": [ - "## Test\n" - ], - "metadata": { - "collapsed": false - } - }, - { - "cell_type": "code", - "execution_count": 597, - "outputs": [], - "source": [], - "metadata": { - "collapsed": false, - "pycharm": { - "name": "#%%\n" - } - } - }, - { - "cell_type": "markdown", - "source": [ - "## Wniosek" - ], - "metadata": { - "collapsed": false - } - }, - { - "cell_type": "markdown", - "source": [ - "# Dwie próby niezależne\n", - "\n", - "### Hipoteza\n", - "\n", - "### Sprawdzenie założeń\n", - "\n" - ], - "metadata": { - "collapsed": false - } - }, - { - "cell_type": "markdown", - "source": [ - "## Test" - ], - "metadata": { - "collapsed": false - } - }, - { - "cell_type": "code", - "execution_count": 597, - "outputs": [], - "source": [], - "metadata": { - "collapsed": false, - "pycharm": { - "name": "#%%\n" - } - } - }, - { - "cell_type": "markdown", - "source": [ - "## Wniosek" - ], - "metadata": { - "collapsed": false - } - }, - { - "cell_type": "markdown", - "source": [ - "# Dwie próby zależne\n", - "\n", - "W odróżnieniu od testu dla prób niezależnych, gdzie porównujemy dwie grupy, ten rodzaj testu stosujemy gdy poddajemy analizie tą samą pojedynczą grupę, ale dwukrotnie w czasie.\n", - "\n", - "**Przykład**: Porównane zostały wagi przed dietą i po diecie.\n" - ], - "metadata": { - "collapsed": false - } - }, - { - "cell_type": "markdown", - "source": [ - "### Hipoteza\n", - "H0 - Średnia waga nie uległa zmianie po zastosowaniu diety\n", - "H1 - Średnia waga po diecie jest znacząco mniejsza od wagi przed dietą\n" - ], - "metadata": { - "collapsed": false - } - }, - { - "cell_type": "markdown", - "source": [ - "\n", - "### Sprawdzenie założeń\n", - "\n", - "Założenie o rozkładzie normalnym danych - sprawdzane testem Shapiro-Wilka" - ], - "metadata": { - "collapsed": false - } - }, - { - "cell_type": "code", - "execution_count": 598, + }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "p = 0.0627\n" + "0 169.5557\n", + "dtype: float64\n", + "0 175.1417\n", + "dtype: float64\n", + "0 79.6342\n", + "dtype: float64\n", + "0 76.5602\n", + "dtype: float64\n" ] } ], "source": [ - "shapiro_test = shapiro(weights_before)\n", - "print(f\"p = {round(shapiro_test.pvalue,4)}\")" - ], + "dataset = pd.read_csv('experiment_data2.csv')\n", + "heights_female = pd.DataFrame(dataset['Female height'].to_numpy()) # xd\n", + "heights_male = pd.DataFrame(dataset['Male height'].to_numpy())\n", + "weights_before = pd.DataFrame(dataset['Weight before'].to_numpy())\n", + "weights_after = pd.DataFrame(dataset['Weight after'].to_numpy())\n", + "print(np.mean(heights_female))\n", + "print(np.mean(heights_male))\n", + "print(np.mean(weights_before))\n", + "print(np.mean(weights_after))\n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": false + }, + "source": [ + "# Jedna próba\n", + "\n", + "**Test t Studenta dla jednej próby** wykorzystujemy gdy chcemy porównać średnią “teoretyczną” ze średnią, którą faktycznie możemy zaobserwować w naszej bazie danych. Średnia teoretyczna to średnia pochodząca z innych badań lub po prostu bez większych uzasadnień pochodząca z naszej głowy.\n", + "\n", + "Wyobraźmy sobie, że mamy dane z takimi zmiennymi jak wzrost pewnej grupy ludzi. Dzięki testowi t Studenta dla jednej próby możemy dowiedzieć się np. czy wzrost naszego młodszego brata wynoszący 155cm odbiega znacząco od średniej wzrostu tej grupy.\n", + "\n", + "### Hipoteza\n", + "\n", + "*H0: Badana próba została wylosowana z populacji, w której wzrost osób wynosi średnio 155cm.* \n", + "*H1: Badana próba nie została wylosowana z populacji gdzie średni wzrost wynosi 155cm.*\n", + "\n", + "### Sprawdzenie założeń\n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": false + }, + "source": [ + "## Test\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, "metadata": { "collapsed": false, "pycharm": { "name": "#%%\n" } - } + }, + "outputs": [], + "source": [] }, { "cell_type": "markdown", - "source": [ - "Wartość **p** w teście Shapiro-Wilka powyżej **0.05** -> Dane prawdopodobnie mają rozkład normalny" - ], "metadata": { "collapsed": false - } + }, + "source": [ + "## Wniosek" + ] }, { "cell_type": "markdown", - "source": [ - "## Test" - ], "metadata": { "collapsed": false - } + }, + "source": [ + "# Dwie próby niezależne\n", + "\n", + "**Test t Studenta dla prób niezależnych** jest najczęściej stosowaną metodą statystyczną w celu porównania średnich z dwóch niezależnych od siebie grup. Wykorzystujemy go gdy chcemy porównać dwie grupy pod względem jakiejś zmiennej ilościowej. Na przykład gdy chcemy porównać średni wzrost kobiet i mężczyzn w danej grupie.\n", + "Zazwyczaj dwie średnie z różnych od siebie grup będą się różnić. Test t Studenta powie nam jednak czy owe różnice są istotne statystycznie – czy nie są przypadkowe.\n", + "Jeśli wynik testu t Studenta będzie istotny na poziomie p < 0,05 możemy odrzucić hipotezę zerową na rzecz hipotezy alternatywnej.\n", + "\n", + "## Hipoteza\n", + "\n", + "*H0: Średni wzrost w grupie mężczyzn jest taki sam jak średni w grupie kobiet. Hipoteza alternatywna z kolei* \n", + "*H1: Kobiety będą niższe od mężczyzn pod względem wzrostu.*\n", + "\n", + "## Sprawdzenie założeń\n", + "\n", + "Założenie o rozkładzie normalnym danych - sprawdzane testem Shapiro-Wilka" + ] }, { "cell_type": "code", - "execution_count": 599, + "execution_count": 149, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "p = 0.791\n", + "p = 0.7535\n" + ] + } + ], + "source": [ + "shapiro_test = shapiro(heights_female)\n", + "print(f\"p = {round(shapiro_test.pvalue,4)}\")\n", + "\n", + "shapiro_test = shapiro(heights_male)\n", + "print(f\"p = {round(shapiro_test.pvalue,4)}\")" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": false + }, + "source": [ + "Wartości **p** w teście Shapiro-Wilka powyżej **0.05** -> Dane prawdopodobnie mają rozkład normalny" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": false + }, + "source": [ + "## Test" + ] + }, + { + "cell_type": "code", + "execution_count": 150, + "metadata": { + "collapsed": false, + "pycharm": { + "name": "#%%\n" + } + }, "outputs": [ { "name": "stdout", @@ -616,18 +512,156 @@ "Hipoteza: średnie są takie same\n", "Hipoteza alternatywna: średnia jest mniejsza\n", "\n", - "p: 1.0\n", - "Wartość statystyki testowej z próby: [7.89079918]\n", + "p: 0.0\n", + "Wartość statystyki testowej z próby: [8.04931557]\n", "Wartości statystyk z prób boostrapowych:\n", - "[-1.2615733], [-0.73536146], [0.56657145], [-0.63034854], [0.27066658], ... (i 95 pozostałych)\n", + "[0.36930777], [0.23100612], [-0.6106529], [-0.47586438], [0.86529699], ... (i 95 pozostałych)\n", "\n", "\n" ] }, { "data": { - "text/plain": "
", - "image/png": "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\n" + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "p, t, ts = bootstrap_independent(heights_male, heights_female)\n", + "ts = [x[0] for x in ts]\n", + "draw_distribution(ts, t)" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": false + }, + "source": [ + "## Wniosek" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": false + }, + "source": [ + "# Dwie próby zależne\n", + "\n", + "W odróżnieniu od testu dla prób niezależnych, gdzie porównujemy dwie grupy, ten rodzaj testu stosujemy gdy poddajemy analizie tą samą pojedynczą grupę, ale dwukrotnie w czasie.\n", + "\n", + "**Przykład**: Porównane zostały wagi przed dietą i po diecie.\n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": false + }, + "source": [ + "### Hipoteza\n", + "H0 - Średnia waga nie uległa zmianie po zastosowaniu diety\n", + "H1 - Średnia waga po diecie jest znacząco mniejsza od wagi przed dietą\n" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": false + }, + "source": [ + "\n", + "### Sprawdzenie założeń\n", + "\n", + "Założenie o rozkładzie normalnym danych - sprawdzane testem Shapiro-Wilka" + ] + }, + { + "cell_type": "code", + "execution_count": 151, + "metadata": { + "collapsed": false, + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "p = 0.3308\n", + "p = 0.4569\n" + ] + } + ], + "source": [ + "shapiro_test = shapiro(weights_before)\n", + "print(f\"p = {round(shapiro_test.pvalue,4)}\")\n", + "\n", + "shapiro_test = shapiro(weights_after)\n", + "print(f\"p = {round(shapiro_test.pvalue,4)}\")" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": false + }, + "source": [ + "Wartości **p** w teście Shapiro-Wilka powyżej **0.05** -> Dane prawdopodobnie mają rozkład normalny" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "collapsed": false + }, + "source": [ + "## Test" + ] + }, + { + "cell_type": "code", + "execution_count": 152, + "metadata": { + "collapsed": false, + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Wyniki bootstrapowej wersji testu T-studenta\n", + "\n", + "Hipoteza: średnie są takie same\n", + "Hipoteza alternatywna: średnia jest mniejsza\n", + "\n", + "p: 0.0\n", + "Wartość statystyki testowej z próby: [48.30834167]\n", + "Wartości statystyk z prób boostrapowych:\n", + "[0.35583403], [0.29159863], [-1.32145739], [0.13260175], [0.79403136], ... (i 95 pozostałych)\n", + "\n", + "\n" + ] + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] }, "metadata": { "needs_background": "light" @@ -639,60 +673,50 @@ "p, t, ts = bootstrap_dependent(weights_before, weights_after)\n", "ts = [x[0] for x in ts]\n", "draw_distribution(ts, t)" - ], - "metadata": { - "collapsed": false, - "pycharm": { - "name": "#%%\n" - } - } + ] }, { "cell_type": "markdown", + "metadata": { + "collapsed": false + }, "source": [ "## Wniosek\n", "\n", "???" - ], - "metadata": { - "collapsed": false - } + ] }, { "cell_type": "code", "execution_count": null, - "outputs": [], - "source": [], "metadata": { "collapsed": false, "pycharm": { "name": "#%%\n" } - } + }, + "outputs": [], + "source": [] }, { "cell_type": "code", + "execution_count": null, "metadata": { "pycharm": { "name": "#%%\n" } }, - "source": [], - "execution_count": null, - "outputs": [] + "outputs": [], + "source": [] } ], "metadata": { "interpreter": { - "hash": "11938c6bc6919ae2720b4d5011047913343b08a43b18698fd82dedb0d4417594" + "hash": "1b132c2ed43285dcf39f6d01712959169a14a721cf314fe69015adab49bb1fd1" }, "kernelspec": { "display_name": "Python 3.8.10 64-bit", - "metadata": { - "interpreter": { - "hash": "767d51c1340bd893661ea55ea3124f6de3c7a262a8b4abca0554b478b1e2ff90" - } - }, + "language": "python", "name": "python3" }, "language_info": { @@ -705,9 +729,9 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.9.1" + "version": "3.8.10" } }, "nbformat": 4, "nbformat_minor": 2 -} \ No newline at end of file +} diff --git a/experiment_data.csv b/experiment_data.csv index 7803fa8..edafebc 100644 --- a/experiment_data.csv +++ b/experiment_data.csv @@ -1,501 +1,501 @@ Weight before,Weight after,Male height,Female height -94.65,72.55,183.83,152.88 -85.63,119.64,157.09,138.14 -69.57,70.82,205.51,148.7 -59.23,62.22,178.77,176.52 -23.04,54.95,229.87,178.44 -41.96,65.77,178.56,170.29 -87.69,92.12,160.97,153.77 -23.6,67.21,123.92,165.65 -96.17,90.22,211.43,127.89 -32.02,68.08,164.72,207.55 -81.52,91.67,143.74,211.9 -49.49,74.99,142.57,117.28 -111.48,55.91,151.0,169.03 -103.29,64.59,124.73,162.07 -98.41,26.29,141.13,167.59 -55.69,112.81,210.93,154.73 -112.75,69.14,201.46,161.04 -61.9,78.48,123.8,165.84 -93.98,82.49,198.95,194.27 -30.32,79.6,205.72,176.77 -156.03,64.66,117.88,189.42 -91.66,60.93,178.56,173.03 -117.4,93.89,182.25,201.73 -111.3,86.4,143.76,146.82 -86.77,75.96,188.33,129.09 -85.01,69.71,192.77,216.31 -104.5,83.53,202.45,153.81 -74.93,88.73,216.67,152.48 -99.37,87.49,124.29,235.76 -61.75,70.46,165.1,264.41 -115.92,96.84,181.12,137.0 -108.17,11.55,186.18,184.3 -49.2,59.04,147.0,160.46 -97.34,96.89,159.61,116.04 -73.58,92.43,164.62,181.83 -72.23,67.53,160.2,167.6 -83.59,80.67,192.59,116.54 -62.15,87.32,173.94,189.97 -36.26,58.22,142.88,132.67 -19.95,63.46,171.54,139.81 -70.74,78.1,162.96,160.41 -98.38,81.38,171.19,202.46 -91.52,81.0,164.23,159.94 -74.19,61.25,171.05,118.92 -137.72,58.91,107.04,179.47 -49.5,28.77,152.9,180.96 -47.34,45.41,149.18,190.02 -115.34,62.53,165.38,140.1 -78.36,56.97,203.64,115.99 -98.46,107.7,160.68,181.58 -69.09,52.86,195.86,158.86 -110.1,86.81,217.24,143.66 -123.86,70.78,186.32,215.42 -55.12,58.74,194.3,134.13 -49.89,47.91,145.38,177.99 -106.64,43.91,172.47,186.02 -85.46,46.44,148.18,185.01 -25.17,69.09,191.67,202.62 -28.02,87.02,191.78,154.73 -50.77,107.23,169.7,157.06 -138.09,73.89,187.89,150.17 -68.63,52.33,183.53,200.46 -84.62,59.52,194.7,214.83 -96.16,49.11,194.41,158.56 -45.93,82.24,164.98,184.56 -29.67,52.86,203.88,149.16 -47.87,64.31,156.14,192.99 -76.39,110.4,225.16,189.92 -39.98,106.05,160.64,177.23 -142.65,110.76,154.78,158.12 -96.86,50.24,180.52,133.44 -78.83,79.85,168.82,176.48 -113.3,57.59,173.87,167.99 -31.69,72.82,153.51,110.87 -55.17,63.31,211.79,157.61 -44.93,79.61,175.93,149.69 -43.14,85.89,151.81,148.43 -93.38,68.36,144.09,163.6 -48.7,54.16,158.07,182.09 -61.53,74.41,156.91,135.67 -74.05,80.26,209.89,131.86 -85.51,35.54,206.7,145.54 -91.0,69.8,133.49,152.83 -35.36,54.92,183.47,133.77 -121.18,46.15,171.83,110.94 -101.35,65.64,163.5,117.8 -79.73,52.2,151.04,157.01 -23.66,92.72,158.51,138.15 -64.22,54.38,205.66,167.15 -107.4,81.52,154.5,95.18 -96.72,56.94,135.18,184.62 -85.99,50.18,122.59,182.75 -45.28,62.87,144.46,185.89 -138.5,95.61,198.09,171.96 -41.45,21.63,163.69,148.39 -102.4,54.34,148.89,180.09 -104.72,43.78,265.3,156.7 -72.09,69.03,183.14,187.05 -50.4,42.18,175.05,164.88 -120.62,54.17,154.41,178.49 -38.29,43.24,201.76,198.75 -80.31,77.61,149.42,184.43 -82.47,47.92,137.16,113.75 -98.56,54.95,191.85,124.03 -87.94,58.79,221.58,237.36 -111.64,94.53,156.43,135.98 -70.08,27.21,188.38,168.95 -98.04,52.76,183.95,108.7 -108.62,70.97,129.47,162.51 -111.56,74.11,208.25,172.3 -33.67,57.14,158.93,163.95 -116.8,51.81,198.46,145.81 -32.81,113.06,138.0,185.72 -109.34,66.28,193.16,227.87 -79.85,54.09,223.18,223.23 -85.46,84.13,150.92,152.63 -42.21,64.99,132.55,174.55 -115.17,73.57,117.04,159.8 -69.13,54.01,205.76,183.42 -122.07,74.15,264.82,220.11 -88.69,93.31,226.92,167.15 -60.27,78.85,204.8,173.5 -64.37,84.35,176.15,188.42 -42.37,85.01,182.16,198.59 -87.66,67.29,200.14,180.11 -76.06,53.62,215.4,170.26 -90.57,44.03,195.25,136.25 -68.14,59.62,164.71,158.55 --8.27,27.76,166.16,136.38 -70.47,73.79,179.63,159.16 -78.27,83.31,137.37,199.6 -59.81,82.09,185.67,142.9 -80.15,21.22,156.33,181.12 -86.36,69.79,214.68,160.89 -95.53,31.13,204.75,225.02 -85.14,9.18,136.72,144.57 -33.93,84.25,203.41,165.84 -75.97,39.26,154.72,185.17 -78.27,72.09,183.76,121.51 -83.09,59.44,184.55,196.62 -87.42,51.15,143.97,189.23 -125.23,87.01,195.56,172.42 -90.51,41.17,164.88,178.18 -100.62,87.54,201.14,171.68 -135.51,39.81,151.2,144.29 -76.21,40.76,142.47,164.84 -74.54,74.04,196.62,181.55 -53.19,48.49,202.38,163.4 -112.9,59.8,179.93,187.19 -86.12,34.71,171.61,218.13 -66.51,81.36,146.52,180.46 -21.65,54.2,179.6,166.95 -105.42,70.45,117.99,116.53 -103.42,75.08,176.68,181.34 -51.64,31.05,128.22,164.97 -94.84,81.96,197.04,161.79 -81.91,17.75,131.41,183.32 -25.0,59.55,143.04,196.48 -136.62,77.55,193.42,161.08 -84.46,71.99,101.03,204.59 -70.68,40.27,206.15,220.28 -54.32,60.05,173.17,231.2 -69.24,86.26,188.4,124.53 -101.03,76.85,153.04,137.45 -61.52,67.79,158.76,175.11 -56.67,65.42,169.92,159.84 -53.2,55.16,178.49,203.75 -69.25,77.88,172.41,165.22 -89.44,76.74,187.69,185.82 -47.08,70.9,128.14,149.73 --13.68,24.24,148.92,170.59 -103.55,65.61,162.05,187.61 -115.09,78.17,203.79,146.5 -84.27,68.02,192.74,161.12 -57.12,62.46,162.49,197.09 -25.38,83.6,137.11,157.64 -74.31,32.65,199.69,218.68 -66.43,47.58,194.65,142.31 -29.52,48.81,187.6,162.94 -123.91,78.35,193.67,127.23 -51.69,75.99,182.79,148.92 -80.18,50.4,198.58,180.85 -29.16,29.51,138.5,176.56 -46.62,117.95,177.98,135.42 -73.38,49.4,178.07,206.36 -117.83,71.84,203.65,168.0 -68.32,62.42,108.46,89.48 -78.7,57.59,244.7,124.97 -129.92,85.56,138.85,226.28 -114.31,79.86,140.04,150.13 -68.11,66.17,200.8,195.43 -52.93,35.43,110.69,178.04 -82.85,85.68,197.02,168.19 -87.14,106.65,186.91,140.93 -77.3,61.62,115.76,146.85 -63.42,58.25,180.27,138.26 -82.41,49.68,178.18,184.65 -103.54,84.75,180.2,167.91 -21.74,97.03,164.9,190.87 -101.94,57.31,176.96,172.74 -88.44,59.72,179.12,159.69 -35.55,93.31,214.91,208.81 -85.66,71.22,225.85,156.0 -141.36,97.2,169.87,225.0 -32.94,78.83,220.69,94.34 -69.1,93.12,165.98,172.54 -88.8,41.16,192.25,146.19 -105.95,34.46,188.58,123.67 -34.27,60.11,108.86,162.88 -89.81,102.12,125.52,127.65 -86.16,74.57,212.8,134.5 -53.31,53.63,233.09,153.7 -71.57,56.3,176.33,128.3 -91.53,90.91,182.78,133.49 -82.26,79.08,186.01,137.45 -52.1,72.07,152.47,170.02 -90.53,61.33,157.9,112.19 -80.71,76.0,170.22,154.63 -49.07,82.92,200.98,143.46 -66.94,30.04,207.39,182.36 -82.27,93.11,106.19,109.69 -127.99,71.66,200.8,129.26 -90.29,85.72,154.64,198.88 -109.93,61.7,234.7,151.44 -118.73,40.61,179.66,146.42 -37.85,50.43,197.24,141.72 -98.18,44.06,138.62,206.41 -112.01,68.9,105.0,113.15 -74.11,82.8,236.61,159.74 -106.06,45.23,219.94,93.88 -75.9,53.71,145.16,175.7 -61.16,71.42,195.57,158.18 --8.21,75.93,218.73,189.77 -26.69,56.12,149.95,113.68 -49.27,85.4,148.02,152.48 -67.45,70.72,191.63,162.27 -146.44,88.61,192.36,191.22 -73.22,93.69,159.68,144.29 -109.08,57.24,149.44,147.19 -45.67,75.85,179.69,183.54 -74.87,23.13,179.73,144.12 -88.79,93.4,127.88,169.94 -76.2,83.3,154.92,131.54 -117.76,33.41,170.86,159.23 -109.2,96.83,201.83,140.89 -134.41,69.6,175.71,182.42 -94.0,63.08,164.48,140.34 -42.22,54.73,131.04,119.63 -100.19,95.72,182.26,92.12 -87.07,86.94,176.16,157.7 -74.42,53.68,112.02,184.6 -48.62,74.39,186.42,154.43 -77.56,114.4,179.18,202.67 -107.69,70.7,205.89,119.1 -116.74,41.22,194.54,205.53 -108.7,87.37,173.64,137.61 -43.51,48.04,188.14,148.88 -91.05,36.16,128.28,163.35 -105.45,100.13,154.59,200.21 -28.75,92.38,199.46,173.99 -3.84,87.52,214.68,173.86 -82.73,69.6,150.49,133.88 -82.16,83.38,188.91,224.37 -103.73,72.48,163.6,105.24 -85.42,51.22,197.73,172.8 -39.52,31.14,187.43,179.55 -69.29,28.87,178.42,181.24 -76.03,72.3,193.07,100.1 -61.4,49.22,219.87,197.95 -37.63,40.78,202.86,162.63 -116.44,92.89,185.03,168.5 -127.24,56.83,158.81,120.74 -88.22,49.09,176.43,128.63 -74.7,45.3,149.79,121.13 -105.13,52.42,206.78,171.46 -50.88,42.18,158.49,168.31 -57.57,39.96,134.7,186.15 -117.2,56.82,194.48,95.82 -123.39,39.76,137.32,141.63 -70.86,66.46,171.97,210.65 -78.93,83.49,151.41,152.87 -98.56,80.65,164.09,133.94 -103.36,107.37,168.06,153.16 -81.02,66.76,201.01,169.66 -96.82,69.83,174.9,156.9 -42.08,42.57,175.42,194.12 -98.3,72.91,114.73,140.45 -33.64,77.41,180.53,165.45 --16.95,46.83,217.1,179.87 -155.65,50.7,159.4,169.86 -80.0,62.74,131.03,92.7 -61.4,69.28,165.86,136.81 -81.04,104.21,163.56,107.43 -143.0,48.29,149.6,141.45 -83.12,63.77,237.16,183.4 -113.95,45.42,191.17,202.44 -60.73,37.96,147.77,197.13 -88.97,26.07,210.83,176.79 -141.53,47.33,147.74,174.51 -71.05,83.51,216.77,171.2 -65.78,35.03,186.61,155.44 -4.33,60.2,151.32,187.29 -18.59,56.38,169.17,195.07 -62.5,98.76,172.34,122.93 -111.32,64.94,223.98,210.53 -121.35,56.94,176.26,194.41 -85.35,37.66,169.96,147.08 -112.56,59.13,200.75,189.97 -35.1,85.6,209.02,183.22 -74.46,69.51,181.55,193.22 -96.77,43.19,137.98,208.2 -101.36,41.06,132.92,176.47 -33.45,46.65,217.14,196.79 -53.16,72.75,220.5,148.69 -68.38,82.31,134.12,191.0 -81.73,68.68,165.16,101.85 -86.6,85.74,138.57,131.16 -86.6,26.5,99.16,157.4 -89.05,59.47,200.93,134.89 -76.83,67.01,116.38,179.42 -89.79,102.48,144.01,139.59 -65.69,93.41,204.85,171.5 -68.7,68.64,187.96,132.49 -101.33,97.64,153.37,133.0 -92.73,37.29,200.57,191.9 -62.45,73.23,132.23,156.07 -126.05,66.6,195.58,202.88 -112.63,63.67,201.33,51.0 -91.25,62.78,210.98,174.13 -75.72,61.52,184.99,175.64 -83.1,52.14,164.56,145.95 -33.19,59.39,203.96,118.63 -63.63,66.53,194.93,197.12 -57.45,83.41,128.45,158.19 -79.44,50.74,155.31,154.97 -71.68,52.4,176.17,120.47 -80.77,80.03,176.92,150.7 -80.74,63.66,154.64,151.47 -83.78,60.96,185.6,122.15 -138.78,60.1,154.22,168.13 -133.86,52.95,167.02,170.62 -115.67,52.68,190.79,125.01 -96.09,29.9,164.35,132.9 -26.87,36.53,192.26,184.13 -121.47,84.89,152.07,171.21 -161.82,68.84,146.24,163.71 -48.15,54.24,219.64,162.76 -108.97,96.45,174.31,223.53 -96.4,55.62,131.01,211.7 -128.5,83.31,180.48,131.42 -82.89,70.19,173.48,213.8 -104.02,45.72,162.74,188.34 -102.32,54.35,169.13,114.84 -58.21,77.93,160.45,159.73 -88.74,105.64,173.76,155.44 -83.38,45.04,225.41,194.8 -36.28,98.14,207.55,199.12 -83.63,64.44,180.34,131.73 -66.82,62.22,194.99,112.11 -25.46,57.69,191.24,170.45 -82.61,64.52,189.33,132.55 -105.0,67.71,159.09,204.29 -103.21,49.93,184.75,137.92 -66.96,74.57,169.13,135.1 -137.27,91.95,202.16,149.96 -89.7,67.58,185.14,178.38 -100.19,97.56,199.48,145.22 -72.82,45.82,166.46,153.66 -59.32,16.33,185.01,164.3 -88.96,62.48,165.69,241.23 -22.19,53.53,166.79,116.86 -99.57,59.58,190.34,169.22 -78.55,55.42,179.49,101.99 -59.03,47.56,177.14,167.59 -82.56,56.91,208.89,143.21 -50.52,70.4,201.78,92.68 -79.76,31.03,139.47,166.61 -21.9,104.8,158.97,183.48 -83.37,70.98,185.76,178.4 -92.42,53.55,182.74,176.02 -85.89,69.48,176.34,179.77 -63.64,68.38,172.51,185.99 -53.9,72.1,214.67,184.5 -148.48,64.7,212.89,144.96 -9.46,46.41,208.85,132.45 -72.72,53.05,183.2,202.31 -138.98,91.7,122.19,180.43 -119.41,18.03,176.3,133.31 -116.14,48.15,138.41,167.6 -104.36,77.59,190.03,191.89 -62.92,68.67,155.58,123.81 -97.03,68.52,150.33,97.75 -84.14,83.17,198.8,91.75 -105.91,31.03,130.56,180.84 -71.48,68.64,110.11,160.58 -62.72,27.34,152.26,180.03 -40.81,73.15,243.28,203.19 -69.64,101.75,215.16,174.9 -51.91,40.23,208.47,163.31 -35.64,84.85,168.76,163.94 -83.98,98.1,148.75,179.57 -34.39,55.79,224.1,164.03 -85.94,71.36,174.4,157.46 -73.97,73.08,188.84,143.95 -26.15,59.08,151.95,125.5 -74.09,99.72,218.09,128.7 -63.27,52.27,159.2,229.66 -84.83,103.34,182.72,192.17 -77.71,58.01,213.38,183.04 -72.43,56.29,176.4,180.72 -92.52,64.35,230.8,158.01 -74.24,74.7,204.06,169.49 -42.06,80.88,178.76,194.19 -81.21,65.53,188.57,187.54 -69.51,90.4,219.96,164.91 -87.23,64.22,186.34,189.49 -36.85,108.78,157.41,167.01 -9.86,76.04,186.21,190.88 -27.12,64.47,179.53,226.13 -21.85,52.4,179.93,176.22 -128.99,59.99,200.3,174.1 -88.53,71.95,186.09,159.93 -97.8,63.15,169.91,147.85 -70.66,94.54,207.13,148.52 -117.72,56.22,200.12,198.5 -94.92,82.73,194.15,150.78 -116.64,51.23,173.57,177.23 -87.82,71.03,189.62,180.49 -64.07,55.8,204.9,163.94 -82.8,57.15,209.29,127.38 -31.52,43.05,200.59,166.49 -103.8,28.27,144.61,165.25 -61.76,65.6,171.73,173.29 -53.24,73.69,209.59,200.72 -37.35,59.26,213.74,180.23 -102.45,70.79,217.95,196.41 -58.73,29.34,221.97,210.24 -130.62,59.55,191.81,146.79 -50.99,69.33,177.75,164.4 -91.38,60.54,169.39,186.91 -88.92,46.92,162.66,165.88 -36.12,60.01,160.89,112.74 -79.07,51.6,185.42,133.98 -100.89,56.92,185.33,188.7 -103.08,112.33,159.73,206.31 -62.37,36.06,142.75,162.87 -81.44,88.93,152.88,184.28 -70.87,37.98,159.72,203.75 -65.34,75.77,163.07,113.52 -97.95,48.26,134.96,202.39 -64.32,66.31,165.54,175.54 -65.49,44.21,188.18,120.84 -69.41,65.09,221.18,226.76 -45.27,115.43,152.98,157.41 -127.59,55.58,178.31,164.35 -89.18,22.56,187.16,184.42 -74.74,71.33,151.7,177.36 -31.53,83.23,188.92,162.94 -107.9,48.09,170.5,153.7 -101.85,38.51,172.15,163.0 -91.03,75.16,101.01,189.54 -139.15,88.5,160.22,181.88 -103.85,103.09,223.9,99.84 -71.45,128.12,194.31,176.84 -70.43,121.62,203.22,186.04 -56.08,107.08,168.56,197.16 -94.72,58.73,183.37,161.84 -67.3,62.95,219.19,167.33 -74.26,50.36,123.59,171.18 -143.49,36.34,175.16,148.12 -100.18,7.8,160.88,140.09 -79.08,41.96,189.21,118.92 -111.01,84.39,180.33,157.66 -94.2,59.05,161.46,123.24 -123.1,97.38,195.94,109.2 -41.06,55.46,210.32,137.38 -73.93,81.54,148.37,129.53 -140.2,83.68,200.96,142.45 -89.73,40.24,136.45,184.72 -37.9,68.92,167.38,130.44 -29.28,33.91,144.1,147.8 -109.97,64.12,187.26,156.1 -49.57,78.68,217.4,233.04 -81.01,67.59,157.32,163.54 -36.85,76.08,160.01,180.01 -24.64,62.24,142.85,181.85 -71.85,60.23,167.2,155.8 -88.7,64.83,145.42,204.26 -73.73,100.33,182.96,120.67 -65.81,47.48,143.33,177.24 -84.34,106.52,177.06,187.14 -102.43,55.68,179.84,169.31 -107.41,30.7,135.7,178.38 -86.21,55.67,162.77,160.12 -87.42,54.64,173.92,156.62 -128.65,60.52,164.44,171.29 -95.11,92.37,153.85,149.77 -81.34,78.47,209.45,156.3 -100.88,71.4,209.37,137.46 -99.09,77.65,144.31,192.75 +78.62,73.62,182.71,175.71 +63.69,61.69,175.81,165.81 +93.61,90.61,172.56,164.56 +98.73,95.73,188.69,180.69 +91.37,90.37,146.16,145.16 +73.47,72.47,185.11,177.11 +72.23,70.23,162.1,157.1 +82.4,79.4,173.29,166.29 +74.3,71.3,163.8,162.8 +67.18,66.18,175.69,168.69 +81.71,80.71,193.44,186.44 +65.27,63.27,164.52,154.52 +69.86,64.86,175.35,167.35 +68.12,63.12,165.28,164.28 +88.65,83.65,173.9,166.9 +73.23,71.23,184.61,175.61 +76.44,73.44,207.2,201.2 +92.54,89.54,177.21,173.21 +67.2,62.2,163.55,156.55 +73.34,70.34,171.12,169.12 +79.28,76.28,195.13,190.13 +86.88,81.88,180.42,179.42 +78.35,77.35,163.38,154.38 +75.52,74.52,157.08,147.08 +66.76,61.76,166.37,161.37 +83.53,78.53,173.31,166.31 +87.83,85.83,175.08,166.08 +89.34,84.34,167.58,159.58 +81.81,80.81,185.18,175.18 +74.86,72.86,179.94,175.94 +81.89,77.89,177.78,173.78 +81.81,77.81,184.97,180.97 +73.1,68.1,182.7,175.7 +78.92,75.92,178.41,172.41 +85.29,84.29,189.25,180.25 +70.43,68.43,187.46,182.46 +80.27,78.27,155.25,145.25 +70.92,67.92,181.47,180.47 +94.17,90.17,163.17,158.17 +76.74,73.74,172.53,171.53 +80.26,75.26,179.02,176.02 +72.86,67.86,188.34,182.34 +79.82,78.82,160.05,154.05 +109.14,105.14,180.27,173.27 +83.25,80.25,174.34,170.34 +75.18,70.18,158.44,150.44 +71.38,68.38,172.03,168.03 +61.5,58.5,173.08,170.08 +90.45,86.45,175.9,167.9 +71.24,66.24,182.48,172.48 +76.51,72.51,185.86,183.86 +68.78,64.78,173.63,171.63 +84.24,80.24,188.8,183.8 +62.37,61.37,164.71,157.71 +77.51,73.51,157.05,152.05 +84.91,80.91,169.66,162.66 +86.17,81.17,178.47,172.47 +92.24,90.24,179.61,176.61 +78.86,76.86,199.32,191.32 +84.9,83.9,165.86,162.86 +91.67,87.67,159.79,153.79 +81.64,78.64,169.94,160.94 +69.88,64.88,186.37,181.37 +89.06,84.06,186.06,176.06 +75.18,71.18,178.39,177.39 +73.22,68.22,153.33,145.33 +73.32,69.32,182.65,181.65 +70.31,68.31,183.8,173.8 +96.2,92.2,175.51,169.51 +81.6,77.6,183.28,177.28 +97.68,93.68,160.52,157.52 +69.66,68.66,153.59,149.59 +83.94,80.94,173.1,167.1 +87.13,86.13,167.47,158.47 +55.4,50.4,176.47,175.47 +75.26,73.26,158.13,149.13 +71.19,70.19,188.04,187.04 +88.64,85.64,160.06,155.06 +72.58,71.58,172.73,163.73 +70.86,65.86,170.94,163.94 +68.97,64.97,162.8,157.8 +65.38,64.38,187.45,178.45 +83.04,82.04,163.85,161.85 +83.51,80.51,174.1,166.1 +79.38,74.38,169.75,167.75 +72.0,67.0,174.48,170.48 +95.68,93.68,180.8,175.8 +83.37,80.37,191.89,182.89 +90.16,89.16,188.34,180.34 +97.29,95.29,164.93,154.93 +80.53,77.53,166.18,158.18 +88.69,84.69,187.89,183.89 +86.43,83.43,172.18,166.18 +98.04,94.04,175.91,173.91 +81.67,79.67,179.46,178.46 +81.56,79.56,178.65,173.65 +86.0,85.0,152.46,148.46 +98.64,96.64,189.94,181.94 +63.47,59.47,155.49,145.49 +67.53,65.53,175.08,165.08 +77.58,76.58,172.28,162.28 +67.24,62.24,183.79,181.79 +90.31,85.31,168.33,164.33 +78.59,75.59,164.03,159.03 +95.61,91.61,190.34,180.34 +78.24,77.24,177.55,170.55 +73.92,71.92,172.01,163.01 +78.51,75.51,172.56,162.56 +88.42,83.42,164.91,154.91 +103.99,98.99,166.51,161.51 +90.91,89.91,164.23,163.23 +73.67,69.67,159.9,151.9 +87.23,82.23,182.99,173.99 +88.33,86.33,178.42,168.42 +84.02,83.02,165.72,162.72 +73.83,71.83,165.25,164.25 +95.91,91.91,179.88,172.88 +82.12,77.12,185.54,177.54 +71.42,68.42,175.19,172.19 +77.99,73.99,181.88,171.88 +73.9,72.9,192.98,188.98 +76.0,72.0,166.05,156.05 +63.78,59.78,177.94,174.94 +72.3,71.3,183.9,174.9 +52.69,48.69,189.47,179.47 +91.61,89.61,174.85,165.85 +78.15,74.15,156.99,152.99 +98.19,93.19,172.19,163.19 +76.13,74.13,173.88,171.88 +81.4,79.4,173.47,170.47 +91.55,90.55,161.39,156.39 +74.81,70.81,181.27,176.27 +91.71,89.71,180.55,172.55 +76.04,71.04,188.84,187.84 +98.02,95.02,162.49,153.49 +95.42,90.42,177.73,173.73 +74.88,70.88,165.36,155.36 +74.94,71.94,195.69,190.69 +74.75,69.75,171.31,169.31 +79.37,75.37,176.01,172.01 +87.66,85.66,154.75,149.75 +106.56,102.56,196.31,195.31 +77.63,75.63,173.79,169.79 +90.24,89.24,188.14,180.14 +86.52,83.52,189.37,186.37 +85.6,80.6,159.31,149.31 +66.11,64.11,149.62,142.62 +68.89,65.89,160.98,159.98 +83.95,80.95,174.99,173.99 +72.6,69.6,174.56,165.56 +78.35,74.35,171.76,162.76 +57.04,56.04,182.24,179.24 +66.34,65.34,160.97,153.97 +90.49,88.49,182.48,173.48 +77.09,72.09,162.21,153.21 +66.48,62.48,184.55,181.55 +84.18,79.18,197.34,188.34 +64.99,62.99,169.58,168.58 +99.66,97.66,168.11,163.11 +72.91,69.91,171.14,167.14 +79.4,74.4,160.22,155.22 +78.96,76.96,168.01,166.01 +80.49,78.49,176.33,173.33 +71.0,69.0,177.34,175.34 +66.78,62.78,183.79,181.79 +91.53,88.53,169.71,168.71 +84.9,80.9,183.31,177.31 +87.9,82.9,165.84,155.84 +75.74,70.74,166.29,165.29 +87.21,82.21,178.85,176.85 +79.56,78.56,172.64,166.64 +92.1,87.1,177.56,175.56 +71.59,66.59,177.51,170.51 +88.3,83.3,178.59,174.59 +79.19,78.19,163.32,154.32 +85.86,80.86,181.08,173.08 +77.82,75.82,169.24,164.24 +74.72,72.72,195.51,192.51 +83.54,79.54,163.31,157.31 +62.34,61.34,175.75,168.75 +81.8,77.8,188.26,186.26 +101.84,100.84,169.36,161.36 +76.09,71.09,184.79,174.79 +105.75,102.75,185.19,183.19 +84.69,79.69,172.6,166.6 +70.54,68.54,176.02,173.02 +79.41,75.41,197.12,187.12 +80.11,77.11,163.19,159.19 +84.95,82.95,174.25,165.25 +63.69,59.69,181.18,171.18 +81.37,79.37,162.65,152.65 +76.02,72.02,174.71,168.71 +77.04,76.04,172.93,168.93 +81.18,78.18,182.53,177.53 +89.27,86.27,177.73,176.73 +64.23,62.23,157.74,147.74 +84.36,82.36,164.95,157.95 +65.25,64.25,161.39,155.39 +70.93,67.93,176.76,171.76 +73.38,70.38,160.77,158.77 +82.49,81.49,178.78,171.78 +59.55,54.55,176.89,171.89 +81.38,80.38,167.32,166.32 +96.8,92.8,186.53,181.53 +75.64,73.64,179.12,171.12 +60.74,58.74,182.61,174.61 +85.11,84.11,181.06,177.06 +89.0,88.0,179.23,173.23 +88.53,86.53,190.5,181.5 +88.33,87.33,162.92,156.92 +83.93,80.93,172.72,168.72 +99.35,98.35,167.98,161.98 +96.44,91.44,177.23,175.23 +86.18,85.18,194.64,193.64 +80.24,76.24,166.49,158.49 +89.99,84.99,188.94,185.94 +73.48,70.48,180.39,175.39 +75.49,74.49,185.98,184.98 +86.24,85.24,182.68,176.68 +76.56,75.56,172.4,171.4 +74.05,73.05,172.67,171.67 +69.29,67.29,180.39,172.39 +78.83,74.83,161.82,159.82 +85.06,83.06,158.56,154.56 +81.75,80.75,182.0,172.0 +66.05,63.05,184.79,182.79 +90.7,89.7,187.61,179.61 +80.16,76.16,169.0,165.0 +61.44,57.44,164.24,161.24 +88.36,87.36,180.36,174.36 +93.56,88.56,179.04,177.04 +66.84,64.84,175.2,168.2 +84.79,80.79,173.16,171.16 +83.34,80.34,168.88,164.88 +86.54,82.54,185.52,178.52 +75.67,70.67,179.91,169.91 +85.05,81.05,179.28,172.28 +85.72,82.72,170.34,165.34 +83.79,78.79,190.53,183.53 +74.7,71.7,184.12,179.12 +74.45,72.45,165.77,163.77 +76.71,74.71,179.8,175.8 +89.96,87.96,168.39,166.39 +65.08,64.08,173.87,167.87 +79.76,74.76,172.08,171.08 +79.14,77.14,177.0,173.0 +92.99,91.99,196.2,192.2 +72.83,69.83,180.6,175.6 +64.15,61.15,174.27,170.27 +80.02,78.02,181.57,174.57 +89.85,86.85,187.69,179.69 +66.61,61.61,172.69,168.69 +73.55,68.55,184.41,174.41 +99.45,98.45,164.16,161.16 +74.66,69.66,174.82,167.82 +72.72,70.72,196.35,194.35 +72.24,70.24,189.74,180.74 +85.59,84.59,162.88,153.88 +84.03,83.03,172.58,168.58 +109.47,105.47,167.35,157.35 +71.77,68.77,168.28,158.28 +63.5,58.5,187.48,179.48 +72.34,68.34,157.63,147.63 +78.33,77.33,189.11,186.11 +76.1,75.1,164.88,154.88 +69.94,67.94,174.54,173.54 +95.5,90.5,176.06,172.06 +92.63,91.63,183.16,174.16 +86.83,83.83,151.68,150.68 +88.17,85.17,171.18,167.18 +85.35,81.35,157.0,150.0 +79.33,78.33,174.41,166.41 +98.39,97.39,171.68,170.68 +75.73,70.73,169.03,162.03 +82.38,80.38,194.39,192.39 +73.62,68.62,192.79,189.79 +71.39,66.39,177.28,169.28 +72.08,67.08,188.55,180.55 +70.65,66.65,165.01,158.01 +78.58,75.58,182.69,173.69 +96.4,94.4,167.72,157.72 +81.3,76.3,190.58,180.58 +89.91,84.91,179.12,170.12 +69.3,67.3,168.22,163.22 +72.33,69.33,168.15,166.15 +76.05,72.05,174.07,172.07 +82.89,81.89,179.44,176.44 +88.56,83.56,172.75,167.75 +66.69,65.69,168.4,167.4 +102.1,100.1,174.15,172.15 +72.02,70.02,175.65,167.65 +92.61,87.61,178.79,175.79 +57.95,54.95,184.41,179.41 +76.8,71.8,180.31,179.31 +75.41,70.41,162.12,153.12 +52.68,49.68,167.19,159.19 +78.06,77.06,196.51,192.51 +84.92,81.92,168.36,164.36 +82.13,80.13,162.94,155.94 +86.63,84.63,171.11,164.11 +91.29,88.29,185.82,178.82 +74.32,72.32,174.17,167.17 +81.4,80.4,173.05,169.05 +69.53,65.53,160.99,152.99 +60.99,55.99,175.47,171.47 +74.15,71.15,176.46,175.46 +75.19,73.19,186.2,185.2 +69.02,65.02,152.25,142.25 +58.86,53.86,177.67,168.67 +72.51,70.51,170.09,161.09 +77.2,72.2,180.12,173.12 +74.5,70.5,191.12,189.12 +73.0,68.0,152.12,143.12 +93.35,92.35,188.74,180.74 +83.63,79.63,162.17,161.17 +100.77,98.77,171.92,163.92 +62.4,59.4,183.16,178.16 +76.68,73.68,170.31,169.31 +77.63,74.63,176.78,167.78 +70.99,66.99,171.17,162.17 +78.55,74.55,160.56,159.56 +81.53,80.53,160.59,159.59 +85.44,84.44,172.2,167.2 +89.49,84.49,174.56,169.56 +92.46,88.46,196.51,195.51 +47.24,44.24,184.05,178.05 +77.04,73.04,182.1,179.1 +79.71,74.71,175.36,169.36 +107.21,106.21,187.67,177.67 +114.51,110.51,179.53,174.53 +79.43,76.43,161.76,153.76 +87.45,86.45,157.1,149.1 +73.89,69.89,175.55,167.55 +55.88,50.88,174.49,168.49 +82.44,80.44,166.95,160.95 +82.58,80.58,172.14,163.14 +83.79,82.79,162.26,161.26 +81.35,78.35,168.69,158.69 +80.75,78.75,152.22,143.22 +68.54,65.54,163.35,159.35 +67.68,62.68,173.4,169.4 +62.29,57.29,171.36,161.36 +74.03,70.03,182.93,180.93 +75.47,71.47,167.97,158.97 +69.02,67.02,176.92,174.92 +81.86,77.86,167.51,164.51 +82.2,77.2,138.5,135.5 +90.3,86.3,163.0,162.0 +85.98,83.98,171.97,167.97 +67.84,64.84,200.48,197.48 +69.16,66.16,168.99,162.99 +85.82,82.82,162.53,157.53 +75.77,71.77,179.87,177.87 +77.07,74.07,180.7,173.7 +70.14,67.14,184.78,177.78 +62.06,59.06,166.8,160.8 +64.8,59.8,164.65,159.65 +83.16,82.16,158.36,154.36 +70.22,68.22,175.29,167.29 +95.93,90.93,182.29,175.29 +74.42,70.42,191.84,182.84 +55.11,53.11,178.11,171.11 +90.68,88.68,156.38,149.38 +93.88,90.88,174.27,164.27 +49.87,45.87,172.24,171.24 +75.5,74.5,190.85,181.85 +73.1,69.1,174.6,172.6 +71.54,70.54,176.6,174.6 +78.82,75.82,174.13,171.13 +71.32,66.32,191.41,186.41 +78.22,75.22,163.22,153.22 +76.26,74.26,172.03,171.03 +95.39,91.39,196.75,194.75 +66.14,65.14,189.96,181.96 +88.18,87.18,177.39,176.39 +70.74,67.74,180.76,177.76 +81.13,76.13,152.65,149.65 +90.3,86.3,173.4,171.4 +77.08,72.08,169.38,167.38 +91.46,87.46,185.6,176.6 +84.52,79.52,180.37,176.37 +64.78,63.78,177.98,171.98 +73.49,72.49,172.49,162.49 +71.93,67.93,179.67,172.67 +83.86,78.86,169.98,167.98 +85.07,80.07,194.04,193.04 +52.96,47.96,190.06,183.06 +64.53,62.53,177.11,175.11 +84.77,81.77,170.2,161.2 +67.28,66.28,195.04,194.04 +69.02,65.02,157.77,154.77 +71.46,67.46,174.12,164.12 +79.83,75.83,159.68,157.68 +91.94,86.94,187.96,177.96 +64.5,62.5,167.74,161.74 +65.17,61.17,187.93,184.93 +100.75,95.75,183.3,180.3 +84.11,83.11,159.34,156.34 +76.62,74.62,177.65,171.65 +74.73,72.73,170.29,166.29 +80.65,75.65,170.26,166.26 +77.89,73.89,167.79,160.79 +73.8,69.8,185.84,180.84 +94.91,90.91,186.5,183.5 +79.11,78.11,175.48,172.48 +63.63,60.63,181.7,172.7 +76.14,72.14,193.54,191.54 +80.73,77.73,184.08,178.08 +69.8,66.8,178.79,171.79 +90.84,85.84,190.31,184.31 +67.2,62.2,162.62,158.62 +76.58,73.58,179.55,170.55 +67.56,64.56,167.86,163.86 +86.07,84.07,189.58,183.58 +90.87,86.87,175.35,165.35 +87.24,82.24,176.07,169.07 +66.13,61.13,171.59,162.59 +79.89,77.89,176.55,168.55 +83.13,79.13,191.88,183.88 +79.31,76.31,184.36,175.36 +93.45,90.45,166.86,165.86 +64.58,60.58,167.64,162.64 +85.03,81.03,186.77,178.77 +73.07,68.07,183.46,173.46 +77.17,73.17,188.57,182.57 +82.39,81.39,179.62,177.62 +80.53,75.53,165.27,162.27 +82.83,79.83,185.42,183.42 +72.24,71.24,187.56,183.56 +60.94,56.94,169.58,168.58 +98.73,94.73,169.21,164.21 +62.76,60.76,153.38,144.38 +80.55,75.55,160.51,156.51 +74.83,69.83,187.29,178.29 +64.02,60.02,178.02,169.02 +100.1,95.1,194.69,193.69 +67.46,63.46,187.0,182.0 +75.12,73.12,184.74,183.74 +81.87,80.87,166.06,157.06 +74.49,69.49,155.93,154.93 +95.3,93.3,186.18,181.18 +86.0,85.0,171.78,162.78 +73.54,70.54,180.72,175.72 +74.08,69.08,168.71,164.71 +86.52,83.52,171.58,166.58 +76.72,73.72,173.75,167.75 +78.4,74.4,153.23,150.23 +81.22,78.22,177.09,170.09 +105.01,101.01,162.01,153.01 +81.35,77.35,174.93,165.93 +95.95,90.95,166.28,164.28 +102.07,100.07,185.07,175.07 +83.05,79.05,182.16,177.16 +88.49,84.49,179.03,176.03 +76.11,73.11,183.61,182.61 +72.87,69.87,170.19,160.19 +66.16,65.16,168.55,158.55 +87.91,86.91,181.54,177.54 +109.33,108.33,174.36,170.36 +64.99,59.99,178.57,169.57 +77.82,73.82,163.56,153.56 +106.58,101.58,165.19,161.19 +84.24,82.24,193.37,188.37 +69.06,68.06,176.48,166.48 +84.34,81.34,170.67,166.67 +103.19,102.19,167.03,159.03 +94.06,90.06,168.7,159.7 +98.94,96.94,189.38,185.38 +99.88,97.88,162.49,156.49 +81.61,78.61,176.5,166.5 +64.7,60.7,184.46,181.46 +85.29,82.29,152.7,150.7 +85.48,84.48,170.0,167.0 +84.66,82.66,167.69,165.69 +84.86,80.86,186.9,180.9 +87.97,84.97,175.21,174.21 +90.6,89.6,185.15,181.15 +92.06,87.06,183.15,173.15 +74.52,73.52,184.06,174.06 +83.36,79.36,145.76,135.76 +77.5,73.5,186.61,184.61 +87.34,86.34,190.07,183.07 +74.84,72.84,158.65,150.65 +55.08,50.08,161.97,154.97 +79.2,74.2,167.13,160.13 +98.14,94.14,185.58,181.58 +66.64,64.64,181.57,173.57 +80.14,79.14,183.28,173.28 +71.53,66.53,165.67,160.67 +61.54,58.54,174.0,165.0 +73.97,70.97,186.86,178.86 +84.85,81.85,180.09,178.09 +90.85,89.85,176.3,172.3 +88.57,86.57,171.84,163.84 +71.36,68.36,165.16,163.16 +73.07,68.07,173.9,171.9 +74.02,71.02,173.15,164.15 +73.68,72.68,184.55,179.55 +75.39,74.39,195.49,187.49 +83.15,80.15,201.56,192.56 diff --git a/generateData.py b/generateData.py new file mode 100644 index 0000000..b9f034b --- /dev/null +++ b/generateData.py @@ -0,0 +1,32 @@ +from random import randint +import random +import numpy as np +import pandas as pd +from math import sqrt +from scipy import stats +from scipy.stats import sem +from scipy.stats import t +import matplotlib.pyplot as plt +from statistics import mean, stdev +from scipy.stats import ttest_ind, ttest_1samp, ttest_rel + +man_heights = np.random.normal(175, 10, 500) +woman_heights = np.array([x-randint(1, 10) for x in man_heights]) + +weights_before = np.random.normal(80, 10, 500) +weights_after = np.array([x-randint(1, 5) for x in weights_before]) + +man_heights = np.round(man_heights, 2) +woman_heights = np.round(woman_heights, 2) +weights_before = np.round(weights_before, 2) +weights_after = np.round(weights_after, 2) + +dataset = pd.read_csv('experiment_data.csv') + +dataset['Weight before'] = weights_before +dataset['Weight after'] = weights_after + +dataset['Male height'] = man_heights +dataset['Female height'] = woman_heights + +dataset.to_csv("experiment_data2.csv", encoding="utf-8", index=False)