{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Homework 10 Key\n", "#### CHE 116: Numerical Methods and Statistics\n", "\n", "\n", "4/9/2020\n", "\n", "----" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Problem 1\n", "\n", "State which hypothesis best matches the scenario and justify your answer\n", "\n", "1. You have the historic mean and standard deviation of temperature for April and want to know if this year's temperature is significantly different.\n", "2. The number of days with snow in April is usually 4, this year it is 1. Is this significant?\n", "3. You take 5 measurements of snow depth in your front yard and 8 measurements in your backyard and want to know if they front and backyard have different amounts of snowfall.\n", "4. You have measured what day of the week it is and what time your phone battery goes dead. Is there a connection?\n", "5. You have measured how frequently your friends text you before and after COVID-19 quarantine and want to know if it has changed significantly." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Problem 1 Answers\n", "1. zM\n", "2. Poisson\n", "3. Wilcoxon sum of ranks\n", "4. Spearmann Correlation\n", "5. Wilxocon signed rank" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Problem 2\n", "\n", "Choose and peform hypothesis tests for the following examples. **Report your p-values!!**\n", "\n", "1. The number of yellow skittles is on average 8 per bag. Your bag has 11. Is this significantly different?\n", "2. You normally drink 8 oz of water with a standard deviation of 2 oz. Today you drank 12 oz. Is this significantly different?\n", "3. Ting says your cellphone bill will be about \\\\$50 or lower if you switch. You switch and find your bills a are \\\\$48, \\\\$ 53, \\\\$67, \\\\$44. Was their claim correct?\n", "\n", "4. You are testing the efficacy of a drug that causes weight loss. You have 15 patients try the drug. Their weights in pounds before are [178,189,136,134,172,171,178,179,154,159,167,149,125,180,135] and after are [174,178,139,133,166,165,172,180,141,145,176,151,108,174,131]. Is the drug effective?\n", "\n", "\n", "5. You now add a control group which is given a placebo. Their before and after weights are [211,175,151,160,163,137,169,145,171,177,148,145,173,174,167] and [200,171,146,162,178,134,183,148,164,166,141,142,166,167,142]. Is your conclusion the same? Why or why not?" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 2.1\n", "\n", "$p = 0.18$\n", "\n", "Not significantly different" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.18411420744145335" ] }, "execution_count": 21, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import scipy.stats as ss\n", "#Poisson\n", "1 - ss.poisson.cdf(10, 8)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 2.2\n", "$p = 0.045$\n", "\n", "This is a significantly different amount of water" ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.04550026389635839" ] }, "execution_count": 25, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Z = (12 - 8) / 2\n", "2 * ss.norm.cdf(-Z)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 2.3\n", "$p = 0.7$\n", "\n", "The bills are not significantly different from what Ting claimed" ] }, { "cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0.42348057022481395\n" ] }, { "data": { "text/plain": [ "0.7004718483539545" ] }, "execution_count": 32, "metadata": {}, "output_type": "execute_result" } ], "source": [ "bills = [45, 53, 67, 44]\n", "bm = np.mean(bills)\n", "bs = np.std(bills, ddof=1)\n", "T = (bm - 50) / (bs / np.sqrt(len(bills)))\n", "2 * ss.t.cdf(-T, df=len(bills) - 1)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 2.4\n", "\n", "$p = 0.02$\n", "\n", "The drug is effective" ] }, { "cell_type": "code", "execution_count": 38, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "WilcoxonResult(statistic=19.5, pvalue=0.02112008758907893)" ] }, "execution_count": 38, "metadata": {}, "output_type": "execute_result" } ], "source": [ "before = [178,189,136,134,172,171,178,179,154,159,167,149,125,180,135] \n", "after = [174,178,139,133,166,165,172,180,141,145,176,151,108,174,131]\n", "ss.wilcoxon(before, after)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 2.5\n", "\n", "There is not a significant different in weight loss between the placebo or drug group, so the drug is no more effective than a placebo. " ] }, { "cell_type": "code", "execution_count": 44, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "RanksumsResult(statistic=0.14517323726225953, pvalue=0.8845740956336082)" ] }, "execution_count": 44, "metadata": {}, "output_type": "execute_result" } ], "source": [ "beforec = [211,175,151,160,163,137,169,145,171,177,148,145,173,174,167]\n", "afterc = [200,171,146,162,178,134,183,148,164,166,141,142,166,167,142]\n", "\n", "changec = [b - a for b,a in zip(beforec,afterc)]\n", "change = [b - a for b,a in zip(before, after)]\n", "\n", "ss.ranksums(change, changec)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Problem 3\n", "\n", "Solve the following problems using optimization. **Report your answer in Markdown!**\n", "\n", "1. Solve $\\tan x = x^2 + 1$. \n", "2. Minimize $(x - 4)^2$\n", "3. Is $x^2\\sin^2x$ non-convex or convex?\n", "4. Solve the following system of equations:\n", "\n", "$$\n", "x^2 - y = 18\n", "$$\n", "$$\n", "\\sqrt{x} + y^2 = 6\n", "$$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 3.1\n", "\n", "$x = 1.17$" ] }, { "cell_type": "code", "execution_count": 48, "metadata": {}, "outputs": [ { "data": { "text/plain": [ " fjac: array([[-1.]])\n", " fun: array([-2.07389661e-13])\n", " message: 'The solution converged.'\n", " nfev: 11\n", " qtf: array([-1.50393884e-08])\n", " r: array([-4.29069632])\n", " status: 1\n", " success: True\n", " x: array([1.17209362])" ] }, "execution_count": 48, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import scipy.optimize as opt\n", "\n", "opt.root(lambda x: np.tan(x) - x**2 - 1, x0=1)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 3.2\n", "\n", "$x = 4$" ] }, { "cell_type": "code", "execution_count": 49, "metadata": {}, "outputs": [ { "data": { "text/plain": [ " fun: 1.6517868451916196e-16\n", " hess_inv: array([[0.5]])\n", " jac: array([-1.08032108e-08])\n", " message: 'Optimization terminated successfully.'\n", " nfev: 12\n", " nit: 3\n", " njev: 4\n", " status: 0\n", " success: True\n", " x: array([3.99999999])" ] }, "execution_count": 49, "metadata": {}, "output_type": "execute_result" } ], "source": [ "opt.minimize(lambda x: (x - 4)**2, x0=0)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 3.3\n", "This is non-convex" ] }, { "cell_type": "code", "execution_count": 53, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[]" ] }, "execution_count": 53, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "import matplotlib.pyplot as plt\n", "%matplotlib inline\n", "x = np.linspace(-4, 4, 500)\n", "plt.plot(x, x**2 * np.sin(x)**2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 3.4\n", "Two solutions (ok to report just 1)\n", "$x,y = 4.47, 1.97$; $x,y = 4, -2$" ] }, { "cell_type": "code", "execution_count": 56, "metadata": {}, "outputs": [ { "data": { "text/plain": [ " fjac: array([[-0.99930056, -0.0373951 ],\n", " [ 0.0373951 , -0.99930056]])\n", " fun: array([-3.19744231e-14, -3.10862447e-14])\n", " message: 'The solution converged.'\n", " nfev: 13\n", " qtf: array([-8.24822349e-10, -7.51151959e-10])\n", " r: array([-8.05791962, 1.12720016, 3.94005999])\n", " status: 1\n", " success: True\n", " x: array([ 4., -2.])" ] }, "execution_count": 56, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def sys(v):\n", " x = v[0]\n", " y = v[1]\n", " return [x**2 - y - 18, np.sqrt(x) + y**2 - 6]\n", "opt.root(sys, x0 = [1,-1])" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "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.7.3" } }, "nbformat": 4, "nbformat_minor": 2 }