{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "from datascience import *\n", "import numpy as np\n", "\n", "%matplotlib inline\n", "import matplotlib.pyplot as plots\n", "plots.style.use('fivethirtyeight')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Lecture 18 ##" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Student's lament ##" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
Section | Midterm | \n", "
---|---|
1 | 22 | \n", "
2 | 12 | \n", "
2 | 23 | \n", "
2 | 14 | \n", "
1 | 20 | \n", "
3 | 25 | \n", "
4 | 19 | \n", "
1 | 24 | \n", "
5 | 8 | \n", "
6 | 14 | \n", "
... (349 rows omitted)
" ], "text/plain": [ "Section | Midterm\n", "1 | 22\n", "2 | 12\n", "2 | 23\n", "2 | 14\n", "1 | 20\n", "3 | 25\n", "4 | 19\n", "1 | 24\n", "5 | 8\n", "6 | 14\n", "... (349 rows omitted)" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "scores = Table.read_table('scores_by_section.csv')\n", "scores" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "text/html": [ "Section | count | \n", "
---|---|
1 | 32 | \n", "
2 | 32 | \n", "
3 | 27 | \n", "
4 | 30 | \n", "
5 | 33 | \n", "
6 | 32 | \n", "
7 | 24 | \n", "
8 | 29 | \n", "
9 | 30 | \n", "
10 | 34 | \n", "
... (2 rows omitted)
" ], "text/plain": [ "Section | count\n", "1 | 32\n", "2 | 32\n", "3 | 27\n", "4 | 30\n", "5 | 33\n", "6 | 32\n", "7 | 24\n", "8 | 29\n", "9 | 30\n", "10 | 34\n", "... (2 rows omitted)" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "scores.group('Section')" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "text/html": [ "Section | Midterm average | \n", "
---|---|
1 | 15.5938 | \n", "
2 | 15.125 | \n", "
3 | 13.6667 | \n", "
4 | 14.7667 | \n", "
5 | 17.4545 | \n", "
6 | 15.0312 | \n", "
7 | 16.625 | \n", "
8 | 16.3103 | \n", "
9 | 14.5667 | \n", "
10 | 15.2353 | \n", "
11 | 15.8077 | \n", "
12 | 15.7333 | \n", "
Section | Midterm | \n", "
---|---|
9 | 18 | \n", "
1 | 18 | \n", "
4 | 19 | \n", "
4 | 21 | \n", "
4 | 13 | \n", "
5 | 15 | \n", "
10 | 20 | \n", "
5 | 16 | \n", "
5 | 11 | \n", "
9 | 19 | \n", "
... (17 rows omitted)
" ], "text/plain": [ "Section | Midterm\n", "9 | 18\n", "1 | 18\n", "4 | 19\n", "4 | 21\n", "4 | 13\n", "5 | 15\n", "10 | 20\n", "5 | 16\n", "5 | 11\n", "9 | 19\n", "... (17 rows omitted)" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "random_sample = scores.sample(27, with_replacement = False)\n", "random_sample" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "16.185185185185187" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "np.average(random_sample.column('Midterm'))" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "13.37037037037037" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "random_sample = scores.sample(27, with_replacement = False)\n", "np.average(random_sample.column('Midterm'))" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "averages = make_array()\n", "\n", "for i in np.arange(50000):\n", " random_sample = scores.sample(27, with_replacement = False)\n", " new_average = np.average(random_sample.column('Midterm'))\n", " averages = np.append(averages, new_average) " ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "observed_average = 13.6667" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "