{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Data Spread\n", "\n", "1. Mean \n", "2. Stardard Deviation\n", "3. Variance\n", "\n", "##### ---------------------------------------------" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "1.14.2\n", "0.20.3\n" ] } ], "source": [ "from __future__ import division\n", "\n", "import numpy as np\n", "import math\n", "import pandas as pd\n", "\n", "print np.__version__\n", "print pd.__version__" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Python Way" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": true }, "outputs": [], "source": [ "def mean(x):\n", " return sum(x) / len(x)" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": false }, "outputs": [], "source": [ "def variance(x):\n", " return (standard_deviation(x))**2" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": true }, "outputs": [], "source": [ "def standard_deviation(lst):\n", " m = mean(lst)\n", " return math.sqrt(float(reduce(lambda x, y: x + y, map(lambda x: (x - m) ** 2, lst))) / len(lst))" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Mean: 3.0\n", "Variance: 2.0\n", "Standard Deviation: 1.41421356237\n" ] } ], "source": [ "X = [1, 2, 3, 4, 5]\n", "print 'Mean: {}'.format(mean(X))\n", "print 'Variance: {}'.format(variance(X))\n", "print 'Standard Deviation: {}'.format(standard_deviation(X))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Numpy Way" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "collapsed": true }, "outputs": [], "source": [ "def mean(x):\n", " return np.mean(x)" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "collapsed": true }, "outputs": [], "source": [ "def variance(x):\n", " return np.var(x)" ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "collapsed": true }, "outputs": [], "source": [ "def standard_deviation(x):\n", " return np.std(x)" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Mean: 3.0\n", "Variance: 2.0\n", "Standard Deviation: 1.41421356237\n" ] } ], "source": [ "X = [1, 2, 3, 4, 5]\n", "print 'Mean: {}'.format(mean(X))\n", "print 'Variance: {}'.format(variance(X))\n", "print 'Standard Deviation: {}'.format(standard_deviation(X))" ] } ], "metadata": { "kernelspec": { "display_name": "Python 2", "language": "python", "name": "python2" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 2 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython2", "version": "2.7.12" } }, "nbformat": 4, "nbformat_minor": 1 }