{ "metadata": { "name": "", "signature": "sha256:ea8ccb8121c099d7558d09fc639aaec7964eb7d634834ff7191b6ae1bb24283e" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "#Number munging: vectors, Pandas, probabilities" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#this is the more or less raw version of what we did today. I've added a few comments here and there to eliminate confusion." ] }, { "cell_type": "code", "collapsed": false, "input": [], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "code", "collapsed": false, "input": [ "# Render our plots inline\n", "%matplotlib inline\n", "\n", "import pandas as pd\n", "import matplotlib.pyplot as plt\n", "import numpy as np\n", "\n", "pd.set_option('display.mpl_style', 'default') # Make the graphs a bit prettier\n", "plt.rcParams['figure.figsize'] = (15, 5)\n", "\n", "\n" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 1 }, { "cell_type": "code", "collapsed": false, "input": [ "#get our data--temporary home--these will disappear soon\n", "!wget http://www.columbia.edu/~mj340/ml-100k.tar.gz" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "code", "collapsed": false, "input": [ "!wget http://www.columbia.edu/~mj340/HMXPC13_DI_v2_5-14-14.csv.gz" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "code", "collapsed": false, "input": [ "!gunzip HMXPC13_DI_v2_5-14-14.csv.gz" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "code", "collapsed": false, "input": [ "!tar -zxvf ml-100k.tar.gz" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "\n", "#Our ritual: Exploratory data analysis\n", "\n", "\n", "> Exploratory data analysis (EDA) seeks to reveal structure, or simple descriptions, in data. We look at numbers and graphs and try to find patterns. \n", " - Persi Diaconis, \"Theories of Data Analysis: From Magical Thinking Through Classical statistics\"\n", "\n", "> . . . proceeding via a \u2018dustbowl\u2019 empiricism is dangerous at worst and foolish at best . . . . The purely empirical approach is particularly dangerous in an age when computers and packaged programs are readily available, since there is temptation to substitute immediate empirical analysis for more analytic thought and theory building.\n", " - Einhorn, \u201cAlchemy in the Behavioral Sciences,\u201d 1972\n", "\n", ">. . . we can view the techniques of EDA as a ritual designed to reveal patters in a data set. Thus, we may believe that naturally occurring data sets contain structure, that EDA is a useful vehicle for revealing the structure. . . . If we make no attempt to check whether the structure could have arisen by chance, and tend to accept the findinds as gospel, then the ritual comes close to magical thinking. ... a controlled form of magical thinking--in the guise of 'working hypothesis'--is a basic ingredient of scientific progress. \n", " - Persi Diaconis, \"Theories of Data Analysis: From Magical Thinking Through Classical statistics\"\n", "\n", "#From data to databases to data mining\n", "- move from accessing and manipulating data to performing ever more complicated *queries* on our data\n", "\n", "\n", "#`Pandas` first-line `python` tool for EDA\n", "- rich data structures\n", "- powerful ways to slice, dice, reformate, fix, and eliminate data\n", " - taste of what can do\n", "- rich queries like databases\n", " \n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#`Pandas`: charismatic megafauna" ] }, { "cell_type": "code", "collapsed": false, "input": [ "import pandas as pd" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 3 }, { "cell_type": "code", "collapsed": false, "input": [ "CPI={\"2010\": 218.056, \"2011\": 224.939, \"2012\": 229.594, \"2013\": 232.957} #http://www.bls.gov/cpi/home.htm" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 5 }, { "cell_type": "code", "collapsed": false, "input": [ "CPI[\"2011\"]" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 6, "text": [ "224.939" ] } ], "prompt_number": 6 }, { "cell_type": "markdown", "metadata": {}, "source": [ "The CPI provides \"a measure of the average change over time in the prices paid by urban consumers for a market basket of consumer goods and services.\" A *higher* number means it costs more to buy the same goods. It was set to 100 in 1982-4.\n", "\n", "We can thus use it to measure the effects of inflation on the value of houses in a toy example." ] }, { "cell_type": "code", "collapsed": false, "input": [ "CPI_series=pd.Series(CPI)" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 7 }, { "cell_type": "code", "collapsed": false, "input": [ "CPI_series" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 8, "text": [ "2010 218.056\n", "2011 224.939\n", "2012 229.594\n", "2013 232.957\n", "dtype: float64" ] } ], "prompt_number": 8 }, { "cell_type": "code", "collapsed": false, "input": [ "House_sale_mean={\"2010\":100000, \"2011\":100000, \"2012\":100000, \"2013\":100000}" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 9 }, { "cell_type": "code", "collapsed": false, "input": [ "house_sale_series=pd.Series(House_sale_mean)" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 10 }, { "cell_type": "code", "collapsed": false, "input": [ "house_sale_series" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 11, "text": [ "2010 100000\n", "2011 100000\n", "2012 100000\n", "2013 100000\n", "dtype: int64" ] } ], "prompt_number": 11 }, { "cell_type": "code", "collapsed": false, "input": [ "(house_sale_series/CPI_series)" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 13, "text": [ "2010 458.597791\n", "2011 444.564971\n", "2012 435.551452\n", "2013 429.263770\n", "dtype: float64" ] } ], "prompt_number": 13 }, { "cell_type": "code", "collapsed": false, "input": [ "(house_sale_series/CPI_series)*100" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 15, "text": [ "2010 45859.779139\n", "2011 44456.497095\n", "2012 43555.145169\n", "2013 42926.376971\n", "dtype: float64" ] } ], "prompt_number": 15 }, { "cell_type": "code", "collapsed": false, "input": [ "inflation_adjusted=(house_sale_series/CPI_series)*100" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 16 }, { "cell_type": "code", "collapsed": false, "input": [ "inflation_adjusted.plot(title=\"Sorry Kids! Blame X, where X is the guy in office\")" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 18, "text": [ "" ] }, { "output_type": "stream", "stream": "stderr", "text": [ "/usr/lib/pymodules/python2.7/matplotlib/font_manager.py:1246: UserWarning: findfont: Could not match :family=Bitstream Vera Sans:style=normal:variant=normal:weight=normal:stretch=normal:size=x-large. Returning /usr/share/matplotlib/mpl-data/fonts/ttf/cmb10.ttf\n", " UserWarning)\n" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\n", "text": [ "" ] } ], "prompt_number": 18 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Dataframes" ] }, { "cell_type": "code", "collapsed": false, "input": [ "df=pd.read_csv('./HMXPC13_DI_v2_5-14-14.csv', sep=',')\n" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 19 }, { "cell_type": "markdown", "metadata": {}, "source": [ "##Note that df is the name of our datastructure, not the function to make something into a dataframe, which is pd.DataFrame. I failed to explain this accurately in class. So df[\"blah\"] is indexing on the particular dataframe df, not a function df on blah." ] }, { "cell_type": "code", "collapsed": false, "input": [ "df" ], "language": "python", "metadata": {}, "outputs": [ { "html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
course_iduserid_DIregisteredviewedexploredcertifiedfinal_cc_cname_DILoE_DIYoBgendergradestart_time_DIlast_event_DIneventsndays_actnplay_videonchaptersnforum_postsrolesincomplete_flag
0 HarvardX/CB22x/2013_Spring MHxPC130442623 1 0 0 0 United States NaN NaN NaN 0 2012-12-19 2013-11-17 NaN 9NaNNaN 0NaN 1
1 HarvardX/CS50x/2012 MHxPC130442623 1 1 0 0 United States NaN NaN NaN 0 2012-10-15 NaN NaN 9NaN 1 0NaN 1
2 HarvardX/CB22x/2013_Spring MHxPC130275857 1 0 0 0 United States NaN NaN NaN 0 2013-02-08 2013-11-17 NaN 16NaNNaN 0NaN 1
3 HarvardX/CS50x/2012 MHxPC130275857 1 0 0 0 United States NaN NaN NaN 0 2012-09-17 NaN NaN 16NaNNaN 0NaN 1
4 HarvardX/ER22x/2013_Spring MHxPC130275857 1 0 0 0 United States NaN NaN NaN 0 2012-12-19 NaN NaN 16NaNNaN 0NaN 1
5 HarvardX/PH207x/2012_Fall MHxPC130275857 1 1 1 0 United States NaN NaN NaN 0 2012-09-17 2013-05-23 502 16 50 12 0NaNNaN
6 HarvardX/PH278x/2013_Spring MHxPC130275857 1 0 0 0 United States NaN NaN NaN 0 2013-02-08 NaN NaN 16NaNNaN 0NaN 1
7 HarvardX/CB22x/2013_Spring MHxPC130539455 1 1 0 0 France NaN NaN NaN 0 2013-01-01 2013-05-14 42 6NaN 3 0NaNNaN
8 HarvardX/CB22x/2013_Spring MHxPC130088379 1 1 0 0 United States NaN NaN NaN 0 2013-02-18 2013-03-17 70 3NaN 3 0NaNNaN
9 HarvardX/CS50x/2012 MHxPC130088379 1 1 0 0 United States NaN NaN NaN 0 2012-10-20 NaN NaN 12NaN 3 0NaN 1
10 HarvardX/ER22x/2013_Spring MHxPC130088379 1 1 0 0 United States NaN NaN NaN 0 2013-02-23 2013-06-14 17 2NaN 2 0NaNNaN
11 HarvardX/ER22x/2013_Spring MHxPC130198098 1 1 0 0 United States NaN NaN NaN 0 2013-06-17 2013-06-17 32 1NaN 3 0NaNNaN
12 HarvardX/CB22x/2013_Spring MHxPC130024894 1 1 0 0 United States NaN NaN NaN 0.07 2013-01-24 2013-08-03 175 9NaN 7 0NaNNaN
13 HarvardX/CS50x/2012 MHxPC130024894 1 1 0 0 United States NaN NaN NaN 0 2013-06-27 NaN NaN 2NaN 2 0NaN 1
14 HarvardX/ER22x/2013_Spring MHxPC130024894 1 1 0 0 United States NaN NaN NaN 0 2012-12-19 2013-08-17 78 5NaN 4 0NaNNaN
15 HarvardX/PH207x/2012_Fall MHxPC130024894 1 1 0 0 United States NaN NaN NaN 0 2012-07-26 2013-01-16 75 14 5 2 0NaNNaN
16 HarvardX/PH278x/2013_Spring MHxPC130024894 1 1 0 0 United States NaN NaN NaN 0 2013-07-30 2013-08-27 11 2 2 1 0NaNNaN
17 HarvardX/CS50x/2012 MHxPC130080986 1 1 0 0 United States NaN NaN NaN 0 2012-10-15 NaN NaN 11NaN 1 0NaN 1
18 HarvardX/PH207x/2012_Fall MHxPC130080986 1 1 0 0 United States NaN NaN NaN 0 2012-10-25 2012-12-04 56 11 1 2 1NaNNaN
19 HarvardX/CS50x/2012 MHxPC130063375 1 1 0 0 Unknown/Other NaN NaN NaN 0 2012-10-19 NaN NaNNaNNaN 1 0NaN 1
20 HarvardX/CS50x/2012 MHxPC130094371 1 1 0 0 United States NaN NaN NaN 0 2013-03-03 2013-03-03 7 1NaN 2 0NaNNaN
21 HarvardX/CS50x/2012 MHxPC130229084 1 1 0 0 Mexico NaN NaN NaN 0 2012-10-15 NaN NaNNaNNaN 1 0NaN 1
22 HarvardX/CS50x/2012 MHxPC130300925 1 1 0 0 United States NaN NaN NaN 0 2012-10-24 NaN NaN 2NaN 1 0NaN 1
23 HarvardX/ER22x/2013_Spring MHxPC130300925 1 1 0 0 United States NaN NaN NaN 0 2012-12-20 2013-05-18 15 2NaN 2 0NaNNaN
24 HarvardX/CS50x/2012 MHxPC130417650 1 1 0 0 Australia NaN NaN NaN 0 2012-10-29 2013-03-04 1 1NaN 2 0NaNNaN
25 HarvardX/CS50x/2012 MHxPC130506580 1 0 0 0 United States NaN NaN NaN 0 2012-09-04 NaN NaNNaNNaNNaN 0NaNNaN
26 HarvardX/CS50x/2012 MHxPC130298257 1 0 0 0 United States NaN NaN NaN 0 2012-09-05 NaN NaNNaNNaN 3 0NaN 1
27 HarvardX/CS50x/2012 MHxPC130500569 1 1 0 0 United States NaN NaN NaN 0 2012-10-22 2013-03-30 6 1NaN 5 0NaNNaN
28 HarvardX/CS50x/2012 MHxPC130466479 1 1 0 0 Unknown/Other NaN NaN NaN 0 2013-01-07 NaN NaNNaNNaN 1 0NaN 1
29 HarvardX/CB22x/2013_Spring MHxPC130340959 1 1 0 0 United States NaN NaN NaN 0.05 2013-02-11 2013-04-06 285 8NaN 4 0NaNNaN
...............................................................
641108 MITx/6.002x/2013_Spring MHxPC130140735 1 1 0 0 United States Bachelor's 1991 m NaN 2013-09-07 2013-09-07 59 1 5 3 0NaNNaN
641109 MITx/6.00x/2013_Spring MHxPC130493130 1 0 0 0 United Kingdom Master's 1977 m NaN 2013-09-07 NaN NaNNaNNaN 2 0NaN 1
641110 MITx/6.00x/2013_Spring MHxPC130400592 1 1 0 0 Other Europe Secondary 1992 m NaN 2013-09-07 2013-09-07 395 1 51 4 0NaNNaN
641111 MITx/6.00x/2013_Spring MHxPC130109892 1 1 0 0 India Secondary 1995 m NaN 2013-09-07 2013-09-07 49 1 14 2 0NaNNaN
641112 MITx/14.73x/2013_Spring MHxPC130183007 1 0 0 0 India Master's 1985 m NaN 2013-09-07 NaN NaNNaNNaNNaN 0NaNNaN
641113 MITx/8.MReV/2013_Summer MHxPC130261281 1 1 0 0 India Secondary 1994 m 0 2013-09-07 2013-09-07 8 1NaN 1 0NaNNaN
641114 MITx/6.00x/2013_Spring MHxPC130481990 1 1 0 0 India Bachelor's 1989 m NaN 2013-09-07 2013-09-07 22 1 5 1 0NaNNaN
641115 MITx/6.00x/2013_Spring MHxPC130528581 1 0 0 0 United States Bachelor's 1990 f NaN 2013-09-07 2013-09-07 2 1NaN 3 0NaNNaN
641116 MITx/14.73x/2013_Spring MHxPC130555418 1 0 0 0 Unknown/Other Bachelor's 1988 m NaN 2013-09-07 NaN NaNNaNNaNNaN 0NaNNaN
641117 MITx/6.002x/2013_Spring MHxPC130408810 1 0 0 0 India Secondary 1993 m NaN 2013-09-07 2013-09-07 2 1NaN 3 0NaNNaN
641118 MITx/6.00x/2013_Spring MHxPC130040184 1 0 0 0 United States Secondary 1991 m NaN 2013-09-07 NaN NaNNaNNaNNaN 0NaNNaN
641119 MITx/6.002x/2013_Spring MHxPC130566049 1 0 0 0 Other Europe Master's 1982 m NaN 2013-09-07 2013-09-07 2 1NaN 2 0NaNNaN
641120 MITx/8.MReV/2013_Summer MHxPC130374105 1 1 0 0 India Bachelor's 1992 m 0 2013-09-07 2013-09-07 49 1NaN 1 0NaNNaN
641121 MITx/6.00x/2013_Spring MHxPC130282999 1 0 0 0 Other Europe Master's 1979 m NaN 2013-09-07 NaN NaNNaNNaN 7 0NaN 1
641122 MITx/8.MReV/2013_Summer MHxPC130556398 1 0 0 0 India Bachelor's 1985 m 0 2013-09-07 2013-09-07 1 1NaNNaN 0NaNNaN
641123 MITx/6.00x/2013_Spring MHxPC130573334 1 0 0 0 Spain Bachelor's 1989 m NaN 2013-09-07 2013-09-07 1 1NaNNaN 0NaNNaN
641124 MITx/6.00x/2013_Spring MHxPC130505931 1 1 0 0 India Secondary 1995 m NaN 2013-09-07 2013-09-07 59 1NaN 2 0NaNNaN
641125 MITx/6.002x/2013_Spring MHxPC130280976 1 0 0 0 United States Bachelor's NaN m NaN 2013-09-07 2013-09-07 2 1NaNNaN 0NaNNaN
641126 MITx/6.00x/2013_Spring MHxPC130137331 1 1 0 0 United States Secondary 1992 m NaN 2013-09-07 2013-09-07 251 1 77 4 0NaNNaN
641127 MITx/6.002x/2013_Spring MHxPC130271624 1 0 0 0 India Bachelor's 1989 m NaN 2013-09-07 2013-09-07 1 1NaNNaN 0NaNNaN
641128 MITx/14.73x/2013_Spring MHxPC130256541 1 1 0 0 United States Master's 1982 m NaN 2013-09-07 2013-09-07 51 1 1 1 0NaNNaN
641129 MITx/6.00x/2013_Spring MHxPC130021638 1 0 0 0 Unknown/Other Bachelor's 1988 m NaN 2013-09-07 NaN NaNNaNNaNNaN 0NaNNaN
641130 MITx/14.73x/2013_Spring MHxPC130591057 1 0 0 0 Canada Bachelor's NaN f NaN 2013-09-07 2013-09-07 6 1NaNNaN 0NaNNaN
641131 MITx/8.02x/2013_Spring MHxPC130226305 1 0 0 0 Unknown/Other Bachelor's 1988 m NaN 2013-09-07 2013-09-07 11 1NaN 2 0NaNNaN
641132 MITx/6.002x/2013_Spring MHxPC130030805 1 1 0 0 Pakistan Master's 1989 m NaN 2013-09-07 2013-09-07 29 1NaN 1 0NaNNaN
641133 MITx/6.00x/2013_Spring MHxPC130184108 1 1 0 0 Canada Bachelor's 1991 m NaN 2013-09-07 2013-09-07 97 1 4 2 0NaNNaN
641134 MITx/6.00x/2013_Spring MHxPC130359782 1 0 0 0 Other Europe Bachelor's 1991 f NaN 2013-09-07 2013-09-07 1 1NaNNaN 0NaNNaN
641135 MITx/6.002x/2013_Spring MHxPC130098513 1 0 0 0 United States Doctorate 1979 m NaN 2013-09-07 2013-09-07 1 1NaNNaN 0NaNNaN
641136 MITx/6.00x/2013_Spring MHxPC130098513 1 1 0 0 United States Doctorate 1979 m NaN 2013-09-07 2013-09-07 74 1 14 1 0NaNNaN
641137 MITx/8.02x/2013_Spring MHxPC130098513 1 0 0 0 United States Doctorate 1979 m NaN 2013-09-07 NaN NaN 1NaNNaN 0NaN 1
\n", "

641138 rows \u00d7 20 columns

\n", "
" ], "metadata": {}, "output_type": "pyout", "prompt_number": 20, "text": [ " course_id userid_DI registered viewed \\\n", "0 HarvardX/CB22x/2013_Spring MHxPC130442623 1 0 \n", "1 HarvardX/CS50x/2012 MHxPC130442623 1 1 \n", "2 HarvardX/CB22x/2013_Spring MHxPC130275857 1 0 \n", "3 HarvardX/CS50x/2012 MHxPC130275857 1 0 \n", "4 HarvardX/ER22x/2013_Spring MHxPC130275857 1 0 \n", "5 HarvardX/PH207x/2012_Fall MHxPC130275857 1 1 \n", "6 HarvardX/PH278x/2013_Spring MHxPC130275857 1 0 \n", "7 HarvardX/CB22x/2013_Spring MHxPC130539455 1 1 \n", "8 HarvardX/CB22x/2013_Spring MHxPC130088379 1 1 \n", "9 HarvardX/CS50x/2012 MHxPC130088379 1 1 \n", "10 HarvardX/ER22x/2013_Spring MHxPC130088379 1 1 \n", "11 HarvardX/ER22x/2013_Spring MHxPC130198098 1 1 \n", "12 HarvardX/CB22x/2013_Spring MHxPC130024894 1 1 \n", "13 HarvardX/CS50x/2012 MHxPC130024894 1 1 \n", "14 HarvardX/ER22x/2013_Spring MHxPC130024894 1 1 \n", "15 HarvardX/PH207x/2012_Fall MHxPC130024894 1 1 \n", "16 HarvardX/PH278x/2013_Spring MHxPC130024894 1 1 \n", "17 HarvardX/CS50x/2012 MHxPC130080986 1 1 \n", "18 HarvardX/PH207x/2012_Fall MHxPC130080986 1 1 \n", "19 HarvardX/CS50x/2012 MHxPC130063375 1 1 \n", "20 HarvardX/CS50x/2012 MHxPC130094371 1 1 \n", "21 HarvardX/CS50x/2012 MHxPC130229084 1 1 \n", "22 HarvardX/CS50x/2012 MHxPC130300925 1 1 \n", "23 HarvardX/ER22x/2013_Spring MHxPC130300925 1 1 \n", "24 HarvardX/CS50x/2012 MHxPC130417650 1 1 \n", "25 HarvardX/CS50x/2012 MHxPC130506580 1 0 \n", "26 HarvardX/CS50x/2012 MHxPC130298257 1 0 \n", "27 HarvardX/CS50x/2012 MHxPC130500569 1 1 \n", "28 HarvardX/CS50x/2012 MHxPC130466479 1 1 \n", "29 HarvardX/CB22x/2013_Spring MHxPC130340959 1 1 \n", "... ... ... ... ... \n", "641108 MITx/6.002x/2013_Spring MHxPC130140735 1 1 \n", "641109 MITx/6.00x/2013_Spring MHxPC130493130 1 0 \n", "641110 MITx/6.00x/2013_Spring MHxPC130400592 1 1 \n", "641111 MITx/6.00x/2013_Spring MHxPC130109892 1 1 \n", "641112 MITx/14.73x/2013_Spring MHxPC130183007 1 0 \n", "641113 MITx/8.MReV/2013_Summer MHxPC130261281 1 1 \n", "641114 MITx/6.00x/2013_Spring MHxPC130481990 1 1 \n", "641115 MITx/6.00x/2013_Spring MHxPC130528581 1 0 \n", "641116 MITx/14.73x/2013_Spring MHxPC130555418 1 0 \n", "641117 MITx/6.002x/2013_Spring MHxPC130408810 1 0 \n", "641118 MITx/6.00x/2013_Spring MHxPC130040184 1 0 \n", "641119 MITx/6.002x/2013_Spring MHxPC130566049 1 0 \n", "641120 MITx/8.MReV/2013_Summer MHxPC130374105 1 1 \n", "641121 MITx/6.00x/2013_Spring MHxPC130282999 1 0 \n", "641122 MITx/8.MReV/2013_Summer MHxPC130556398 1 0 \n", "641123 MITx/6.00x/2013_Spring MHxPC130573334 1 0 \n", "641124 MITx/6.00x/2013_Spring MHxPC130505931 1 1 \n", "641125 MITx/6.002x/2013_Spring MHxPC130280976 1 0 \n", "641126 MITx/6.00x/2013_Spring MHxPC130137331 1 1 \n", "641127 MITx/6.002x/2013_Spring MHxPC130271624 1 0 \n", "641128 MITx/14.73x/2013_Spring MHxPC130256541 1 1 \n", "641129 MITx/6.00x/2013_Spring MHxPC130021638 1 0 \n", "641130 MITx/14.73x/2013_Spring MHxPC130591057 1 0 \n", "641131 MITx/8.02x/2013_Spring MHxPC130226305 1 0 \n", "641132 MITx/6.002x/2013_Spring MHxPC130030805 1 1 \n", "641133 MITx/6.00x/2013_Spring MHxPC130184108 1 1 \n", "641134 MITx/6.00x/2013_Spring MHxPC130359782 1 0 \n", "641135 MITx/6.002x/2013_Spring MHxPC130098513 1 0 \n", "641136 MITx/6.00x/2013_Spring MHxPC130098513 1 1 \n", "641137 MITx/8.02x/2013_Spring MHxPC130098513 1 0 \n", "\n", " explored certified final_cc_cname_DI LoE_DI YoB gender grade \\\n", "0 0 0 United States NaN NaN NaN 0 \n", "1 0 0 United States NaN NaN NaN 0 \n", "2 0 0 United States NaN NaN NaN 0 \n", "3 0 0 United States NaN NaN NaN 0 \n", "4 0 0 United States NaN NaN NaN 0 \n", "5 1 0 United States NaN NaN NaN 0 \n", "6 0 0 United States NaN NaN NaN 0 \n", "7 0 0 France NaN NaN NaN 0 \n", "8 0 0 United States NaN NaN NaN 0 \n", "9 0 0 United States NaN NaN NaN 0 \n", "10 0 0 United States NaN NaN NaN 0 \n", "11 0 0 United States NaN NaN NaN 0 \n", "12 0 0 United States NaN NaN NaN 0.07 \n", "13 0 0 United States NaN NaN NaN 0 \n", "14 0 0 United States NaN NaN NaN 0 \n", "15 0 0 United States NaN NaN NaN 0 \n", "16 0 0 United States NaN NaN NaN 0 \n", "17 0 0 United States NaN NaN NaN 0 \n", "18 0 0 United States NaN NaN NaN 0 \n", "19 0 0 Unknown/Other NaN NaN NaN 0 \n", "20 0 0 United States NaN NaN NaN 0 \n", "21 0 0 Mexico NaN NaN NaN 0 \n", "22 0 0 United States NaN NaN NaN 0 \n", "23 0 0 United States NaN NaN NaN 0 \n", "24 0 0 Australia NaN NaN NaN 0 \n", "25 0 0 United States NaN NaN NaN 0 \n", "26 0 0 United States NaN NaN NaN 0 \n", "27 0 0 United States NaN NaN NaN 0 \n", "28 0 0 Unknown/Other NaN NaN NaN 0 \n", "29 0 0 United States NaN NaN NaN 0.05 \n", "... ... ... ... ... ... ... ... \n", "641108 0 0 United States Bachelor's 1991 m NaN \n", "641109 0 0 United Kingdom Master's 1977 m NaN \n", "641110 0 0 Other Europe Secondary 1992 m NaN \n", "641111 0 0 India Secondary 1995 m NaN \n", "641112 0 0 India Master's 1985 m NaN \n", "641113 0 0 India Secondary 1994 m 0 \n", "641114 0 0 India Bachelor's 1989 m NaN \n", "641115 0 0 United States Bachelor's 1990 f NaN \n", "641116 0 0 Unknown/Other Bachelor's 1988 m NaN \n", "641117 0 0 India Secondary 1993 m NaN \n", "641118 0 0 United States Secondary 1991 m NaN \n", "641119 0 0 Other Europe Master's 1982 m NaN \n", "641120 0 0 India Bachelor's 1992 m 0 \n", "641121 0 0 Other Europe Master's 1979 m NaN \n", "641122 0 0 India Bachelor's 1985 m 0 \n", "641123 0 0 Spain Bachelor's 1989 m NaN \n", "641124 0 0 India Secondary 1995 m NaN \n", "641125 0 0 United States Bachelor's NaN m NaN \n", "641126 0 0 United States Secondary 1992 m NaN \n", "641127 0 0 India Bachelor's 1989 m NaN \n", "641128 0 0 United States Master's 1982 m NaN \n", "641129 0 0 Unknown/Other Bachelor's 1988 m NaN \n", "641130 0 0 Canada Bachelor's NaN f NaN \n", "641131 0 0 Unknown/Other Bachelor's 1988 m NaN \n", "641132 0 0 Pakistan Master's 1989 m NaN \n", "641133 0 0 Canada Bachelor's 1991 m NaN \n", "641134 0 0 Other Europe Bachelor's 1991 f NaN \n", "641135 0 0 United States Doctorate 1979 m NaN \n", "641136 0 0 United States Doctorate 1979 m NaN \n", "641137 0 0 United States Doctorate 1979 m NaN \n", "\n", " start_time_DI last_event_DI nevents ndays_act nplay_video \\\n", "0 2012-12-19 2013-11-17 NaN 9 NaN \n", "1 2012-10-15 NaN NaN 9 NaN \n", "2 2013-02-08 2013-11-17 NaN 16 NaN \n", "3 2012-09-17 NaN NaN 16 NaN \n", "4 2012-12-19 NaN NaN 16 NaN \n", "5 2012-09-17 2013-05-23 502 16 50 \n", "6 2013-02-08 NaN NaN 16 NaN \n", "7 2013-01-01 2013-05-14 42 6 NaN \n", "8 2013-02-18 2013-03-17 70 3 NaN \n", "9 2012-10-20 NaN NaN 12 NaN \n", "10 2013-02-23 2013-06-14 17 2 NaN \n", "11 2013-06-17 2013-06-17 32 1 NaN \n", "12 2013-01-24 2013-08-03 175 9 NaN \n", "13 2013-06-27 NaN NaN 2 NaN \n", "14 2012-12-19 2013-08-17 78 5 NaN \n", "15 2012-07-26 2013-01-16 75 14 5 \n", "16 2013-07-30 2013-08-27 11 2 2 \n", "17 2012-10-15 NaN NaN 11 NaN \n", "18 2012-10-25 2012-12-04 56 11 1 \n", "19 2012-10-19 NaN NaN NaN NaN \n", "20 2013-03-03 2013-03-03 7 1 NaN \n", "21 2012-10-15 NaN NaN NaN NaN \n", "22 2012-10-24 NaN NaN 2 NaN \n", "23 2012-12-20 2013-05-18 15 2 NaN \n", "24 2012-10-29 2013-03-04 1 1 NaN \n", "25 2012-09-04 NaN NaN NaN NaN \n", "26 2012-09-05 NaN NaN NaN NaN \n", "27 2012-10-22 2013-03-30 6 1 NaN \n", "28 2013-01-07 NaN NaN NaN NaN \n", "29 2013-02-11 2013-04-06 285 8 NaN \n", "... ... ... ... ... ... \n", "641108 2013-09-07 2013-09-07 59 1 5 \n", "641109 2013-09-07 NaN NaN NaN NaN \n", "641110 2013-09-07 2013-09-07 395 1 51 \n", "641111 2013-09-07 2013-09-07 49 1 14 \n", "641112 2013-09-07 NaN NaN NaN NaN \n", "641113 2013-09-07 2013-09-07 8 1 NaN \n", "641114 2013-09-07 2013-09-07 22 1 5 \n", "641115 2013-09-07 2013-09-07 2 1 NaN \n", "641116 2013-09-07 NaN NaN NaN NaN \n", "641117 2013-09-07 2013-09-07 2 1 NaN \n", "641118 2013-09-07 NaN NaN NaN NaN \n", "641119 2013-09-07 2013-09-07 2 1 NaN \n", "641120 2013-09-07 2013-09-07 49 1 NaN \n", "641121 2013-09-07 NaN NaN NaN NaN \n", "641122 2013-09-07 2013-09-07 1 1 NaN \n", "641123 2013-09-07 2013-09-07 1 1 NaN \n", "641124 2013-09-07 2013-09-07 59 1 NaN \n", "641125 2013-09-07 2013-09-07 2 1 NaN \n", "641126 2013-09-07 2013-09-07 251 1 77 \n", "641127 2013-09-07 2013-09-07 1 1 NaN \n", "641128 2013-09-07 2013-09-07 51 1 1 \n", "641129 2013-09-07 NaN NaN NaN NaN \n", "641130 2013-09-07 2013-09-07 6 1 NaN \n", "641131 2013-09-07 2013-09-07 11 1 NaN \n", "641132 2013-09-07 2013-09-07 29 1 NaN \n", "641133 2013-09-07 2013-09-07 97 1 4 \n", "641134 2013-09-07 2013-09-07 1 1 NaN \n", "641135 2013-09-07 2013-09-07 1 1 NaN \n", "641136 2013-09-07 2013-09-07 74 1 14 \n", "641137 2013-09-07 NaN NaN 1 NaN \n", "\n", " nchapters nforum_posts roles incomplete_flag \n", "0 NaN 0 NaN 1 \n", "1 1 0 NaN 1 \n", "2 NaN 0 NaN 1 \n", "3 NaN 0 NaN 1 \n", "4 NaN 0 NaN 1 \n", "5 12 0 NaN NaN \n", "6 NaN 0 NaN 1 \n", "7 3 0 NaN NaN \n", "8 3 0 NaN NaN \n", "9 3 0 NaN 1 \n", "10 2 0 NaN NaN \n", "11 3 0 NaN NaN \n", "12 7 0 NaN NaN \n", "13 2 0 NaN 1 \n", "14 4 0 NaN NaN \n", "15 2 0 NaN NaN \n", "16 1 0 NaN NaN \n", "17 1 0 NaN 1 \n", "18 2 1 NaN NaN \n", "19 1 0 NaN 1 \n", "20 2 0 NaN NaN \n", "21 1 0 NaN 1 \n", "22 1 0 NaN 1 \n", "23 2 0 NaN NaN \n", "24 2 0 NaN NaN \n", "25 NaN 0 NaN NaN \n", "26 3 0 NaN 1 \n", "27 5 0 NaN NaN \n", "28 1 0 NaN 1 \n", "29 4 0 NaN NaN \n", "... ... ... ... ... \n", "641108 3 0 NaN NaN \n", "641109 2 0 NaN 1 \n", "641110 4 0 NaN NaN \n", "641111 2 0 NaN NaN \n", "641112 NaN 0 NaN NaN \n", "641113 1 0 NaN NaN \n", "641114 1 0 NaN NaN \n", "641115 3 0 NaN NaN \n", "641116 NaN 0 NaN NaN \n", "641117 3 0 NaN NaN \n", "641118 NaN 0 NaN NaN \n", "641119 2 0 NaN NaN \n", "641120 1 0 NaN NaN \n", "641121 7 0 NaN 1 \n", "641122 NaN 0 NaN NaN \n", "641123 NaN 0 NaN NaN \n", "641124 2 0 NaN NaN \n", "641125 NaN 0 NaN NaN \n", "641126 4 0 NaN NaN \n", "641127 NaN 0 NaN NaN \n", "641128 1 0 NaN NaN \n", "641129 NaN 0 NaN NaN \n", "641130 NaN 0 NaN NaN \n", "641131 2 0 NaN NaN \n", "641132 1 0 NaN NaN \n", "641133 2 0 NaN NaN \n", "641134 NaN 0 NaN NaN \n", "641135 NaN 0 NaN NaN \n", "641136 1 0 NaN NaN \n", "641137 NaN 0 NaN 1 \n", "\n", "[641138 rows x 20 columns]" ] } ], "prompt_number": 20 }, { "cell_type": "code", "collapsed": false, "input": [ "df[\"course_id\"] #this evaluates to a Series" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 21, "text": [ "0 HarvardX/CB22x/2013_Spring\n", "1 HarvardX/CS50x/2012\n", "2 HarvardX/CB22x/2013_Spring\n", "3 HarvardX/CS50x/2012\n", "4 HarvardX/ER22x/2013_Spring\n", "5 HarvardX/PH207x/2012_Fall\n", "6 HarvardX/PH278x/2013_Spring\n", "7 HarvardX/CB22x/2013_Spring\n", "8 HarvardX/CB22x/2013_Spring\n", "9 HarvardX/CS50x/2012\n", "10 HarvardX/ER22x/2013_Spring\n", "11 HarvardX/ER22x/2013_Spring\n", "12 HarvardX/CB22x/2013_Spring\n", "13 HarvardX/CS50x/2012\n", "14 HarvardX/ER22x/2013_Spring\n", "...\n", "641123 MITx/6.00x/2013_Spring\n", "641124 MITx/6.00x/2013_Spring\n", "641125 MITx/6.002x/2013_Spring\n", "641126 MITx/6.00x/2013_Spring\n", "641127 MITx/6.002x/2013_Spring\n", "641128 MITx/14.73x/2013_Spring\n", "641129 MITx/6.00x/2013_Spring\n", "641130 MITx/14.73x/2013_Spring\n", "641131 MITx/8.02x/2013_Spring\n", "641132 MITx/6.002x/2013_Spring\n", "641133 MITx/6.00x/2013_Spring\n", "641134 MITx/6.00x/2013_Spring\n", "641135 MITx/6.002x/2013_Spring\n", "641136 MITx/6.00x/2013_Spring\n", "641137 MITx/8.02x/2013_Spring\n", "Name: course_id, Length: 641138, dtype: object" ] } ], "prompt_number": 21 }, { "cell_type": "code", "collapsed": false, "input": [ "df.ix[100,16] #this picks out a particular value at [row, column]" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 25, "text": [ "nan" ] } ], "prompt_number": 25 }, { "cell_type": "code", "collapsed": false, "input": [ "df[\"course_id\"][2240:2250]" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 29, "text": [ "2240 HarvardX/CS50x/2012\n", "2241 HarvardX/ER22x/2013_Spring\n", "2242 HarvardX/PH207x/2012_Fall\n", "2243 HarvardX/PH207x/2012_Fall\n", "2244 HarvardX/CS50x/2012\n", "2245 HarvardX/CB22x/2013_Spring\n", "2246 HarvardX/ER22x/2013_Spring\n", "2247 HarvardX/CS50x/2012\n", "2248 HarvardX/CS50x/2012\n", "2249 HarvardX/CB22x/2013_Spring\n", "Name: course_id, dtype: object" ] } ], "prompt_number": 29 }, { "cell_type": "code", "collapsed": false, "input": [ "df[2240:2250]" ], "language": "python", "metadata": {}, "outputs": [ { "html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
course_iduserid_DIregisteredviewedexploredcertifiedfinal_cc_cname_DILoE_DIYoBgendergradestart_time_DIlast_event_DIneventsndays_actnplay_videonchaptersnforum_postsrolesincomplete_flag
2240 HarvardX/CS50x/2012 MHxPC130136599 1 0 0 0 China NaNNaN NaN 0.0 2012-07-26 NaN NaNNaN NaNNaN 0NaNNaN
2241 HarvardX/ER22x/2013_Spring MHxPC130024795 1 1 0 0 Other South Asia NaNNaN NaN NaN 2013-02-06 2013-03-20 25 1 NaN 2 0NaNNaN
2242 HarvardX/PH207x/2012_Fall MHxPC130024795 1 1 1 1 Other South Asia NaNNaN NaN 0.91 2012-10-07 2013-04-23 8066 32 917 15 0NaNNaN
2243 HarvardX/PH207x/2012_Fall MHxPC130524812 1 1 0 0 Other Africa NaNNaN NaN 0 2012-08-17 2012-10-21 403 3 90 2 0NaNNaN
2244 HarvardX/CS50x/2012 MHxPC130493694 1 0 0 0 United States NaNNaN NaN 0 2012-08-17 NaN NaNNaN NaNNaN 0NaNNaN
2245 HarvardX/CB22x/2013_Spring MHxPC130527617 1 1 0 0 Germany NaNNaN NaN 0 2013-01-22 2013-03-14 6 2 NaN 1 0NaNNaN
2246 HarvardX/ER22x/2013_Spring MHxPC130527617 1 0 0 0 Germany NaNNaN NaN 0 2013-01-22 NaN NaN 2 NaNNaN 0NaN 1
2247 HarvardX/CS50x/2012 MHxPC130156189 1 0 0 0 India NaNNaN NaN 0 2012-08-17 NaN NaNNaN NaNNaN 0NaNNaN
2248 HarvardX/CS50x/2012 MHxPC130593566 1 1 0 0 India NaNNaN NaN 0 2012-07-25 2013-05-22 1 1 NaN 3 0NaNNaN
2249 HarvardX/CB22x/2013_Spring MHxPC130404169 1 0 0 0 Canada NaNNaN NaN 0 2013-02-14 2013-03-14 4 2 NaNNaN 0NaNNaN
\n", "
" ], "metadata": {}, "output_type": "pyout", "prompt_number": 30, "text": [ " course_id userid_DI registered viewed \\\n", "2240 HarvardX/CS50x/2012 MHxPC130136599 1 0 \n", "2241 HarvardX/ER22x/2013_Spring MHxPC130024795 1 1 \n", "2242 HarvardX/PH207x/2012_Fall MHxPC130024795 1 1 \n", "2243 HarvardX/PH207x/2012_Fall MHxPC130524812 1 1 \n", "2244 HarvardX/CS50x/2012 MHxPC130493694 1 0 \n", "2245 HarvardX/CB22x/2013_Spring MHxPC130527617 1 1 \n", "2246 HarvardX/ER22x/2013_Spring MHxPC130527617 1 0 \n", "2247 HarvardX/CS50x/2012 MHxPC130156189 1 0 \n", "2248 HarvardX/CS50x/2012 MHxPC130593566 1 1 \n", "2249 HarvardX/CB22x/2013_Spring MHxPC130404169 1 0 \n", "\n", " explored certified final_cc_cname_DI LoE_DI YoB gender grade \\\n", "2240 0 0 China NaN NaN NaN 0.0 \n", "2241 0 0 Other South Asia NaN NaN NaN NaN \n", "2242 1 1 Other South Asia NaN NaN NaN 0.91 \n", "2243 0 0 Other Africa NaN NaN NaN 0 \n", "2244 0 0 United States NaN NaN NaN 0 \n", "2245 0 0 Germany NaN NaN NaN 0 \n", "2246 0 0 Germany NaN NaN NaN 0 \n", "2247 0 0 India NaN NaN NaN 0 \n", "2248 0 0 India NaN NaN NaN 0 \n", "2249 0 0 Canada NaN NaN NaN 0 \n", "\n", " start_time_DI last_event_DI nevents ndays_act nplay_video nchapters \\\n", "2240 2012-07-26 NaN NaN NaN NaN NaN \n", "2241 2013-02-06 2013-03-20 25 1 NaN 2 \n", "2242 2012-10-07 2013-04-23 8066 32 917 15 \n", "2243 2012-08-17 2012-10-21 403 3 90 2 \n", "2244 2012-08-17 NaN NaN NaN NaN NaN \n", "2245 2013-01-22 2013-03-14 6 2 NaN 1 \n", "2246 2013-01-22 NaN NaN 2 NaN NaN \n", "2247 2012-08-17 NaN NaN NaN NaN NaN \n", "2248 2012-07-25 2013-05-22 1 1 NaN 3 \n", "2249 2013-02-14 2013-03-14 4 2 NaN NaN \n", "\n", " nforum_posts roles incomplete_flag \n", "2240 0 NaN NaN \n", "2241 0 NaN NaN \n", "2242 0 NaN NaN \n", "2243 0 NaN NaN \n", "2244 0 NaN NaN \n", "2245 0 NaN NaN \n", "2246 0 NaN 1 \n", "2247 0 NaN NaN \n", "2248 0 NaN NaN \n", "2249 0 NaN NaN " ] } ], "prompt_number": 30 }, { "cell_type": "code", "collapsed": false, "input": [ "df[666] #error on purpose!" ], "language": "python", "metadata": {}, "outputs": [ { "ename": "KeyError", "evalue": "666", "output_type": "pyerr", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m\n\u001b[0;31mKeyError\u001b[0m Traceback (most recent call last)", "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mdf\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m666\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", "\u001b[0;32m/usr/local/lib/python2.7/dist-packages/pandas/core/frame.pyc\u001b[0m in \u001b[0;36m__getitem__\u001b[0;34m(self, key)\u001b[0m\n\u001b[1;32m 1682\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_getitem_multilevel\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mkey\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1683\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 1684\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_getitem_column\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mkey\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 1685\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1686\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0m_getitem_column\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mkey\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m/usr/local/lib/python2.7/dist-packages/pandas/core/frame.pyc\u001b[0m in \u001b[0;36m_getitem_column\u001b[0;34m(self, key)\u001b[0m\n\u001b[1;32m 1689\u001b[0m \u001b[0;31m# get column\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1690\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mcolumns\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mis_unique\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 1691\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_get_item_cache\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mkey\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 1692\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1693\u001b[0m \u001b[0;31m# duplicate columns & possible reduce dimensionaility\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m/usr/local/lib/python2.7/dist-packages/pandas/core/generic.pyc\u001b[0m in \u001b[0;36m_get_item_cache\u001b[0;34m(self, item)\u001b[0m\n\u001b[1;32m 1050\u001b[0m \u001b[0mres\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mcache\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mitem\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1051\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mres\u001b[0m \u001b[0;32mis\u001b[0m \u001b[0mNone\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 1052\u001b[0;31m \u001b[0mvalues\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_data\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mitem\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 1053\u001b[0m \u001b[0mres\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_box_item_values\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mitem\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mvalues\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1054\u001b[0m \u001b[0mcache\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mitem\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mres\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m/usr/local/lib/python2.7/dist-packages/pandas/core/internals.pyc\u001b[0m in \u001b[0;36mget\u001b[0;34m(self, item)\u001b[0m\n\u001b[1;32m 2535\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 2536\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0misnull\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mitem\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 2537\u001b[0;31m \u001b[0mloc\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mitems\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget_loc\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mitem\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 2538\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 2539\u001b[0m \u001b[0mindexer\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mnp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0marange\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mlen\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mitems\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0misnull\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mitems\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m/usr/local/lib/python2.7/dist-packages/pandas/core/index.pyc\u001b[0m in \u001b[0;36mget_loc\u001b[0;34m(self, key)\u001b[0m\n\u001b[1;32m 1154\u001b[0m \u001b[0mloc\u001b[0m \u001b[0;34m:\u001b[0m \u001b[0mint\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0munique\u001b[0m \u001b[0mindex\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mpossibly\u001b[0m \u001b[0mslice\u001b[0m \u001b[0;32mor\u001b[0m \u001b[0mmask\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0;32mnot\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1155\u001b[0m \"\"\"\n\u001b[0;32m-> 1156\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_engine\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget_loc\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0m_values_from_object\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mkey\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 1157\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1158\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0mget_value\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mseries\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mkey\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m/usr/local/lib/python2.7/dist-packages/pandas/index.so\u001b[0m in \u001b[0;36mpandas.index.IndexEngine.get_loc (pandas/index.c:3353)\u001b[0;34m()\u001b[0m\n", "\u001b[0;32m/usr/local/lib/python2.7/dist-packages/pandas/index.so\u001b[0m in \u001b[0;36mpandas.index.IndexEngine.get_loc (pandas/index.c:3233)\u001b[0;34m()\u001b[0m\n", "\u001b[0;32m/usr/local/lib/python2.7/dist-packages/pandas/hashtable.so\u001b[0m in \u001b[0;36mpandas.hashtable.PyObjectHashTable.get_item (pandas/hashtable.c:11148)\u001b[0;34m()\u001b[0m\n", "\u001b[0;32m/usr/local/lib/python2.7/dist-packages/pandas/hashtable.so\u001b[0m in \u001b[0;36mpandas.hashtable.PyObjectHashTable.get_item (pandas/hashtable.c:11101)\u001b[0;34m()\u001b[0m\n", "\u001b[0;31mKeyError\u001b[0m: 666" ] } ], "prompt_number": 31 }, { "cell_type": "code", "collapsed": false, "input": [ "df.ix[666] #evaluates to series" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 37, "text": [ "course_id HarvardX/CS50x/2012\n", "userid_DI MHxPC130297337\n", "registered 1\n", "viewed 0\n", "explored 0\n", "certified 0\n", "final_cc_cname_DI United Kingdom\n", "LoE_DI NaN\n", "YoB NaN\n", "gender NaN\n", "grade 0\n", "start_time_DI 2012-08-17\n", "last_event_DI NaN\n", "nevents NaN\n", "ndays_act NaN\n", "nplay_video NaN\n", "nchapters NaN\n", "nforum_posts 0\n", "roles NaN\n", "incomplete_flag NaN\n", "Name: 666, dtype: object" ] } ], "prompt_number": 37 }, { "cell_type": "code", "collapsed": false, "input": [ "df.ix[[666]] #evaluates to data frame" ], "language": "python", "metadata": {}, "outputs": [ { "html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
course_iduserid_DIregisteredviewedexploredcertifiedfinal_cc_cname_DILoE_DIYoBgendergradestart_time_DIlast_event_DIneventsndays_actnplay_videonchaptersnforum_postsrolesincomplete_flag
666 HarvardX/CS50x/2012 MHxPC130297337 1 0 0 0 United Kingdom NaNNaN NaN 0 2012-08-17 NaNNaNNaNNaNNaN 0NaNNaN
\n", "
" ], "metadata": {}, "output_type": "pyout", "prompt_number": 38, "text": [ " course_id userid_DI registered viewed explored \\\n", "666 HarvardX/CS50x/2012 MHxPC130297337 1 0 0 \n", "\n", " certified final_cc_cname_DI LoE_DI YoB gender grade start_time_DI \\\n", "666 0 United Kingdom NaN NaN NaN 0 2012-08-17 \n", "\n", " last_event_DI nevents ndays_act nplay_video nchapters nforum_posts \\\n", "666 NaN NaN NaN NaN NaN 0 \n", "\n", " roles incomplete_flag \n", "666 NaN NaN " ] } ], "prompt_number": 38 }, { "cell_type": "code", "collapsed": false, "input": [ "df[[\"gender\", \"grade\"]][1781:1787].mean()" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 41, "text": [ "gender NaN\n", "grade 0\n", "dtype: float64" ] } ], "prompt_number": 41 }, { "cell_type": "code", "collapsed": false, "input": [ "country_series=df[\"final_cc_cname_DI\"]" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 47 }, { "cell_type": "code", "collapsed": false, "input": [ "country_series==\"France\"" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 56, "text": [ "0 False\n", "1 False\n", "2 False\n", "3 False\n", "4 False\n", "5 False\n", "6 False\n", "7 True\n", "8 False\n", "9 False\n", "10 False\n", "11 False\n", "12 False\n", "13 False\n", "14 False\n", "...\n", "641123 False\n", "641124 False\n", "641125 False\n", "641126 False\n", "641127 False\n", "641128 False\n", "641129 False\n", "641130 False\n", "641131 False\n", "641132 False\n", "641133 False\n", "641134 False\n", "641135 False\n", "641136 False\n", "641137 False\n", "Name: final_cc_cname_DI, Length: 641138, dtype: bool" ] } ], "prompt_number": 56 }, { "cell_type": "code", "collapsed": false, "input": [ "country_france_boolean_series=(country_series=='France')" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 57 }, { "cell_type": "code", "collapsed": false, "input": [ "country_france_boolean_series" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 58, "text": [ "0 False\n", "1 False\n", "2 False\n", "3 False\n", "4 False\n", "5 False\n", "6 False\n", "7 True\n", "8 False\n", "9 False\n", "10 False\n", "11 False\n", "12 False\n", "13 False\n", "14 False\n", "...\n", "641123 False\n", "641124 False\n", "641125 False\n", "641126 False\n", "641127 False\n", "641128 False\n", "641129 False\n", "641130 False\n", "641131 False\n", "641132 False\n", "641133 False\n", "641134 False\n", "641135 False\n", "641136 False\n", "641137 False\n", "Name: final_cc_cname_DI, Length: 641138, dtype: bool" ] } ], "prompt_number": 58 }, { "cell_type": "code", "collapsed": false, "input": [ "df['nchapters']" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 61, "text": [ "0 NaN\n", "1 1\n", "2 NaN\n", "3 NaN\n", "4 NaN\n", "5 12\n", "6 NaN\n", "7 3\n", "8 3\n", "9 3\n", "10 2\n", "11 3\n", "12 7\n", "13 2\n", "14 4\n", "...\n", "641123 NaN\n", "641124 2\n", "641125 NaN\n", "641126 4\n", "641127 NaN\n", "641128 1\n", "641129 NaN\n", "641130 NaN\n", "641131 2\n", "641132 1\n", "641133 2\n", "641134 NaN\n", "641135 NaN\n", "641136 1\n", "641137 NaN\n", "Name: nchapters, Length: 641138, dtype: float64" ] } ], "prompt_number": 61 }, { "cell_type": "code", "collapsed": false, "input": [ "df['nchapters']>0" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 62, "text": [ "0 False\n", "1 True\n", "2 False\n", "3 False\n", "4 False\n", "5 True\n", "6 False\n", "7 True\n", "8 True\n", "9 True\n", "10 True\n", "11 True\n", "12 True\n", "13 True\n", "14 True\n", "...\n", "641123 False\n", "641124 True\n", "641125 False\n", "641126 True\n", "641127 False\n", "641128 True\n", "641129 False\n", "641130 False\n", "641131 True\n", "641132 True\n", "641133 True\n", "641134 False\n", "641135 False\n", "641136 True\n", "641137 False\n", "Name: nchapters, Length: 641138, dtype: bool" ] } ], "prompt_number": 62 }, { "cell_type": "code", "collapsed": false, "input": [ "nchapters_watched_series=(df['nchapters']>0)" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 63 }, { "cell_type": "code", "collapsed": false, "input": [ "df[nchapters_watched_series]" ], "language": "python", "metadata": {}, "outputs": [ { "html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
course_iduserid_DIregisteredviewedexploredcertifiedfinal_cc_cname_DILoE_DIYoBgendergradestart_time_DIlast_event_DIneventsndays_actnplay_videonchaptersnforum_postsrolesincomplete_flag
1 HarvardX/CS50x/2012 MHxPC130442623 1 1 0 0 United States NaN NaN NaN 0 2012-10-15 NaN NaN 9NaN 1 0NaN 1
5 HarvardX/PH207x/2012_Fall MHxPC130275857 1 1 1 0 United States NaN NaN NaN 0 2012-09-17 2013-05-23 502 16 50 12 0NaNNaN
7 HarvardX/CB22x/2013_Spring MHxPC130539455 1 1 0 0 France NaN NaN NaN 0 2013-01-01 2013-05-14 42 6NaN 3 0NaNNaN
8 HarvardX/CB22x/2013_Spring MHxPC130088379 1 1 0 0 United States NaN NaN NaN 0 2013-02-18 2013-03-17 70 3NaN 3 0NaNNaN
9 HarvardX/CS50x/2012 MHxPC130088379 1 1 0 0 United States NaN NaN NaN 0 2012-10-20 NaN NaN 12NaN 3 0NaN 1
10 HarvardX/ER22x/2013_Spring MHxPC130088379 1 1 0 0 United States NaN NaN NaN 0 2013-02-23 2013-06-14 17 2NaN 2 0NaNNaN
11 HarvardX/ER22x/2013_Spring MHxPC130198098 1 1 0 0 United States NaN NaN NaN 0 2013-06-17 2013-06-17 32 1NaN 3 0NaNNaN
12 HarvardX/CB22x/2013_Spring MHxPC130024894 1 1 0 0 United States NaN NaN NaN 0.07 2013-01-24 2013-08-03 175 9NaN 7 0NaNNaN
13 HarvardX/CS50x/2012 MHxPC130024894 1 1 0 0 United States NaN NaN NaN 0 2013-06-27 NaN NaN 2NaN 2 0NaN 1
14 HarvardX/ER22x/2013_Spring MHxPC130024894 1 1 0 0 United States NaN NaN NaN 0 2012-12-19 2013-08-17 78 5NaN 4 0NaNNaN
15 HarvardX/PH207x/2012_Fall MHxPC130024894 1 1 0 0 United States NaN NaN NaN 0 2012-07-26 2013-01-16 75 14 5 2 0NaNNaN
16 HarvardX/PH278x/2013_Spring MHxPC130024894 1 1 0 0 United States NaN NaN NaN 0 2013-07-30 2013-08-27 11 2 2 1 0NaNNaN
17 HarvardX/CS50x/2012 MHxPC130080986 1 1 0 0 United States NaN NaN NaN 0 2012-10-15 NaN NaN 11NaN 1 0NaN 1
18 HarvardX/PH207x/2012_Fall MHxPC130080986 1 1 0 0 United States NaN NaN NaN 0 2012-10-25 2012-12-04 56 11 1 2 1NaNNaN
19 HarvardX/CS50x/2012 MHxPC130063375 1 1 0 0 Unknown/Other NaN NaN NaN 0 2012-10-19 NaN NaNNaNNaN 1 0NaN 1
20 HarvardX/CS50x/2012 MHxPC130094371 1 1 0 0 United States NaN NaN NaN 0 2013-03-03 2013-03-03 7 1NaN 2 0NaNNaN
21 HarvardX/CS50x/2012 MHxPC130229084 1 1 0 0 Mexico NaN NaN NaN 0 2012-10-15 NaN NaNNaNNaN 1 0NaN 1
22 HarvardX/CS50x/2012 MHxPC130300925 1 1 0 0 United States NaN NaN NaN 0 2012-10-24 NaN NaN 2NaN 1 0NaN 1
23 HarvardX/ER22x/2013_Spring MHxPC130300925 1 1 0 0 United States NaN NaN NaN 0 2012-12-20 2013-05-18 15 2NaN 2 0NaNNaN
24 HarvardX/CS50x/2012 MHxPC130417650 1 1 0 0 Australia NaN NaN NaN 0 2012-10-29 2013-03-04 1 1NaN 2 0NaNNaN
26 HarvardX/CS50x/2012 MHxPC130298257 1 0 0 0 United States NaN NaN NaN 0 2012-09-05 NaN NaNNaNNaN 3 0NaN 1
27 HarvardX/CS50x/2012 MHxPC130500569 1 1 0 0 United States NaN NaN NaN 0 2012-10-22 2013-03-30 6 1NaN 5 0NaNNaN
28 HarvardX/CS50x/2012 MHxPC130466479 1 1 0 0 Unknown/Other NaN NaN NaN 0 2013-01-07 NaN NaNNaNNaN 1 0NaN 1
29 HarvardX/CB22x/2013_Spring MHxPC130340959 1 1 0 0 United States NaN NaN NaN 0.05 2013-02-11 2013-04-06 285 8NaN 4 0NaNNaN
33 HarvardX/CS50x/2012 MHxPC130356280 1 1 0 0 India NaN NaN NaN 0 2012-09-27 2013-03-31 3 1NaN 1 0NaNNaN
34 HarvardX/CS50x/2012 MHxPC130328890 1 1 0 0 Australia NaN NaN NaN 0 2012-12-10 2013-02-27 2 1NaN 5 0NaNNaN
36 HarvardX/CB22x/2013_Spring MHxPC130435030 1 1 0 0 Canada NaN NaN NaN 0 2013-02-20 2013-06-29 80 5NaN 2 0NaNNaN
37 HarvardX/CS50x/2012 MHxPC130435030 1 1 0 0 Canada NaN NaN NaN 0 2012-10-13 NaN NaN 1NaN 1 0NaN 1
41 HarvardX/CB22x/2013_Spring MHxPC130542822 1 1 0 0 United States NaN NaN NaN NaN 2012-12-20 2013-03-14 21 3NaN 1 0NaNNaN
43 HarvardX/ER22x/2013_Spring MHxPC130069044 1 0 0 0 United States NaN NaN NaN 0 2013-04-22 2013-04-23 1 1NaN 2 0NaNNaN
...............................................................
641083 MITx/6.00x/2013_Spring MHxPC130238153 1 1 0 0 United States Secondary 1988 m NaN 2013-09-07 2013-09-07 116 1 20 2 0NaNNaN
641084 MITx/6.002x/2013_Spring MHxPC130544641 1 1 0 0 India Bachelor's 1992 m NaN 2013-09-07 2013-09-07 245 1 56 1 0NaNNaN
641085 MITx/8.02x/2013_Spring MHxPC130117789 1 1 0 0 India Less than Secondary 1996 m NaN 2013-09-07 2013-09-07 169 1 45 3 0NaNNaN
641086 MITx/14.73x/2013_Spring MHxPC130122763 1 1 0 0 India Master's 1987 m NaN 2013-09-07 2013-09-07 3 1NaN 1 0NaNNaN
641088 MITx/6.00x/2013_Spring MHxPC130214187 1 0 0 0 India Bachelor's 1984 m NaN 2013-09-07 2013-09-07 1 1NaN 3 0NaNNaN
641089 MITx/6.002x/2013_Spring MHxPC130145710 1 1 0 0 India Bachelor's 1989 m NaN 2013-09-07 2013-09-07 82 1 16 5 0NaNNaN
641099 MITx/6.00x/2013_Spring MHxPC130455967 1 1 0 0 United States Bachelor's 1988 m NaN 2013-09-07 2013-09-07 242 1 22 5 0NaNNaN
641100 MITx/6.002x/2013_Spring MHxPC130040345 1 1 0 0 India Secondary 1993 f NaN 2013-09-07 2013-09-07 94 1 7 2 0NaNNaN
641101 MITx/6.00x/2013_Spring MHxPC130298117 1 0 0 0 Russian Federation Less than Secondary 1997 m NaN 2013-09-07 NaN NaNNaNNaN 1 0NaN 1
641102 MITx/6.00x/2013_Spring MHxPC130024301 1 1 0 0 Morocco Secondary 1994 m NaN 2013-09-07 2013-09-07 25 1NaN 2 0NaNNaN
641103 MITx/6.00x/2013_Spring MHxPC130097716 1 1 0 0 India Bachelor's 1981 m NaN 2013-09-07 2013-09-07 11 1 2 2 0NaNNaN
641107 MITx/8.02x/2013_Spring MHxPC130347356 1 1 0 0 India Secondary 1994 m NaN 2013-09-07 2013-09-07 153 1 31 2 0NaNNaN
641108 MITx/6.002x/2013_Spring MHxPC130140735 1 1 0 0 United States Bachelor's 1991 m NaN 2013-09-07 2013-09-07 59 1 5 3 0NaNNaN
641109 MITx/6.00x/2013_Spring MHxPC130493130 1 0 0 0 United Kingdom Master's 1977 m NaN 2013-09-07 NaN NaNNaNNaN 2 0NaN 1
641110 MITx/6.00x/2013_Spring MHxPC130400592 1 1 0 0 Other Europe Secondary 1992 m NaN 2013-09-07 2013-09-07 395 1 51 4 0NaNNaN
641111 MITx/6.00x/2013_Spring MHxPC130109892 1 1 0 0 India Secondary 1995 m NaN 2013-09-07 2013-09-07 49 1 14 2 0NaNNaN
641113 MITx/8.MReV/2013_Summer MHxPC130261281 1 1 0 0 India Secondary 1994 m 0 2013-09-07 2013-09-07 8 1NaN 1 0NaNNaN
641114 MITx/6.00x/2013_Spring MHxPC130481990 1 1 0 0 India Bachelor's 1989 m NaN 2013-09-07 2013-09-07 22 1 5 1 0NaNNaN
641115 MITx/6.00x/2013_Spring MHxPC130528581 1 0 0 0 United States Bachelor's 1990 f NaN 2013-09-07 2013-09-07 2 1NaN 3 0NaNNaN
641117 MITx/6.002x/2013_Spring MHxPC130408810 1 0 0 0 India Secondary 1993 m NaN 2013-09-07 2013-09-07 2 1NaN 3 0NaNNaN
641119 MITx/6.002x/2013_Spring MHxPC130566049 1 0 0 0 Other Europe Master's 1982 m NaN 2013-09-07 2013-09-07 2 1NaN 2 0NaNNaN
641120 MITx/8.MReV/2013_Summer MHxPC130374105 1 1 0 0 India Bachelor's 1992 m 0 2013-09-07 2013-09-07 49 1NaN 1 0NaNNaN
641121 MITx/6.00x/2013_Spring MHxPC130282999 1 0 0 0 Other Europe Master's 1979 m NaN 2013-09-07 NaN NaNNaNNaN 7 0NaN 1
641124 MITx/6.00x/2013_Spring MHxPC130505931 1 1 0 0 India Secondary 1995 m NaN 2013-09-07 2013-09-07 59 1NaN 2 0NaNNaN
641126 MITx/6.00x/2013_Spring MHxPC130137331 1 1 0 0 United States Secondary 1992 m NaN 2013-09-07 2013-09-07 251 1 77 4 0NaNNaN
641128 MITx/14.73x/2013_Spring MHxPC130256541 1 1 0 0 United States Master's 1982 m NaN 2013-09-07 2013-09-07 51 1 1 1 0NaNNaN
641131 MITx/8.02x/2013_Spring MHxPC130226305 1 0 0 0 Unknown/Other Bachelor's 1988 m NaN 2013-09-07 2013-09-07 11 1NaN 2 0NaNNaN
641132 MITx/6.002x/2013_Spring MHxPC130030805 1 1 0 0 Pakistan Master's 1989 m NaN 2013-09-07 2013-09-07 29 1NaN 1 0NaNNaN
641133 MITx/6.00x/2013_Spring MHxPC130184108 1 1 0 0 Canada Bachelor's 1991 m NaN 2013-09-07 2013-09-07 97 1 4 2 0NaNNaN
641136 MITx/6.00x/2013_Spring MHxPC130098513 1 1 0 0 United States Doctorate 1979 m NaN 2013-09-07 2013-09-07 74 1 14 1 0NaNNaN
\n", "

382385 rows \u00d7 20 columns

\n", "
" ], "metadata": {}, "output_type": "pyout", "prompt_number": 64, "text": [ " course_id userid_DI registered viewed \\\n", "1 HarvardX/CS50x/2012 MHxPC130442623 1 1 \n", "5 HarvardX/PH207x/2012_Fall MHxPC130275857 1 1 \n", "7 HarvardX/CB22x/2013_Spring MHxPC130539455 1 1 \n", "8 HarvardX/CB22x/2013_Spring MHxPC130088379 1 1 \n", "9 HarvardX/CS50x/2012 MHxPC130088379 1 1 \n", "10 HarvardX/ER22x/2013_Spring MHxPC130088379 1 1 \n", "11 HarvardX/ER22x/2013_Spring MHxPC130198098 1 1 \n", "12 HarvardX/CB22x/2013_Spring MHxPC130024894 1 1 \n", "13 HarvardX/CS50x/2012 MHxPC130024894 1 1 \n", "14 HarvardX/ER22x/2013_Spring MHxPC130024894 1 1 \n", "15 HarvardX/PH207x/2012_Fall MHxPC130024894 1 1 \n", "16 HarvardX/PH278x/2013_Spring MHxPC130024894 1 1 \n", "17 HarvardX/CS50x/2012 MHxPC130080986 1 1 \n", "18 HarvardX/PH207x/2012_Fall MHxPC130080986 1 1 \n", "19 HarvardX/CS50x/2012 MHxPC130063375 1 1 \n", "20 HarvardX/CS50x/2012 MHxPC130094371 1 1 \n", "21 HarvardX/CS50x/2012 MHxPC130229084 1 1 \n", "22 HarvardX/CS50x/2012 MHxPC130300925 1 1 \n", "23 HarvardX/ER22x/2013_Spring MHxPC130300925 1 1 \n", "24 HarvardX/CS50x/2012 MHxPC130417650 1 1 \n", "26 HarvardX/CS50x/2012 MHxPC130298257 1 0 \n", "27 HarvardX/CS50x/2012 MHxPC130500569 1 1 \n", "28 HarvardX/CS50x/2012 MHxPC130466479 1 1 \n", "29 HarvardX/CB22x/2013_Spring MHxPC130340959 1 1 \n", "33 HarvardX/CS50x/2012 MHxPC130356280 1 1 \n", "34 HarvardX/CS50x/2012 MHxPC130328890 1 1 \n", "36 HarvardX/CB22x/2013_Spring MHxPC130435030 1 1 \n", "37 HarvardX/CS50x/2012 MHxPC130435030 1 1 \n", "41 HarvardX/CB22x/2013_Spring MHxPC130542822 1 1 \n", "43 HarvardX/ER22x/2013_Spring MHxPC130069044 1 0 \n", "... ... ... ... ... \n", "641083 MITx/6.00x/2013_Spring MHxPC130238153 1 1 \n", "641084 MITx/6.002x/2013_Spring MHxPC130544641 1 1 \n", "641085 MITx/8.02x/2013_Spring MHxPC130117789 1 1 \n", "641086 MITx/14.73x/2013_Spring MHxPC130122763 1 1 \n", "641088 MITx/6.00x/2013_Spring MHxPC130214187 1 0 \n", "641089 MITx/6.002x/2013_Spring MHxPC130145710 1 1 \n", "641099 MITx/6.00x/2013_Spring MHxPC130455967 1 1 \n", "641100 MITx/6.002x/2013_Spring MHxPC130040345 1 1 \n", "641101 MITx/6.00x/2013_Spring MHxPC130298117 1 0 \n", "641102 MITx/6.00x/2013_Spring MHxPC130024301 1 1 \n", "641103 MITx/6.00x/2013_Spring MHxPC130097716 1 1 \n", "641107 MITx/8.02x/2013_Spring MHxPC130347356 1 1 \n", "641108 MITx/6.002x/2013_Spring MHxPC130140735 1 1 \n", "641109 MITx/6.00x/2013_Spring MHxPC130493130 1 0 \n", "641110 MITx/6.00x/2013_Spring MHxPC130400592 1 1 \n", "641111 MITx/6.00x/2013_Spring MHxPC130109892 1 1 \n", "641113 MITx/8.MReV/2013_Summer MHxPC130261281 1 1 \n", "641114 MITx/6.00x/2013_Spring MHxPC130481990 1 1 \n", "641115 MITx/6.00x/2013_Spring MHxPC130528581 1 0 \n", "641117 MITx/6.002x/2013_Spring MHxPC130408810 1 0 \n", "641119 MITx/6.002x/2013_Spring MHxPC130566049 1 0 \n", "641120 MITx/8.MReV/2013_Summer MHxPC130374105 1 1 \n", "641121 MITx/6.00x/2013_Spring MHxPC130282999 1 0 \n", "641124 MITx/6.00x/2013_Spring MHxPC130505931 1 1 \n", "641126 MITx/6.00x/2013_Spring MHxPC130137331 1 1 \n", "641128 MITx/14.73x/2013_Spring MHxPC130256541 1 1 \n", "641131 MITx/8.02x/2013_Spring MHxPC130226305 1 0 \n", "641132 MITx/6.002x/2013_Spring MHxPC130030805 1 1 \n", "641133 MITx/6.00x/2013_Spring MHxPC130184108 1 1 \n", "641136 MITx/6.00x/2013_Spring MHxPC130098513 1 1 \n", "\n", " explored certified final_cc_cname_DI LoE_DI YoB \\\n", "1 0 0 United States NaN NaN \n", "5 1 0 United States NaN NaN \n", "7 0 0 France NaN NaN \n", "8 0 0 United States NaN NaN \n", "9 0 0 United States NaN NaN \n", "10 0 0 United States NaN NaN \n", "11 0 0 United States NaN NaN \n", "12 0 0 United States NaN NaN \n", "13 0 0 United States NaN NaN \n", "14 0 0 United States NaN NaN \n", "15 0 0 United States NaN NaN \n", "16 0 0 United States NaN NaN \n", "17 0 0 United States NaN NaN \n", "18 0 0 United States NaN NaN \n", "19 0 0 Unknown/Other NaN NaN \n", "20 0 0 United States NaN NaN \n", "21 0 0 Mexico NaN NaN \n", "22 0 0 United States NaN NaN \n", "23 0 0 United States NaN NaN \n", "24 0 0 Australia NaN NaN \n", "26 0 0 United States NaN NaN \n", "27 0 0 United States NaN NaN \n", "28 0 0 Unknown/Other NaN NaN \n", "29 0 0 United States NaN NaN \n", "33 0 0 India NaN NaN \n", "34 0 0 Australia NaN NaN \n", "36 0 0 Canada NaN NaN \n", "37 0 0 Canada NaN NaN \n", "41 0 0 United States NaN NaN \n", "43 0 0 United States NaN NaN \n", "... ... ... ... ... ... \n", "641083 0 0 United States Secondary 1988 \n", "641084 0 0 India Bachelor's 1992 \n", "641085 0 0 India Less than Secondary 1996 \n", "641086 0 0 India Master's 1987 \n", "641088 0 0 India Bachelor's 1984 \n", "641089 0 0 India Bachelor's 1989 \n", "641099 0 0 United States Bachelor's 1988 \n", "641100 0 0 India Secondary 1993 \n", "641101 0 0 Russian Federation Less than Secondary 1997 \n", "641102 0 0 Morocco Secondary 1994 \n", "641103 0 0 India Bachelor's 1981 \n", "641107 0 0 India Secondary 1994 \n", "641108 0 0 United States Bachelor's 1991 \n", "641109 0 0 United Kingdom Master's 1977 \n", "641110 0 0 Other Europe Secondary 1992 \n", "641111 0 0 India Secondary 1995 \n", "641113 0 0 India Secondary 1994 \n", "641114 0 0 India Bachelor's 1989 \n", "641115 0 0 United States Bachelor's 1990 \n", "641117 0 0 India Secondary 1993 \n", "641119 0 0 Other Europe Master's 1982 \n", "641120 0 0 India Bachelor's 1992 \n", "641121 0 0 Other Europe Master's 1979 \n", "641124 0 0 India Secondary 1995 \n", "641126 0 0 United States Secondary 1992 \n", "641128 0 0 United States Master's 1982 \n", "641131 0 0 Unknown/Other Bachelor's 1988 \n", "641132 0 0 Pakistan Master's 1989 \n", "641133 0 0 Canada Bachelor's 1991 \n", "641136 0 0 United States Doctorate 1979 \n", "\n", " gender grade start_time_DI last_event_DI nevents ndays_act \\\n", "1 NaN 0 2012-10-15 NaN NaN 9 \n", "5 NaN 0 2012-09-17 2013-05-23 502 16 \n", "7 NaN 0 2013-01-01 2013-05-14 42 6 \n", "8 NaN 0 2013-02-18 2013-03-17 70 3 \n", "9 NaN 0 2012-10-20 NaN NaN 12 \n", "10 NaN 0 2013-02-23 2013-06-14 17 2 \n", "11 NaN 0 2013-06-17 2013-06-17 32 1 \n", "12 NaN 0.07 2013-01-24 2013-08-03 175 9 \n", "13 NaN 0 2013-06-27 NaN NaN 2 \n", "14 NaN 0 2012-12-19 2013-08-17 78 5 \n", "15 NaN 0 2012-07-26 2013-01-16 75 14 \n", "16 NaN 0 2013-07-30 2013-08-27 11 2 \n", "17 NaN 0 2012-10-15 NaN NaN 11 \n", "18 NaN 0 2012-10-25 2012-12-04 56 11 \n", "19 NaN 0 2012-10-19 NaN NaN NaN \n", "20 NaN 0 2013-03-03 2013-03-03 7 1 \n", "21 NaN 0 2012-10-15 NaN NaN NaN \n", "22 NaN 0 2012-10-24 NaN NaN 2 \n", "23 NaN 0 2012-12-20 2013-05-18 15 2 \n", "24 NaN 0 2012-10-29 2013-03-04 1 1 \n", "26 NaN 0 2012-09-05 NaN NaN NaN \n", "27 NaN 0 2012-10-22 2013-03-30 6 1 \n", "28 NaN 0 2013-01-07 NaN NaN NaN \n", "29 NaN 0.05 2013-02-11 2013-04-06 285 8 \n", "33 NaN 0 2012-09-27 2013-03-31 3 1 \n", "34 NaN 0 2012-12-10 2013-02-27 2 1 \n", "36 NaN 0 2013-02-20 2013-06-29 80 5 \n", "37 NaN 0 2012-10-13 NaN NaN 1 \n", "41 NaN NaN 2012-12-20 2013-03-14 21 3 \n", "43 NaN 0 2013-04-22 2013-04-23 1 1 \n", "... ... ... ... ... ... ... \n", "641083 m NaN 2013-09-07 2013-09-07 116 1 \n", "641084 m NaN 2013-09-07 2013-09-07 245 1 \n", "641085 m NaN 2013-09-07 2013-09-07 169 1 \n", "641086 m NaN 2013-09-07 2013-09-07 3 1 \n", "641088 m NaN 2013-09-07 2013-09-07 1 1 \n", "641089 m NaN 2013-09-07 2013-09-07 82 1 \n", "641099 m NaN 2013-09-07 2013-09-07 242 1 \n", "641100 f NaN 2013-09-07 2013-09-07 94 1 \n", "641101 m NaN 2013-09-07 NaN NaN NaN \n", "641102 m NaN 2013-09-07 2013-09-07 25 1 \n", "641103 m NaN 2013-09-07 2013-09-07 11 1 \n", "641107 m NaN 2013-09-07 2013-09-07 153 1 \n", "641108 m NaN 2013-09-07 2013-09-07 59 1 \n", "641109 m NaN 2013-09-07 NaN NaN NaN \n", "641110 m NaN 2013-09-07 2013-09-07 395 1 \n", "641111 m NaN 2013-09-07 2013-09-07 49 1 \n", "641113 m 0 2013-09-07 2013-09-07 8 1 \n", "641114 m NaN 2013-09-07 2013-09-07 22 1 \n", "641115 f NaN 2013-09-07 2013-09-07 2 1 \n", "641117 m NaN 2013-09-07 2013-09-07 2 1 \n", "641119 m NaN 2013-09-07 2013-09-07 2 1 \n", "641120 m 0 2013-09-07 2013-09-07 49 1 \n", "641121 m NaN 2013-09-07 NaN NaN NaN \n", "641124 m NaN 2013-09-07 2013-09-07 59 1 \n", "641126 m NaN 2013-09-07 2013-09-07 251 1 \n", "641128 m NaN 2013-09-07 2013-09-07 51 1 \n", "641131 m NaN 2013-09-07 2013-09-07 11 1 \n", "641132 m NaN 2013-09-07 2013-09-07 29 1 \n", "641133 m NaN 2013-09-07 2013-09-07 97 1 \n", "641136 m NaN 2013-09-07 2013-09-07 74 1 \n", "\n", " nplay_video nchapters nforum_posts roles incomplete_flag \n", "1 NaN 1 0 NaN 1 \n", "5 50 12 0 NaN NaN \n", "7 NaN 3 0 NaN NaN \n", "8 NaN 3 0 NaN NaN \n", "9 NaN 3 0 NaN 1 \n", "10 NaN 2 0 NaN NaN \n", "11 NaN 3 0 NaN NaN \n", "12 NaN 7 0 NaN NaN \n", "13 NaN 2 0 NaN 1 \n", "14 NaN 4 0 NaN NaN \n", "15 5 2 0 NaN NaN \n", "16 2 1 0 NaN NaN \n", "17 NaN 1 0 NaN 1 \n", "18 1 2 1 NaN NaN \n", "19 NaN 1 0 NaN 1 \n", "20 NaN 2 0 NaN NaN \n", "21 NaN 1 0 NaN 1 \n", "22 NaN 1 0 NaN 1 \n", "23 NaN 2 0 NaN NaN \n", "24 NaN 2 0 NaN NaN \n", "26 NaN 3 0 NaN 1 \n", "27 NaN 5 0 NaN NaN \n", "28 NaN 1 0 NaN 1 \n", "29 NaN 4 0 NaN NaN \n", "33 NaN 1 0 NaN NaN \n", "34 NaN 5 0 NaN NaN \n", "36 NaN 2 0 NaN NaN \n", "37 NaN 1 0 NaN 1 \n", "41 NaN 1 0 NaN NaN \n", "43 NaN 2 0 NaN NaN \n", "... ... ... ... ... ... \n", "641083 20 2 0 NaN NaN \n", "641084 56 1 0 NaN NaN \n", "641085 45 3 0 NaN NaN \n", "641086 NaN 1 0 NaN NaN \n", "641088 NaN 3 0 NaN NaN \n", "641089 16 5 0 NaN NaN \n", "641099 22 5 0 NaN NaN \n", "641100 7 2 0 NaN NaN \n", "641101 NaN 1 0 NaN 1 \n", "641102 NaN 2 0 NaN NaN \n", "641103 2 2 0 NaN NaN \n", "641107 31 2 0 NaN NaN \n", "641108 5 3 0 NaN NaN \n", "641109 NaN 2 0 NaN 1 \n", "641110 51 4 0 NaN NaN \n", "641111 14 2 0 NaN NaN \n", "641113 NaN 1 0 NaN NaN \n", "641114 5 1 0 NaN NaN \n", "641115 NaN 3 0 NaN NaN \n", "641117 NaN 3 0 NaN NaN \n", "641119 NaN 2 0 NaN NaN \n", "641120 NaN 1 0 NaN NaN \n", "641121 NaN 7 0 NaN 1 \n", "641124 NaN 2 0 NaN NaN \n", "641126 77 4 0 NaN NaN \n", "641128 1 1 0 NaN NaN \n", "641131 NaN 2 0 NaN NaN \n", "641132 NaN 1 0 NaN NaN \n", "641133 4 2 0 NaN NaN \n", "641136 14 1 0 NaN NaN \n", "\n", "[382385 rows x 20 columns]" ] } ], "prompt_number": 64 }, { "cell_type": "markdown", "metadata": {}, "source": [ "#Stages of boolean indexing\n", "- select column whose values you're interested in, e.g. df['nchapters']\n", "- evaluate the result according to some test, e.g. df['nchapters']>0\n", " -that produces a *boolean* series\n", "- use the boolean series to select the rows from the dataframe\n", " - df[df['nchapters]>0]\n", " results in a dataframe with only the rows that meet the test" ] }, { "cell_type": "code", "collapsed": false, "input": [ "country_not_france=(country_series!='France')" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 54 }, { "cell_type": "code", "collapsed": false, "input": [ "country_not_france" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 55, "text": [ "0 True\n", "1 True\n", "2 True\n", "3 True\n", "4 True\n", "5 True\n", "6 True\n", "7 False\n", "8 True\n", "9 True\n", "10 True\n", "11 True\n", "12 True\n", "13 True\n", "14 True\n", "...\n", "641123 True\n", "641124 True\n", "641125 True\n", "641126 True\n", "641127 True\n", "641128 True\n", "641129 True\n", "641130 True\n", "641131 True\n", "641132 True\n", "641133 True\n", "641134 True\n", "641135 True\n", "641136 True\n", "641137 True\n", "Name: final_cc_cname_DI, Length: 641138, dtype: bool" ] } ], "prompt_number": 55 }, { "cell_type": "code", "collapsed": false, "input": [], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "code", "collapsed": false, "input": [ "df[df['final_cc_cname_DI']=='France']" ], "language": "python", "metadata": {}, "outputs": [ { "html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
course_iduserid_DIregisteredviewedexploredcertifiedfinal_cc_cname_DILoE_DIYoBgendergradestart_time_DIlast_event_DIneventsndays_actnplay_videonchaptersnforum_postsrolesincomplete_flag
7 HarvardX/CB22x/2013_Spring MHxPC130539455 1 1 0 0 France NaN NaN NaN 0 2013-01-01 2013-05-14 42 6 NaN 3 0NaNNaN
256 HarvardX/CS50x/2012 MHxPC130595891 1 1 0 0 France NaN NaN NaN 0 2012-11-03 NaN NaNNaN NaN 2 0NaN 1
423 HarvardX/CS50x/2012 MHxPC130247412 1 0 0 0 France NaN NaN NaN 0 2012-08-03 NaN NaNNaN NaNNaN 0NaNNaN
449 HarvardX/CB22x/2013_Spring MHxPC130170185 1 1 0 0 France NaN NaN NaN 0.06 2013-01-23 2013-08-11 231 8 NaN 5 0NaNNaN
730 HarvardX/CS50x/2012 MHxPC130254688 1 1 0 0 France NaN NaN NaN 0 2012-08-11 NaN NaNNaN NaN 2 0NaN 1
807 HarvardX/ER22x/2013_Spring MHxPC130156847 1 1 0 0 France NaN NaN NaN 0 2013-01-14 2013-06-25 41 1 NaN 3 0NaNNaN
928 HarvardX/CS50x/2012 MHxPC130058577 1 1 0 0 France NaN NaN NaN 0 2013-01-07 NaN NaNNaN NaN 1 0NaN 1
1078 HarvardX/CS50x/2012 MHxPC130323627 1 0 0 0 France NaN NaN NaN 0 2012-08-23 NaN NaNNaN NaNNaN 0NaNNaN
1079 HarvardX/PH207x/2012_Fall MHxPC130323627 1 0 0 0 France NaN NaN NaN 0 2012-08-23 NaN NaNNaN NaNNaN 0NaNNaN
1171 HarvardX/CS50x/2012 MHxPC130270571 1 1 0 0 France NaN NaN NaN 0 2012-08-17 2013-06-07 10 2 NaN 4 0NaNNaN
1236 HarvardX/CB22x/2013_Spring MHxPC130078849 1 0 0 0 France NaN NaN NaN 0 2013-02-15 2013-02-15 1 1 NaNNaN 0NaNNaN
1237 HarvardX/CS50x/2012 MHxPC130078849 1 0 0 0 France NaN NaN NaN 0 2013-02-15 2013-02-15 1 1 NaNNaN 0NaNNaN
1238 HarvardX/ER22x/2013_Spring MHxPC130078849 1 0 0 0 France NaN NaN NaN 0 2013-02-15 2013-02-15 1 1 NaNNaN 0NaNNaN
1239 HarvardX/PH278x/2013_Spring MHxPC130078849 1 0 0 0 France NaN NaN NaN 0 2013-02-15 2013-02-15 1 1 NaNNaN 0NaNNaN
1394 HarvardX/CS50x/2012 MHxPC130217709 1 1 1 0 France NaN NaN NaN 0 2013-01-21 2013-05-27 455 48 NaN 12 0NaNNaN
1535 HarvardX/CS50x/2012 MHxPC130075520 1 1 0 0 France NaN NaN NaN 0 2012-09-12 NaN NaN 1 NaN 3 0NaN 1
1536 HarvardX/ER22x/2013_Spring MHxPC130075520 1 0 0 0 France NaN NaN NaN 0 2013-03-03 NaN NaN 1 NaNNaN 0NaN 1
1577 HarvardX/CS50x/2012 MHxPC130221204 1 0 0 0 France NaN NaN NaN 0 2012-08-23 NaN NaNNaN NaNNaN 0NaNNaN
1607 HarvardX/ER22x/2013_Spring MHxPC130191457 1 0 0 0 France NaN NaN NaN 0 2013-01-14 NaN NaN 2 NaNNaN 0NaN 1
1665 HarvardX/CS50x/2012 MHxPC130438857 1 1 0 0 France NaN NaN NaN 0 2012-10-08 NaN NaNNaN NaN 2 0NaN 1
1825 HarvardX/ER22x/2013_Spring MHxPC130020425 1 1 0 0 France NaN NaN NaN 0 2012-12-21 2013-03-13 17 1 NaN 1 0NaNNaN
1826 HarvardX/PH278x/2013_Spring MHxPC130020425 1 0 0 0 France NaN NaN NaN 0 2012-12-21 NaN NaN 1 NaNNaN 0NaN 1
1947 HarvardX/CB22x/2013_Spring MHxPC130365176 1 0 0 0 France NaN NaN NaN 0 2012-12-21 2013-11-17 NaN 1 NaNNaN 0NaN 1
1948 HarvardX/CS50x/2012 MHxPC130365176 1 1 0 0 France NaN NaN NaN 0 2012-12-21 2013-05-17 6 2 NaN 2 0NaNNaN
1949 HarvardX/ER22x/2013_Spring MHxPC130365176 1 0 0 0 France NaN NaN NaN 0 2012-12-21 NaN NaN 1 NaNNaN 0NaN 1
1950 HarvardX/PH278x/2013_Spring MHxPC130365176 1 0 0 0 France NaN NaN NaN 0 2012-12-21 2013-03-06 1 1 NaNNaN 0NaNNaN
2524 HarvardX/CS50x/2012 MHxPC130304462 1 1 0 0 France NaN NaN NaN 0 2012-11-10 NaN NaNNaN NaN 1 0NaN 1
2745 HarvardX/CS50x/2012 MHxPC130509069 1 1 1 0 France NaN NaN NaN 0 2012-08-19 2013-03-24 32 2 NaN 12 0NaNNaN
2810 HarvardX/CS50x/2012 MHxPC130475365 1 0 0 0 France NaN NaN NaN 0.0 2012-09-05 NaN NaNNaN NaNNaN 0NaNNaN
2926 HarvardX/PH207x/2012_Fall MHxPC130597633 1 1 0 0 France NaN NaN NaN 0.11 2012-10-17 2012-11-05 1465 7 202 4 0NaNNaN
...............................................................
637976 MITx/14.73x/2013_Spring MHxPC130061822 1 1 0 0 France Master's 1988 f NaN 2013-08-25 2013-08-25 43 1 6 2 0NaNNaN
638023 MITx/14.73x/2013_Spring MHxPC130125559 1 0 0 0 France Master's 1990 f NaN 2013-08-25 NaN NaNNaN NaNNaN 0NaNNaN
638069 MITx/8.02x/2013_Spring MHxPC130285866 1 0 0 0 France NaN NaN m NaN 2013-08-25 2013-08-25 1 1 NaNNaN 0NaNNaN
638158 MITx/14.73x/2013_Spring MHxPC130260318 1 0 0 0 France Master's 1981 f NaN 2013-08-26 NaN NaNNaN NaNNaN 0NaNNaN
638426 MITx/6.00x/2013_Spring MHxPC130491596 1 1 1 0 France Master's 1987 m NaN 2013-08-27 2013-09-07 2670 11 264 12 0NaNNaN
638469 MITx/6.00x/2013_Spring MHxPC130564866 1 1 0 0 France Bachelor's 1984 m NaN 2013-08-27 2013-08-28 9 2 1 1 0NaNNaN
638570 MITx/6.00x/2013_Spring MHxPC130169377 1 1 0 0 France NaN NaN NaN NaN 2013-08-28 2013-08-30 443 3 58 3 0NaNNaN
638668 MITx/14.73x/2013_Spring MHxPC130027500 1 1 0 0 France Master's 1975 f NaN 2013-08-28 2013-09-04 641 4 61 3 0NaNNaN
638681 MITx/14.73x/2013_Spring MHxPC130529177 1 0 0 0 France Master's 1988 m NaN 2013-08-28 NaN NaNNaN NaN 3 0NaN 1
638713 MITx/6.002x/2013_Spring MHxPC130484595 1 1 0 0 France NaN NaN NaN NaN 2013-08-28 2013-08-28 15 1 7 2 0NaNNaN
638814 MITx/6.00x/2013_Spring MHxPC130144367 1 0 0 0 France Master's 1990 m NaN 2013-08-28 NaN NaNNaN NaNNaN 0NaNNaN
638825 MITx/14.73x/2013_Spring MHxPC130430070 1 0 0 0 France NaN NaN NaN NaN 2013-08-28 2013-08-28 1 1 NaNNaN 0NaNNaN
638835 MITx/6.00x/2013_Spring MHxPC130138357 1 1 0 0 France Master's 1987 m NaN 2013-09-01 2013-09-01 681 1 261 5 0NaNNaN
638959 MITx/14.73x/2013_Spring MHxPC130128755 1 0 0 0 France Master's 1988 f NaN 2013-08-29 2013-08-29 3 1 NaNNaN 0NaNNaN
639270 MITx/6.00x/2013_Spring MHxPC130520698 1 1 0 0 France Master's 1991 m NaN 2013-09-03 2013-09-06 26 4 5 1 0NaNNaN
639317 MITx/6.00x/2013_Spring MHxPC130301343 1 1 0 0 France Master's 1984 f NaN 2013-08-30 2013-08-30 58 1 9 5 0NaNNaN
639722 MITx/6.002x/2013_Spring MHxPC130413420 1 1 0 0 France Bachelor's 1990 m NaN 2013-09-01 2013-09-02 25 2 2 2 0NaNNaN
639723 MITx/6.00x/2013_Spring MHxPC130413420 1 1 0 0 France Bachelor's 1990 m NaN 2013-09-01 2013-09-01 23 1 2 2 0NaNNaN
639807 MITx/6.00x/2013_Spring MHxPC130045331 1 1 0 0 France Bachelor's 1990 m NaN 2013-09-01 2013-09-01 40 1 13 2 0NaNNaN
640128 MITx/8.MReV/2013_Summer MHxPC130373510 1 1 0 0 France NaN NaN NaN 0 2013-09-03 2013-09-03 4 1 NaN 1 0NaNNaN
640208 MITx/6.00x/2013_Spring MHxPC130000556 1 1 0 0 France Master's 1989 m NaN 2013-09-03 2013-09-03 19 1 NaN 3 0NaNNaN
640249 MITx/6.00x/2013_Spring MHxPC130323078 1 0 0 0 France Bachelor's 1989 m NaN 2013-09-03 NaN NaNNaN NaN 3 0NaN 1
640463 MITx/14.73x/2013_Spring MHxPC130393176 1 1 0 0 France Master's 1983 m NaN 2013-09-04 2013-09-04 7 1 1 1 0NaNNaN
640487 MITx/14.73x/2013_Spring MHxPC130280987 1 0 0 0 France Master's 1986 f NaN 2013-09-04 2013-09-04 1 1 NaNNaN 0NaNNaN
640506 MITx/14.73x/2013_Spring MHxPC130447919 1 0 0 0 France Secondary 1990 m NaN 2013-09-04 2013-09-04 1 1 NaNNaN 0NaNNaN
640579 MITx/6.00x/2013_Spring MHxPC130195185 1 1 0 0 France Master's 1972 m NaN 2013-09-04 2013-09-05 1120 2 111 3 0NaNNaN
640646 MITx/6.00x/2013_Spring MHxPC130546344 1 1 1 0 France Master's 1980 m NaN 2013-09-05 2013-09-07 930 3 57 13 0NaNNaN
640655 MITx/6.00x/2013_Spring MHxPC130068634 1 0 0 0 France Master's 1990 m NaN 2013-09-05 2013-09-05 1 1 NaNNaN 0NaNNaN
640898 MITx/14.73x/2013_Spring MHxPC130556151 1 1 0 0 France Bachelor's 1990 f NaN 2013-09-07 2013-09-07 40 1 5 1 0NaNNaN
640935 MITx/6.00x/2013_Spring MHxPC130405848 1 1 0 0 France Bachelor's 1988 m NaN 2013-09-06 2013-09-06 69 1 7 4 0NaNNaN
\n", "

4700 rows \u00d7 20 columns

\n", "
" ], "metadata": {}, "output_type": "pyout", "prompt_number": 45, "text": [ " course_id userid_DI registered viewed \\\n", "7 HarvardX/CB22x/2013_Spring MHxPC130539455 1 1 \n", "256 HarvardX/CS50x/2012 MHxPC130595891 1 1 \n", "423 HarvardX/CS50x/2012 MHxPC130247412 1 0 \n", "449 HarvardX/CB22x/2013_Spring MHxPC130170185 1 1 \n", "730 HarvardX/CS50x/2012 MHxPC130254688 1 1 \n", "807 HarvardX/ER22x/2013_Spring MHxPC130156847 1 1 \n", "928 HarvardX/CS50x/2012 MHxPC130058577 1 1 \n", "1078 HarvardX/CS50x/2012 MHxPC130323627 1 0 \n", "1079 HarvardX/PH207x/2012_Fall MHxPC130323627 1 0 \n", "1171 HarvardX/CS50x/2012 MHxPC130270571 1 1 \n", "1236 HarvardX/CB22x/2013_Spring MHxPC130078849 1 0 \n", "1237 HarvardX/CS50x/2012 MHxPC130078849 1 0 \n", "1238 HarvardX/ER22x/2013_Spring MHxPC130078849 1 0 \n", "1239 HarvardX/PH278x/2013_Spring MHxPC130078849 1 0 \n", "1394 HarvardX/CS50x/2012 MHxPC130217709 1 1 \n", "1535 HarvardX/CS50x/2012 MHxPC130075520 1 1 \n", "1536 HarvardX/ER22x/2013_Spring MHxPC130075520 1 0 \n", "1577 HarvardX/CS50x/2012 MHxPC130221204 1 0 \n", "1607 HarvardX/ER22x/2013_Spring MHxPC130191457 1 0 \n", "1665 HarvardX/CS50x/2012 MHxPC130438857 1 1 \n", "1825 HarvardX/ER22x/2013_Spring MHxPC130020425 1 1 \n", "1826 HarvardX/PH278x/2013_Spring MHxPC130020425 1 0 \n", "1947 HarvardX/CB22x/2013_Spring MHxPC130365176 1 0 \n", "1948 HarvardX/CS50x/2012 MHxPC130365176 1 1 \n", "1949 HarvardX/ER22x/2013_Spring MHxPC130365176 1 0 \n", "1950 HarvardX/PH278x/2013_Spring MHxPC130365176 1 0 \n", "2524 HarvardX/CS50x/2012 MHxPC130304462 1 1 \n", "2745 HarvardX/CS50x/2012 MHxPC130509069 1 1 \n", "2810 HarvardX/CS50x/2012 MHxPC130475365 1 0 \n", "2926 HarvardX/PH207x/2012_Fall MHxPC130597633 1 1 \n", "... ... ... ... ... \n", "637976 MITx/14.73x/2013_Spring MHxPC130061822 1 1 \n", "638023 MITx/14.73x/2013_Spring MHxPC130125559 1 0 \n", "638069 MITx/8.02x/2013_Spring MHxPC130285866 1 0 \n", "638158 MITx/14.73x/2013_Spring MHxPC130260318 1 0 \n", "638426 MITx/6.00x/2013_Spring MHxPC130491596 1 1 \n", "638469 MITx/6.00x/2013_Spring MHxPC130564866 1 1 \n", "638570 MITx/6.00x/2013_Spring MHxPC130169377 1 1 \n", "638668 MITx/14.73x/2013_Spring MHxPC130027500 1 1 \n", "638681 MITx/14.73x/2013_Spring MHxPC130529177 1 0 \n", "638713 MITx/6.002x/2013_Spring MHxPC130484595 1 1 \n", "638814 MITx/6.00x/2013_Spring MHxPC130144367 1 0 \n", "638825 MITx/14.73x/2013_Spring MHxPC130430070 1 0 \n", "638835 MITx/6.00x/2013_Spring MHxPC130138357 1 1 \n", "638959 MITx/14.73x/2013_Spring MHxPC130128755 1 0 \n", "639270 MITx/6.00x/2013_Spring MHxPC130520698 1 1 \n", "639317 MITx/6.00x/2013_Spring MHxPC130301343 1 1 \n", "639722 MITx/6.002x/2013_Spring MHxPC130413420 1 1 \n", "639723 MITx/6.00x/2013_Spring MHxPC130413420 1 1 \n", "639807 MITx/6.00x/2013_Spring MHxPC130045331 1 1 \n", "640128 MITx/8.MReV/2013_Summer MHxPC130373510 1 1 \n", "640208 MITx/6.00x/2013_Spring MHxPC130000556 1 1 \n", "640249 MITx/6.00x/2013_Spring MHxPC130323078 1 0 \n", "640463 MITx/14.73x/2013_Spring MHxPC130393176 1 1 \n", "640487 MITx/14.73x/2013_Spring MHxPC130280987 1 0 \n", "640506 MITx/14.73x/2013_Spring MHxPC130447919 1 0 \n", "640579 MITx/6.00x/2013_Spring MHxPC130195185 1 1 \n", "640646 MITx/6.00x/2013_Spring MHxPC130546344 1 1 \n", "640655 MITx/6.00x/2013_Spring MHxPC130068634 1 0 \n", "640898 MITx/14.73x/2013_Spring MHxPC130556151 1 1 \n", "640935 MITx/6.00x/2013_Spring MHxPC130405848 1 1 \n", "\n", " explored certified final_cc_cname_DI LoE_DI YoB gender grade \\\n", "7 0 0 France NaN NaN NaN 0 \n", "256 0 0 France NaN NaN NaN 0 \n", "423 0 0 France NaN NaN NaN 0 \n", "449 0 0 France NaN NaN NaN 0.06 \n", "730 0 0 France NaN NaN NaN 0 \n", "807 0 0 France NaN NaN NaN 0 \n", "928 0 0 France NaN NaN NaN 0 \n", "1078 0 0 France NaN NaN NaN 0 \n", "1079 0 0 France NaN NaN NaN 0 \n", "1171 0 0 France NaN NaN NaN 0 \n", "1236 0 0 France NaN NaN NaN 0 \n", "1237 0 0 France NaN NaN NaN 0 \n", "1238 0 0 France NaN NaN NaN 0 \n", "1239 0 0 France NaN NaN NaN 0 \n", "1394 1 0 France NaN NaN NaN 0 \n", "1535 0 0 France NaN NaN NaN 0 \n", "1536 0 0 France NaN NaN NaN 0 \n", "1577 0 0 France NaN NaN NaN 0 \n", "1607 0 0 France NaN NaN NaN 0 \n", "1665 0 0 France NaN NaN NaN 0 \n", "1825 0 0 France NaN NaN NaN 0 \n", "1826 0 0 France NaN NaN NaN 0 \n", "1947 0 0 France NaN NaN NaN 0 \n", "1948 0 0 France NaN NaN NaN 0 \n", "1949 0 0 France NaN NaN NaN 0 \n", "1950 0 0 France NaN NaN NaN 0 \n", "2524 0 0 France NaN NaN NaN 0 \n", "2745 1 0 France NaN NaN NaN 0 \n", "2810 0 0 France NaN NaN NaN 0.0 \n", "2926 0 0 France NaN NaN NaN 0.11 \n", "... ... ... ... ... ... ... ... \n", "637976 0 0 France Master's 1988 f NaN \n", "638023 0 0 France Master's 1990 f NaN \n", "638069 0 0 France NaN NaN m NaN \n", "638158 0 0 France Master's 1981 f NaN \n", "638426 1 0 France Master's 1987 m NaN \n", "638469 0 0 France Bachelor's 1984 m NaN \n", "638570 0 0 France NaN NaN NaN NaN \n", "638668 0 0 France Master's 1975 f NaN \n", "638681 0 0 France Master's 1988 m NaN \n", "638713 0 0 France NaN NaN NaN NaN \n", "638814 0 0 France Master's 1990 m NaN \n", "638825 0 0 France NaN NaN NaN NaN \n", "638835 0 0 France Master's 1987 m NaN \n", "638959 0 0 France Master's 1988 f NaN \n", "639270 0 0 France Master's 1991 m NaN \n", "639317 0 0 France Master's 1984 f NaN \n", "639722 0 0 France Bachelor's 1990 m NaN \n", "639723 0 0 France Bachelor's 1990 m NaN \n", "639807 0 0 France Bachelor's 1990 m NaN \n", "640128 0 0 France NaN NaN NaN 0 \n", "640208 0 0 France Master's 1989 m NaN \n", "640249 0 0 France Bachelor's 1989 m NaN \n", "640463 0 0 France Master's 1983 m NaN \n", "640487 0 0 France Master's 1986 f NaN \n", "640506 0 0 France Secondary 1990 m NaN \n", "640579 0 0 France Master's 1972 m NaN \n", "640646 1 0 France Master's 1980 m NaN \n", "640655 0 0 France Master's 1990 m NaN \n", "640898 0 0 France Bachelor's 1990 f NaN \n", "640935 0 0 France Bachelor's 1988 m NaN \n", "\n", " start_time_DI last_event_DI nevents ndays_act nplay_video \\\n", "7 2013-01-01 2013-05-14 42 6 NaN \n", "256 2012-11-03 NaN NaN NaN NaN \n", "423 2012-08-03 NaN NaN NaN NaN \n", "449 2013-01-23 2013-08-11 231 8 NaN \n", "730 2012-08-11 NaN NaN NaN NaN \n", "807 2013-01-14 2013-06-25 41 1 NaN \n", "928 2013-01-07 NaN NaN NaN NaN \n", "1078 2012-08-23 NaN NaN NaN NaN \n", "1079 2012-08-23 NaN NaN NaN NaN \n", "1171 2012-08-17 2013-06-07 10 2 NaN \n", "1236 2013-02-15 2013-02-15 1 1 NaN \n", "1237 2013-02-15 2013-02-15 1 1 NaN \n", "1238 2013-02-15 2013-02-15 1 1 NaN \n", "1239 2013-02-15 2013-02-15 1 1 NaN \n", "1394 2013-01-21 2013-05-27 455 48 NaN \n", "1535 2012-09-12 NaN NaN 1 NaN \n", "1536 2013-03-03 NaN NaN 1 NaN \n", "1577 2012-08-23 NaN NaN NaN NaN \n", "1607 2013-01-14 NaN NaN 2 NaN \n", "1665 2012-10-08 NaN NaN NaN NaN \n", "1825 2012-12-21 2013-03-13 17 1 NaN \n", "1826 2012-12-21 NaN NaN 1 NaN \n", "1947 2012-12-21 2013-11-17 NaN 1 NaN \n", "1948 2012-12-21 2013-05-17 6 2 NaN \n", "1949 2012-12-21 NaN NaN 1 NaN \n", "1950 2012-12-21 2013-03-06 1 1 NaN \n", "2524 2012-11-10 NaN NaN NaN NaN \n", "2745 2012-08-19 2013-03-24 32 2 NaN \n", "2810 2012-09-05 NaN NaN NaN NaN \n", "2926 2012-10-17 2012-11-05 1465 7 202 \n", "... ... ... ... ... ... \n", "637976 2013-08-25 2013-08-25 43 1 6 \n", "638023 2013-08-25 NaN NaN NaN NaN \n", "638069 2013-08-25 2013-08-25 1 1 NaN \n", "638158 2013-08-26 NaN NaN NaN NaN \n", "638426 2013-08-27 2013-09-07 2670 11 264 \n", "638469 2013-08-27 2013-08-28 9 2 1 \n", "638570 2013-08-28 2013-08-30 443 3 58 \n", "638668 2013-08-28 2013-09-04 641 4 61 \n", "638681 2013-08-28 NaN NaN NaN NaN \n", "638713 2013-08-28 2013-08-28 15 1 7 \n", "638814 2013-08-28 NaN NaN NaN NaN \n", "638825 2013-08-28 2013-08-28 1 1 NaN \n", "638835 2013-09-01 2013-09-01 681 1 261 \n", "638959 2013-08-29 2013-08-29 3 1 NaN \n", "639270 2013-09-03 2013-09-06 26 4 5 \n", "639317 2013-08-30 2013-08-30 58 1 9 \n", "639722 2013-09-01 2013-09-02 25 2 2 \n", "639723 2013-09-01 2013-09-01 23 1 2 \n", "639807 2013-09-01 2013-09-01 40 1 13 \n", "640128 2013-09-03 2013-09-03 4 1 NaN \n", "640208 2013-09-03 2013-09-03 19 1 NaN \n", "640249 2013-09-03 NaN NaN NaN NaN \n", "640463 2013-09-04 2013-09-04 7 1 1 \n", "640487 2013-09-04 2013-09-04 1 1 NaN \n", "640506 2013-09-04 2013-09-04 1 1 NaN \n", "640579 2013-09-04 2013-09-05 1120 2 111 \n", "640646 2013-09-05 2013-09-07 930 3 57 \n", "640655 2013-09-05 2013-09-05 1 1 NaN \n", "640898 2013-09-07 2013-09-07 40 1 5 \n", "640935 2013-09-06 2013-09-06 69 1 7 \n", "\n", " nchapters nforum_posts roles incomplete_flag \n", "7 3 0 NaN NaN \n", "256 2 0 NaN 1 \n", "423 NaN 0 NaN NaN \n", "449 5 0 NaN NaN \n", "730 2 0 NaN 1 \n", "807 3 0 NaN NaN \n", "928 1 0 NaN 1 \n", "1078 NaN 0 NaN NaN \n", "1079 NaN 0 NaN NaN \n", "1171 4 0 NaN NaN \n", "1236 NaN 0 NaN NaN \n", "1237 NaN 0 NaN NaN \n", "1238 NaN 0 NaN NaN \n", "1239 NaN 0 NaN NaN \n", "1394 12 0 NaN NaN \n", "1535 3 0 NaN 1 \n", "1536 NaN 0 NaN 1 \n", "1577 NaN 0 NaN NaN \n", "1607 NaN 0 NaN 1 \n", "1665 2 0 NaN 1 \n", "1825 1 0 NaN NaN \n", "1826 NaN 0 NaN 1 \n", "1947 NaN 0 NaN 1 \n", "1948 2 0 NaN NaN \n", "1949 NaN 0 NaN 1 \n", "1950 NaN 0 NaN NaN \n", "2524 1 0 NaN 1 \n", "2745 12 0 NaN NaN \n", "2810 NaN 0 NaN NaN \n", "2926 4 0 NaN NaN \n", "... ... ... ... ... \n", "637976 2 0 NaN NaN \n", "638023 NaN 0 NaN NaN \n", "638069 NaN 0 NaN NaN \n", "638158 NaN 0 NaN NaN \n", "638426 12 0 NaN NaN \n", "638469 1 0 NaN NaN \n", "638570 3 0 NaN NaN \n", "638668 3 0 NaN NaN \n", "638681 3 0 NaN 1 \n", "638713 2 0 NaN NaN \n", "638814 NaN 0 NaN NaN \n", "638825 NaN 0 NaN NaN \n", "638835 5 0 NaN NaN \n", "638959 NaN 0 NaN NaN \n", "639270 1 0 NaN NaN \n", "639317 5 0 NaN NaN \n", "639722 2 0 NaN NaN \n", "639723 2 0 NaN NaN \n", "639807 2 0 NaN NaN \n", "640128 1 0 NaN NaN \n", "640208 3 0 NaN NaN \n", "640249 3 0 NaN 1 \n", "640463 1 0 NaN NaN \n", "640487 NaN 0 NaN NaN \n", "640506 NaN 0 NaN NaN \n", "640579 3 0 NaN NaN \n", "640646 13 0 NaN NaN \n", "640655 NaN 0 NaN NaN \n", "640898 1 0 NaN NaN \n", "640935 4 0 NaN NaN \n", "\n", "[4700 rows x 20 columns]" ] } ], "prompt_number": 45 }, { "cell_type": "code", "collapsed": false, "input": [], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "code", "collapsed": false, "input": [], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "code", "collapsed": false, "input": [], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#Part II: Movie ratings-recommender engines" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#Election Mining\n", "\n", "> Campaigns are moving away from the meaningless labels of pollsters and newsweeklies \u2014 \u201cNascar dads\u201d and \u201cwaitress moms\u201d \u2014 and moving toward treating each voter as a separate person. In 2012 you didn\u2019t just have to be an African-American from Akron or a suburban married female age 45 to 54. More and more, the information age allows people to be complicated, contradictory and unique. New technologies and an abundance of data may rattle the senses, but they are also bringing a fresh appreciation of the value of the individual to American politics.\n", " - Ethan Roeder, \u201cI Am Not Big Brother\u201d http://www.nytimes.com/2012/12/06/opinion/i-am-not-big-brother.html?_r=0.\n" ] }, { "cell_type": "code", "collapsed": false, "input": [], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "code", "collapsed": false, "input": [], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "code", "collapsed": false, "input": [ " films=pd.read_csv('./ml-100k/u.item', sep=\"|\", names=[\"movie id\", \"movie_title\", \"release_date\", \"video_release_date\", \"IMDb_URL\", \"unknown\", \"Action\",\"Adventure\", \"Animation\", \"Children's\", \"Comedy\", \"Crime\", \"Documentary\", \"Drama\", \"Fantasy\", \"Film-Noir\", \"Horror\", \"Musical\", \"Mystery\", \"Romance\", \"Sci-Fi\", \"Thriller\", \"War\", \"Western\"])" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "code", "collapsed": false, "input": [ "users=pd.read_csv('./ml-100k/u.user', sep=\"|\", names=[\"user_id\", \"age\", \"gender\",\"occupation\",\"zip_code\"], index_col=\"user_id\")" ], "language": "python", "metadata": {}, "outputs": [] }, { "cell_type": "code", "collapsed": false, "input": [], "language": "python", "metadata": {}, "outputs": [] } ], "metadata": {} } ] }