{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# We have opted for the Literate Programming approach to present our project this semester, which is based on Sentiment Analysis using the Python NLTK library" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### This jupyter notebook showcases the various Techniques and Libraries we have relied upon for the Project." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "##### The index of what we are to cover in this notebook are as follows\n", "\n", "0. [An Overview of the Project](#Overview)\n", " * The Timeline of Bans\n", " * Nature of Bans\n", " * India Selected\n", " * States Selected\n", "\n", "1. [Application of NLTK on Tweets](#NLTK and Twitter)\n", " * Fetching live Tweets\n", " * Application of NLTK\n", " \n", "2. [Using Pandas on various datasets for Statistical Operations](#Datasets and Pandas)\n", " * Senate Related Data\n", " * Census Data\n", " \n", "3. [Using various Python Visualization libraries to improve our understanding of the Data](#Various Visualization Techniques)\n", " * Bokeh\n", " * Matplotlib\n", " * Seaborn\n", " \n", "4. [Conclusions :- A Tale of Two Cities](#Reaction on bans in Delhi and Assam)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Overview " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### India \n", " " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![label](IndiaSelected.jpg)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## States\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![label](StatesSelected.jpg)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### The Timeline of Bans" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![label](BanTimeLine.jpg)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ " ###Nature of Bans\n", " " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![label](BanSectors.jpg)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# NLTK and Twitter " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### The Live Twitter Feed ( Modify This!)\n", "\n", "\n", "######NOTE Must hit the < Interrupt Kernel > button, for there intrinsic filter lacks a time boundation" ] }, { "cell_type": "code", "execution_count": 71, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "{\"created_at\":\"Mon Nov 30 11:08:38 +0000 2015\",\"id\":671284696702038018,\"id_str\":\"671284696702038018\",\"text\":\"kids in the car w their lollipop and pillow \\ud83d\\udcad \\ud83d\\ude97\",\"source\":\"\\u003ca href=\\\"http:\\/\\/twitter.com\\/download\\/iphone\\\" rel=\\\"nofollow\\\"\\u003eTwitter for iPhone\\u003c\\/a\\u003e\",\"truncated\":false,\"in_reply_to_status_id\":null,\"in_reply_to_status_id_str\":null,\"in_reply_to_user_id\":null,\"in_reply_to_user_id_str\":null,\"in_reply_to_screen_name\":null,\"user\":{\"id\":123140674,\"id_str\":\"123140674\",\"name\":\"panda mayan\",\"screen_name\":\"MarianMayan\",\"location\":\"cali \",\"url\":null,\"description\":\"a feeling where interlude between the lighting strike and a thunder \\u2022 \\u007bJ\\u007d\",\"protected\":false,\"verified\":false,\"followers_count\":4374,\"friends_count\":686,\"listed_count\":6,\"favourites_count\":97408,\"statuses_count\":116950,\"created_at\":\"Mon Mar 15 03:59:56 +0000 2010\",\"utc_offset\":-28800,\"time_zone\":\"Pacific Time (US & Canada)\",\"geo_enabled\":true,\"lang\":\"en\",\"contributors_enabled\":false,\"is_translator\":false,\"profile_background_color\":\"C0DEED\",\"profile_background_image_url\":\"http:\\/\\/pbs.twimg.com\\/profile_background_images\\/447991170384134144\\/c-f8Uvyc.jpeg\",\"profile_background_image_url_https\":\"https:\\/\\/pbs.twimg.com\\/profile_background_images\\/447991170384134144\\/c-f8Uvyc.jpeg\",\"profile_background_tile\":true,\"profile_link_color\":\"4FB5B0\",\"profile_sidebar_border_color\":\"FFFFFF\",\"profile_sidebar_fill_color\":\"B6B8B8\",\"profile_text_color\":\"1495D1\",\"profile_use_background_image\":true,\"profile_image_url\":\"http:\\/\\/pbs.twimg.com\\/profile_images\\/671063796824215553\\/zedBP5GS_normal.jpg\",\"profile_image_url_https\":\"https:\\/\\/pbs.twimg.com\\/profile_images\\/671063796824215553\\/zedBP5GS_normal.jpg\",\"profile_banner_url\":\"https:\\/\\/pbs.twimg.com\\/profile_banners\\/123140674\\/1445347969\",\"default_profile\":false,\"default_profile_image\":false,\"following\":null,\"follow_request_sent\":null,\"notifications\":null},\"geo\":null,\"coordinates\":null,\"place\":null,\"contributors\":null,\"is_quote_status\":false,\"retweet_count\":0,\"favorite_count\":0,\"entities\":{\"hashtags\":[],\"urls\":[],\"user_mentions\":[],\"symbols\":[]},\"favorited\":false,\"retweeted\":false,\"filter_level\":\"low\",\"lang\":\"en\",\"timestamp_ms\":\"1448881718217\"}\n", "\n", "{\"created_at\":\"Mon Nov 30 11:08:38 +0000 2015\",\"id\":671284696526012416,\"id_str\":\"671284696526012416\",\"text\":\"My car is annoying man\",\"source\":\"\\u003ca href=\\\"http:\\/\\/twitter.com\\/download\\/iphone\\\" rel=\\\"nofollow\\\"\\u003eTwitter for iPhone\\u003c\\/a\\u003e\",\"truncated\":false,\"in_reply_to_status_id\":null,\"in_reply_to_status_id_str\":null,\"in_reply_to_user_id\":null,\"in_reply_to_user_id_str\":null,\"in_reply_to_screen_name\":null,\"user\":{\"id\":349242935,\"id_str\":\"349242935\",\"name\":\". Vittorio\",\"screen_name\":\"VeeSammarco\",\"location\":null,\"url\":null,\"description\":\"\\u26bd\\ufe0f=\\u2764\\ufe0f IG: veesammarco Snapchat: veesammarco Fino alla fine. Kawasaki ninja\",\"protected\":false,\"verified\":false,\"followers_count\":587,\"friends_count\":818,\"listed_count\":4,\"favourites_count\":9773,\"statuses_count\":27399,\"created_at\":\"Fri Aug 05 19:59:47 +0000 2011\",\"utc_offset\":-18000,\"time_zone\":\"Quito\",\"geo_enabled\":true,\"lang\":\"en\",\"contributors_enabled\":false,\"is_translator\":false,\"profile_background_color\":\"C0DEED\",\"profile_background_image_url\":\"http:\\/\\/abs.twimg.com\\/images\\/themes\\/theme1\\/bg.png\",\"profile_background_image_url_https\":\"https:\\/\\/abs.twimg.com\\/images\\/themes\\/theme1\\/bg.png\",\"profile_background_tile\":false,\"profile_link_color\":\"0084B4\",\"profile_sidebar_border_color\":\"C0DEED\",\"profile_sidebar_fill_color\":\"DDEEF6\",\"profile_text_color\":\"333333\",\"profile_use_background_image\":true,\"profile_image_url\":\"http:\\/\\/pbs.twimg.com\\/profile_images\\/653993701014925312\\/hGr3u1Mc_normal.jpg\",\"profile_image_url_https\":\"https:\\/\\/pbs.twimg.com\\/profile_images\\/653993701014925312\\/hGr3u1Mc_normal.jpg\",\"profile_banner_url\":\"https:\\/\\/pbs.twimg.com\\/profile_banners\\/349242935\\/1412048309\",\"default_profile\":true,\"default_profile_image\":false,\"following\":null,\"follow_request_sent\":null,\"notifications\":null},\"geo\":null,\"coordinates\":null,\"place\":null,\"contributors\":null,\"is_quote_status\":false,\"retweet_count\":0,\"favorite_count\":0,\"entities\":{\"hashtags\":[],\"urls\":[],\"user_mentions\":[],\"symbols\":[]},\"favorited\":false,\"retweeted\":false,\"filter_level\":\"low\",\"lang\":\"en\",\"timestamp_ms\":\"1448881718175\"}\n", "\n", "{\"created_at\":\"Mon Nov 30 11:08:38 +0000 2015\",\"id\":671284699340210176,\"id_str\":\"671284699340210176\",\"text\":\"Kick Mat For Car Auto Back Seat Cover Kid Care Organizer Protector Cleaning 2pk https:\\/\\/t.co\\/Zsr18EwYrT https:\\/\\/t.co\\/U73Za3kXeI\",\"source\":\"\\u003ca href=\\\"http:\\/\\/www.facebook.com\\/twitter\\\" rel=\\\"nofollow\\\"\\u003eFacebook\\u003c\\/a\\u003e\",\"truncated\":false,\"in_reply_to_status_id\":null,\"in_reply_to_status_id_str\":null,\"in_reply_to_user_id\":null,\"in_reply_to_user_id_str\":null,\"in_reply_to_screen_name\":null,\"user\":{\"id\":2720678359,\"id_str\":\"2720678359\",\"name\":\"CARS\",\"screen_name\":\"cars740\",\"location\":\"USA\",\"url\":null,\"description\":null,\"protected\":false,\"verified\":false,\"followers_count\":3,\"friends_count\":1,\"listed_count\":0,\"favourites_count\":2,\"statuses_count\":140809,\"created_at\":\"Sun Aug 10 02:30:58 +0000 2014\",\"utc_offset\":null,\"time_zone\":null,\"geo_enabled\":false,\"lang\":\"en\",\"contributors_enabled\":false,\"is_translator\":false,\"profile_background_color\":\"C0DEED\",\"profile_background_image_url\":\"http:\\/\\/abs.twimg.com\\/images\\/themes\\/theme1\\/bg.png\",\"profile_background_image_url_https\":\"https:\\/\\/abs.twimg.com\\/images\\/themes\\/theme1\\/bg.png\",\"profile_background_tile\":false,\"profile_link_color\":\"0084B4\",\"profile_sidebar_border_color\":\"C0DEED\",\"profile_sidebar_fill_color\":\"DDEEF6\",\"profile_text_color\":\"333333\",\"profile_use_background_image\":true,\"profile_image_url\":\"http:\\/\\/pbs.twimg.com\\/profile_images\\/498296887892398080\\/6xnMuM39_normal.jpeg\",\"profile_image_url_https\":\"https:\\/\\/pbs.twimg.com\\/profile_images\\/498296887892398080\\/6xnMuM39_normal.jpeg\",\"default_profile\":true,\"default_profile_image\":false,\"following\":null,\"follow_request_sent\":null,\"notifications\":null},\"geo\":null,\"coordinates\":null,\"place\":null,\"contributors\":null,\"is_quote_status\":false,\"retweet_count\":0,\"favorite_count\":0,\"entities\":{\"hashtags\":[],\"urls\":[{\"url\":\"https:\\/\\/t.co\\/Zsr18EwYrT\",\"expanded_url\":\"http:\\/\\/ift.tt\\/1Slm6Xp\",\"display_url\":\"ift.tt\\/1Slm6Xp\",\"indices\":[80,103]},{\"url\":\"https:\\/\\/t.co\\/U73Za3kXeI\",\"expanded_url\":\"http:\\/\\/fb.me\\/4lOZdjHa2\",\"display_url\":\"fb.me\\/4lOZdjHa2\",\"indices\":[104,127]}],\"user_mentions\":[],\"symbols\":[]},\"favorited\":false,\"retweeted\":false,\"possibly_sensitive\":false,\"filter_level\":\"low\",\"lang\":\"en\",\"timestamp_ms\":\"1448881718846\"}\n", "\n" ] }, { "ename": "KeyboardInterrupt", "evalue": "", "output_type": "error", "traceback": [ "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[1;31mKeyboardInterrupt\u001b[0m Traceback (most recent call last)", "\u001b[1;32m\u001b[0m in \u001b[0;36m\u001b[1;34m()\u001b[0m\n\u001b[0;32m 32\u001b[0m \u001b[1;32mwhile\u001b[0m \u001b[1;32mTrue\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 33\u001b[0m \u001b[0mtwitterStream\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mStream\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mauth\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mlistener\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m---> 34\u001b[1;33m \u001b[0mls\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mappend\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mtwitterStream\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mfilter\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mtrack\u001b[0m \u001b[1;33m=\u001b[0m \u001b[1;33m[\u001b[0m\u001b[1;34m\"car\"\u001b[0m\u001b[1;33m]\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 35\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 36\u001b[0m \u001b[1;32mif\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m(\u001b[0m \u001b[0mtime\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mtime\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m \u001b[1;33m-\u001b[0m \u001b[0mstart_time\u001b[0m \u001b[1;33m)\u001b[0m \u001b[1;33m<\u001b[0m \u001b[1;36m0.009\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", "\u001b[1;32mC:\\Anaconda3\\lib\\site-packages\\tweepy-3.4.0-py3.4.egg\\tweepy\\streaming.py\u001b[0m in \u001b[0;36mfilter\u001b[1;34m(self, follow, track, async, locations, stall_warnings, languages, encoding, filter_level)\u001b[0m\n\u001b[0;32m 428\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0msession\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mparams\u001b[0m \u001b[1;33m=\u001b[0m \u001b[1;33m{\u001b[0m\u001b[1;34m'delimited'\u001b[0m\u001b[1;33m:\u001b[0m \u001b[1;34m'length'\u001b[0m\u001b[1;33m}\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 429\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mhost\u001b[0m \u001b[1;33m=\u001b[0m \u001b[1;34m'stream.twitter.com'\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 430\u001b[1;33m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_start\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0masync\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 431\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 432\u001b[0m def sitestream(self, follow, stall_warnings=False,\n", "\u001b[1;32mC:\\Anaconda3\\lib\\site-packages\\tweepy-3.4.0-py3.4.egg\\tweepy\\streaming.py\u001b[0m in \u001b[0;36m_start\u001b[1;34m(self, async)\u001b[0m\n\u001b[0;32m 344\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_thread\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mstart\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 345\u001b[0m \u001b[1;32melse\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 346\u001b[1;33m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_run\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 347\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 348\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mon_closed\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mresp\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", "\u001b[1;32mC:\\Anaconda3\\lib\\site-packages\\tweepy-3.4.0-py3.4.egg\\tweepy\\streaming.py\u001b[0m in \u001b[0;36m_run\u001b[1;34m(self)\u001b[0m\n\u001b[0;32m 253\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0msnooze_time\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0msnooze_time_step\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 254\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mlistener\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mon_connect\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 255\u001b[1;33m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_read_loop\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mresp\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 256\u001b[0m \u001b[1;32mexcept\u001b[0m \u001b[1;33m(\u001b[0m\u001b[0mTimeout\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mssl\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mSSLError\u001b[0m\u001b[1;33m)\u001b[0m \u001b[1;32mas\u001b[0m \u001b[0mexc\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 257\u001b[0m \u001b[1;31m# This is still necessary, as a SSLError can actually be\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", "\u001b[1;32mC:\\Anaconda3\\lib\\site-packages\\tweepy-3.4.0-py3.4.egg\\tweepy\\streaming.py\u001b[0m in \u001b[0;36m_read_loop\u001b[1;34m(self, resp)\u001b[0m\n\u001b[0;32m 305\u001b[0m \u001b[1;32mraise\u001b[0m \u001b[0mTweepError\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m'Expecting length, unexpected value found'\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 306\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 307\u001b[1;33m \u001b[0mnext_status_obj\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mbuf\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mread_len\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mlength\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 308\u001b[0m \u001b[1;32mif\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mrunning\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 309\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_data\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mnext_status_obj\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", "\u001b[1;32mC:\\Anaconda3\\lib\\site-packages\\tweepy-3.4.0-py3.4.egg\\tweepy\\streaming.py\u001b[0m in \u001b[0;36mread_len\u001b[1;34m(self, length)\u001b[0m\n\u001b[0;32m 159\u001b[0m \u001b[1;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_pop\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mlength\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 160\u001b[0m \u001b[0mread_len\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mmax\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_chunk_size\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mlength\u001b[0m \u001b[1;33m-\u001b[0m \u001b[0mlen\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_buffer\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 161\u001b[1;33m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_buffer\u001b[0m \u001b[1;33m+=\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_stream\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mread\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mread_len\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mdecode\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m'UTF-8'\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;34m'ignore'\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 162\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 163\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mread_line\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0msep\u001b[0m\u001b[1;33m=\u001b[0m\u001b[1;34m'\\n'\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", "\u001b[1;32mC:\\Anaconda3\\lib\\site-packages\\requests\\packages\\urllib3\\response.py\u001b[0m in \u001b[0;36mread\u001b[1;34m(self, amt, decode_content, cache_content)\u001b[0m\n\u001b[0;32m 280\u001b[0m \u001b[1;32melse\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 281\u001b[0m \u001b[0mcache_content\u001b[0m \u001b[1;33m=\u001b[0m \u001b[1;32mFalse\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 282\u001b[1;33m \u001b[0mdata\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_fp\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mread\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mamt\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 283\u001b[0m \u001b[1;32mif\u001b[0m \u001b[0mamt\u001b[0m \u001b[1;33m!=\u001b[0m \u001b[1;36m0\u001b[0m \u001b[1;32mand\u001b[0m \u001b[1;32mnot\u001b[0m \u001b[0mdata\u001b[0m\u001b[1;33m:\u001b[0m \u001b[1;31m# Platform-specific: Buggy versions of Python.\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 284\u001b[0m \u001b[1;31m# Close the connection when no data is returned\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", "\u001b[1;32mC:\\Anaconda3\\lib\\http\\client.py\u001b[0m in \u001b[0;36mread\u001b[1;34m(self, amt)\u001b[0m\n\u001b[0;32m 498\u001b[0m \u001b[1;31m# Amount is given, so call base class version\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 499\u001b[0m \u001b[1;31m# (which is implemented in terms of self.readinto)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 500\u001b[1;33m \u001b[1;32mreturn\u001b[0m \u001b[0msuper\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mHTTPResponse\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mread\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mamt\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 501\u001b[0m \u001b[1;32melse\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 502\u001b[0m \u001b[1;31m# Amount is not given (unbounded read) so we must check self.length\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", "\u001b[1;32mC:\\Anaconda3\\lib\\http\\client.py\u001b[0m in \u001b[0;36mreadinto\u001b[1;34m(self, b)\u001b[0m\n\u001b[0;32m 527\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 528\u001b[0m \u001b[1;32mif\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mchunked\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 529\u001b[1;33m \u001b[1;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_readinto_chunked\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mb\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 530\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 531\u001b[0m \u001b[1;32mif\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mlength\u001b[0m \u001b[1;32mis\u001b[0m \u001b[1;32mnot\u001b[0m \u001b[1;32mNone\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", "\u001b[1;32mC:\\Anaconda3\\lib\\http\\client.py\u001b[0m in \u001b[0;36m_readinto_chunked\u001b[1;34m(self, b)\u001b[0m\n\u001b[0;32m 624\u001b[0m \u001b[1;32melif\u001b[0m \u001b[0mlen\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mmvb\u001b[0m\u001b[1;33m)\u001b[0m \u001b[1;33m==\u001b[0m \u001b[0mchunk_left\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 625\u001b[0m \u001b[0mn\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_safe_readinto\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mmvb\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 626\u001b[1;33m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_safe_read\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;36m2\u001b[0m\u001b[1;33m)\u001b[0m \u001b[1;31m# toss the CRLF at the end of the chunk\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 627\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mchunk_left\u001b[0m \u001b[1;33m=\u001b[0m \u001b[1;32mNone\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 628\u001b[0m \u001b[1;32mreturn\u001b[0m \u001b[0mtotal_bytes\u001b[0m \u001b[1;33m+\u001b[0m \u001b[0mn\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", "\u001b[1;32mC:\\Anaconda3\\lib\\http\\client.py\u001b[0m in \u001b[0;36m_safe_read\u001b[1;34m(self, amt)\u001b[0m\n\u001b[0;32m 660\u001b[0m \u001b[0ms\u001b[0m \u001b[1;33m=\u001b[0m \u001b[1;33m[\u001b[0m\u001b[1;33m]\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 661\u001b[0m \u001b[1;32mwhile\u001b[0m \u001b[0mamt\u001b[0m \u001b[1;33m>\u001b[0m \u001b[1;36m0\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 662\u001b[1;33m \u001b[0mchunk\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mfp\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mread\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mmin\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mamt\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mMAXAMOUNT\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 663\u001b[0m \u001b[1;32mif\u001b[0m \u001b[1;32mnot\u001b[0m \u001b[0mchunk\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 664\u001b[0m \u001b[1;32mraise\u001b[0m \u001b[0mIncompleteRead\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34mb''\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mjoin\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0ms\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mamt\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", "\u001b[1;32mC:\\Anaconda3\\lib\\socket.py\u001b[0m in \u001b[0;36mreadinto\u001b[1;34m(self, b)\u001b[0m\n\u001b[0;32m 372\u001b[0m \u001b[1;32mwhile\u001b[0m \u001b[1;32mTrue\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 373\u001b[0m \u001b[1;32mtry\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 374\u001b[1;33m \u001b[1;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_sock\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mrecv_into\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mb\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 375\u001b[0m \u001b[1;32mexcept\u001b[0m \u001b[0mtimeout\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 376\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_timeout_occurred\u001b[0m \u001b[1;33m=\u001b[0m \u001b[1;32mTrue\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", "\u001b[1;32mC:\\Anaconda3\\lib\\ssl.py\u001b[0m in \u001b[0;36mrecv_into\u001b[1;34m(self, buffer, nbytes, flags)\u001b[0m\n\u001b[0;32m 749\u001b[0m \u001b[1;34m\"non-zero flags not allowed in calls to recv_into() on %s\"\u001b[0m \u001b[1;33m%\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 750\u001b[0m self.__class__)\n\u001b[1;32m--> 751\u001b[1;33m \u001b[1;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mread\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mnbytes\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mbuffer\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 752\u001b[0m \u001b[1;32melse\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 753\u001b[0m \u001b[1;32mreturn\u001b[0m \u001b[0msocket\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mrecv_into\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mbuffer\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mnbytes\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mflags\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", "\u001b[1;32mC:\\Anaconda3\\lib\\ssl.py\u001b[0m in \u001b[0;36mread\u001b[1;34m(self, len, buffer)\u001b[0m\n\u001b[0;32m 621\u001b[0m \u001b[1;32mtry\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 622\u001b[0m \u001b[1;32mif\u001b[0m \u001b[0mbuffer\u001b[0m \u001b[1;32mis\u001b[0m \u001b[1;32mnot\u001b[0m \u001b[1;32mNone\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 623\u001b[1;33m \u001b[0mv\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_sslobj\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mread\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mlen\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mbuffer\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 624\u001b[0m \u001b[1;32melse\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 625\u001b[0m \u001b[0mv\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_sslobj\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mread\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mlen\u001b[0m \u001b[1;32mor\u001b[0m \u001b[1;36m1024\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", "\u001b[1;31mKeyboardInterrupt\u001b[0m: " ] } ], "source": [ "from tweepy import Stream \n", "from tweepy import OAuthHandler\n", "from tweepy.streaming import StreamListener\n", "\n", "ckey='pD6v5kfp67FXY2NASfowDazRJ'\n", "csecret='7iZO2rFiMDUwOqOfQVJF4RfVxbQtoapQ1eTMUeFs1e8szTaDVy'\n", "\n", "# The access tokens can be found on your applications's Details\n", "# page located at https://dev.twitter.com/apps (located\n", "# under \"Your access token\")\n", "atoken='3414048620-HZauU3mJwiI7TBrUluFGCPKn4k4UdZviNty6KcD'\n", "asecret='OlZbg7WTAThOnnMHpWKfK82XOKbZ2Sx0Kh082r7uGb3PX'\n", "\n", "# Tweepy\n", "\n", "class listener(StreamListener):\n", " def on_data (self, data):\n", " print(data)\n", " return True\n", " \n", " def on_error(self, status):\n", " print(status)\n", " \n", "auth = OAuthHandler(ckey, csecret)\n", "auth.set_access_token(atoken, asecret)\n", "\n", "\n", "import time \n", "\n", "start_time = time.time()\n", "ls = []\n", "while True:\n", " twitterStream = Stream(auth, listener())\n", " ls.append(twitterStream.filter(track = [\"car\"]))\n", " \n", " if(( time.time() - start_time ) < 0.009):\n", " break" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Importing various modules from the NLTK platform\n", "\n", "### NLTK - Natural Language processing Tool Kit" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": true }, "outputs": [], "source": [ "import nltk\n", "from nltk.probability import ELEProbDist, FreqDist, DictionaryProbDist\n", "from nltk import NaiveBayesClassifier\n", "from nltk import FreqDist, ConditionalFreqDist\n", "from nltk import BigramAssocMeasures\n", "from collections import defaultdict" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Applying it to the tweets to understand the sentiment." ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "{'contains(to?)': False, 'contains(cruelty)': False, 'contains(try)': False, 'contains(and)': False, 'contains(ethical)': False, 'contains(frequently.)': False, 'contains(are)': False, 'contains(200+/kg)': False, 'contains(people)': False, 'contains(where)': False, 'contains(truly)': False, 'contains(before)': False, 'contains(secretly)': False, 'contains(enforced)': False, 'contains(cattle)': False, 'contains(days)': False, 'contains(perfect)': False, 'contains(now)': False, 'contains(show)': False, 'contains(occasionally.)': False, 'contains(pigs)': False, 'contains(plunderofindia)': False, 'contains(hope)': False, 'contains(will)': False, 'contains(religious)': False, 'contains(glass)': False, 'contains(causing)': False, 'contains(animals)': False, 'contains(let)': False, 'contains(for)': False, 'contains(all)': False, 'contains(meat?)': False, 'contains(loose)': False, 'contains(not)': False, 'contains(vegetarian)': False, 'contains(pulses)': False, 'contains(lovers)': False, 'contains(savegauvansh)': False, 'contains(would)': False, 'contains(there)': False, 'contains(ban)': False, 'contains(india)': False, 'contains(had)': False, 'contains(#meatban)': False, 'contains(heading)': False, 'contains(nature)': False, 'contains(price)': False, 'contains(country)': False, 'contains(walls)': False, 'contains(banbeef)': False, 'contains(reasons,)': False, 'contains(meatban)': False, 'contains(dinner)': False, 'contains(was)': False, 'contains(jama)': False, 'contains(like)': False, 'contains(debate)': False, 'contains(mouth)': False, 'contains(beef)': False, 'contains(saynotomeatexport)': False, 'contains(having)': False, 'contains(you)': False, 'contains(everyone)': False, 'contains(save)': False, 'contains(eat)': False, 'contains(approve)': False, 'contains(jagobharathjag)': False, 'contains(poojari)': False, 'contains(#vegetarian)': False, 'contains(cow)': False, 'contains(meat)': False, 'contains(slaughter?)': False, 'contains(indian)': False, 'contains(loving)': False, 'contains(about)': False, 'contains(masjid)': False, 'contains(mutton)': False, 'contains(100)': False, 'contains(attention)': False, 'contains(the)': False, 'contains(rescues)': False, 'contains(pork)': False, 'contains(something)': False, 'contains(hunger)': False, 'contains(lynching)': False, 'contains(politics)': False, 'contains(your)': False, 'contains(start)': False, 'contains(houses)': False, 'contains(with)': False, 'contains(blt)': False, 'contains(parliament)': False, 'contains(enjoy)': False, 'contains(chicken,)': False, 'contains(navratri)': False, 'contains(this)': False, 'contains(delicious)': False, 'contains(slaughter)': False}\n", "[({'contains(to?)': False, 'contains(cruelty)': True, 'contains(try)': False, 'contains(and)': False, 'contains(ethical)': False, 'contains(frequently.)': False, 'contains(are)': False, 'contains(200+/kg)': False, 'contains(people)': False, 'contains(where)': False, 'contains(truly)': False, 'contains(before)': False, 'contains(secretly)': False, 'contains(enforced)': False, 'contains(cattle)': True, 'contains(days)': False, 'contains(perfect)': False, 'contains(now)': False, 'contains(show)': False, 'contains(occasionally.)': False, 'contains(pigs)': False, 'contains(plunderofindia)': False, 'contains(hope)': False, 'contains(will)': False, 'contains(religious)': False, 'contains(glass)': False, 'contains(causing)': False, 'contains(animals)': False, 'contains(let)': False, 'contains(for)': False, 'contains(all)': True, 'contains(meat?)': False, 'contains(loose)': False, 'contains(not)': False, 'contains(vegetarian)': False, 'contains(pulses)': False, 'contains(lovers)': True, 'contains(savegauvansh)': False, 'contains(would)': False, 'contains(there)': False, 'contains(ban)': False, 'contains(india)': True, 'contains(had)': False, 'contains(#meatban)': False, 'contains(heading)': False, 'contains(nature)': True, 'contains(price)': False, 'contains(country)': False, 'contains(walls)': False, 'contains(banbeef)': False, 'contains(reasons,)': False, 'contains(meatban)': False, 'contains(dinner)': False, 'contains(was)': False, 'contains(jama)': False, 'contains(like)': False, 'contains(debate)': False, 'contains(mouth)': False, 'contains(beef)': False, 'contains(saynotomeatexport)': False, 'contains(having)': False, 'contains(you)': False, 'contains(everyone)': False, 'contains(save)': False, 'contains(eat)': False, 'contains(approve)': False, 'contains(jagobharathjag)': False, 'contains(poojari)': False, 'contains(#vegetarian)': False, 'contains(cow)': False, 'contains(meat)': False, 'contains(slaughter?)': False, 'contains(indian)': False, 'contains(loving)': False, 'contains(about)': False, 'contains(masjid)': False, 'contains(mutton)': False, 'contains(100)': False, 'contains(attention)': True, 'contains(the)': False, 'contains(rescues)': True, 'contains(pork)': False, 'contains(something)': False, 'contains(hunger)': False, 'contains(lynching)': False, 'contains(politics)': False, 'contains(your)': False, 'contains(start)': False, 'contains(houses)': False, 'contains(with)': False, 'contains(blt)': False, 'contains(parliament)': False, 'contains(enjoy)': False, 'contains(chicken,)': False, 'contains(navratri)': False, 'contains(this)': False, 'contains(delicious)': False, 'contains(slaughter)': False}, 'positive'), ({'contains(to?)': False, 'contains(cruelty)': False, 'contains(try)': True, 'contains(and)': False, 'contains(ethical)': False, 'contains(frequently.)': False, 'contains(are)': True, 'contains(200+/kg)': False, 'contains(people)': False, 'contains(where)': False, 'contains(truly)': False, 'contains(before)': False, 'contains(secretly)': False, 'contains(enforced)': False, 'contains(cattle)': False, 'contains(days)': False, 'contains(perfect)': False, 'contains(now)': False, 'contains(show)': False, 'contains(occasionally.)': False, 'contains(pigs)': False, 'contains(plunderofindia)': False, 'contains(hope)': False, 'contains(will)': False, 'contains(religious)': False, 'contains(glass)': False, 'contains(causing)': False, 'contains(animals)': False, 'contains(let)': False, 'contains(for)': True, 'contains(all)': False, 'contains(meat?)': False, 'contains(loose)': False, 'contains(not)': False, 'contains(vegetarian)': False, 'contains(pulses)': False, 'contains(lovers)': False, 'contains(savegauvansh)': False, 'contains(would)': False, 'contains(there)': False, 'contains(ban)': False, 'contains(india)': False, 'contains(had)': False, 'contains(#meatban)': False, 'contains(heading)': False, 'contains(nature)': False, 'contains(price)': False, 'contains(country)': False, 'contains(walls)': False, 'contains(banbeef)': False, 'contains(reasons,)': False, 'contains(meatban)': False, 'contains(dinner)': False, 'contains(was)': False, 'contains(jama)': False, 'contains(like)': False, 'contains(debate)': True, 'contains(mouth)': False, 'contains(beef)': False, 'contains(saynotomeatexport)': False, 'contains(having)': True, 'contains(you)': True, 'contains(everyone)': False, 'contains(save)': True, 'contains(eat)': False, 'contains(approve)': False, 'contains(jagobharathjag)': False, 'contains(poojari)': True, 'contains(#vegetarian)': False, 'contains(cow)': True, 'contains(meat)': False, 'contains(slaughter?)': True, 'contains(indian)': False, 'contains(loving)': False, 'contains(about)': False, 'contains(masjid)': False, 'contains(mutton)': False, 'contains(100)': False, 'contains(attention)': False, 'contains(the)': False, 'contains(rescues)': False, 'contains(pork)': False, 'contains(something)': False, 'contains(hunger)': False, 'contains(lynching)': True, 'contains(politics)': False, 'contains(your)': False, 'contains(start)': False, 'contains(houses)': False, 'contains(with)': False, 'contains(blt)': False, 'contains(parliament)': False, 'contains(enjoy)': False, 'contains(chicken,)': False, 'contains(navratri)': False, 'contains(this)': False, 'contains(delicious)': False, 'contains(slaughter)': False}, 'positive'), ...]\n", "Most Informative Features\n", " contains(will) = True negati : positi = 1.9 : 1.0\n", " contains(vegetarian) = False negati : positi = 1.8 : 1.0\n", " contains(meatban) = False positi : negati = 1.6 : 1.0\n", " contains(let) = False positi : negati = 1.6 : 1.0\n", " contains(the) = False positi : negati = 1.6 : 1.0\n", " contains(ban) = False positi : negati = 1.6 : 1.0\n", " contains(cow) = False negati : positi = 1.4 : 1.0\n", " contains(all) = False negati : positi = 1.4 : 1.0\n", " contains(for) = False negati : positi = 1.4 : 1.0\n", " contains(will) = False positi : negati = 1.3 : 1.0\n", " contains(before) = False positi : negati = 1.2 : 1.0\n", " contains(secretly) = False positi : negati = 1.2 : 1.0\n", " contains(was) = False positi : negati = 1.2 : 1.0\n", " contains(loose) = False positi : negati = 1.2 : 1.0\n", " contains(dinner) = False positi : negati = 1.2 : 1.0\n", " contains(enforced) = False positi : negati = 1.2 : 1.0\n", " contains(enjoy) = False positi : negati = 1.2 : 1.0\n", " contains(indian) = False positi : negati = 1.2 : 1.0\n", " contains(country) = False positi : negati = 1.2 : 1.0\n", " contains(mouth) = False positi : negati = 1.2 : 1.0\n", " contains(price) = False positi : negati = 1.2 : 1.0\n", " contains(navratri) = False positi : negati = 1.2 : 1.0\n", " contains(delicious) = False positi : negati = 1.2 : 1.0\n", " contains(days) = False positi : negati = 1.2 : 1.0\n", " contains(there) = False positi : negati = 1.2 : 1.0\n", " contains(where) = False positi : negati = 1.2 : 1.0\n", " contains(jama) = False positi : negati = 1.2 : 1.0\n", " contains(meat?) = False positi : negati = 1.2 : 1.0\n", " contains(parliament) = False positi : negati = 1.2 : 1.0\n", " contains(now) = False positi : negati = 1.2 : 1.0\n", " contains(something) = False positi : negati = 1.2 : 1.0\n", " contains(blt) = False positi : negati = 1.2 : 1.0\n", "None\n" ] } ], "source": [ "pos_tweets = [('Attention all Nature Lovers - Cattle Cruelty in India & Rescues', 'positive'),\n", " ('Are you having debate on Poojari Lynching for try to save cow slaughter?', 'positive'),\n", " ('Hope People start loving all animals like this & not show', 'positive'),\n", " ('if slaughter houses had glass walls everyone would be a vegetarian', 'positive'),\n", " ('BanBeef SayNOtoMEATexport PlunderOfIndia SaveGauVansh Cow Vegetarian JagoBharathJag', 'positive'),\n", " ('I will eat beef and pork for religious reasons, occasionally. I will be vegetarian for ethical reasons, frequently. #meatban #vegetarian','positive')\n", "]\n", " \n", "neg_tweets = [('Let try to ban hunger before we ban meat?', 'negative'),\n", " ('meatban causing price of pulses at 200+/kg', 'negative'),\n", " ('Where is Indian Politics heading to? Chicken, mutton or beef now parliament will approve the dinner', 'negative'),\n", " ('There is something truly secretly delicious about having your mouth enjoy a perfect BLT in a country with meat ban', 'negative'),\n", " ('We will let loose 100 pigs in Jama Masjid if the meatban was not enforced on 9 days of Navratri', 'negative')] \n", "\n", "\n", "test_tweet = [('A Question: Can someone please tell me how jhatka came into being in answer to halal in India? Please enlighten','negative')] \n", " \n", "tweets = []\n", "for (words, sentiment) in pos_tweets + neg_tweets:\n", " words_filtered = [e.lower() for e in words.split()\n", "if len(e) >= 3]\n", " tweets.append((words_filtered, sentiment)) \n", "#print(tweets)\n", "\n", "test_tweets = []\n", "for (words, sentiment) in test_tweet:\n", " words_filtered = [e.lower() for e in words.split()\n", "if len(e) >= 3]\n", " test_tweets.append((words_filtered, sentiment)) \n", "#print(test_tweets) \n", "\n", "def get_words_in_tweets(tweets):\n", " all_words = []\n", " for (words, sentiment) in tweets:\n", " all_words.extend(words)\n", " return all_words \n", "\n", "def get_word_features(wordlist):\n", " wordlist = nltk.FreqDist(wordlist)\n", " word_features = wordlist.keys()\n", " return word_features \n", " \n", "\n", "word_features = get_word_features(get_words_in_tweets(tweets)) \n", "#print(word_features) \n", "\n", "def extract_features(document):\n", " document_words = set(document)\n", " features = {}\n", " for word in word_features:\n", " features['contains(%s)' % word] = (word in document_words)\n", " return features\n", " \n", "a = extract_features(test_tweet) \n", "print(a) \n", " \n", "training_set = nltk.classify.apply_features(extract_features, tweets)\n", "print(training_set)\n", "classifier = nltk.NaiveBayesClassifier.train(training_set)\n", "\n", "def train(labeled_featuresets, estimator= ELEProbDist):\n", " ...\n", " # Create the P(label) distribution\n", " label_freqdist = ConditionalFreqDist()\n", " label_probdist = estimator(label_freqdist)\n", " ...\n", " # Create the P(fval|label, fname) distribution\n", " feature_probdist = {}\n", " ...\n", " return NaiveBayesClassifier(label_probdist, feature_probdist)\n", " #!print(label_probdist.prob('positive')) \n", " #!print(feature_probdist) \n", " \n", "print(classifier.show_most_informative_features(32)) \n", "\n", "#tweet = 'Meat Ban reminds me of TV Ban. If one of your siblings was taking the board exams, you cannot watch too'\n", " #'And I support Cow,Buffalo #meatban if #India returns to #Swadeshi #agriculture Invest in Agriculture to #SaveIndia'\n", "#print(classifier.classify(extract_features(tweet.split()))) \n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Datasets and Pandas " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Let us first consider the composition of this term's Government" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Move to the datasets directory" ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "'C:\\\\Users\\\\user\\\\Desktop\\\\7th Sem Project\\\\datasets\\\\the_senate_datasets'" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import os\n", "#os.chdir(\"/home/archimedeas/wrkspc/anaconda/the-visual-verdict/visualizations/1_the_senate/datasets\")\n", "os.getcwd()" ] }, { "cell_type": "code", "execution_count": 17, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "['Ban Spreadsheet.csv',\n", " 'originals',\n", " 'processed_census_datasets',\n", " 'the_senate_datasets',\n", " 'tweepy-master']" ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "os.listdir()" ] }, { "cell_type": "code", "execution_count": 15, "metadata": { "collapsed": false }, "outputs": [], "source": [ "os.chdir('..')" ] }, { "cell_type": "code", "execution_count": 19, "metadata": { "collapsed": false }, "outputs": [], "source": [ "os.getcwd()\n", "os.chdir('the_senate_datasets')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## List of DataSets" ] }, { "cell_type": "code", "execution_count": 20, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "['10_women_occupation.csv',\n", " '11_women_first_time.csv',\n", " '1_age_group_5yr_span.csv',\n", " '2_avg_age_lok_sabha_16_sessions.csv',\n", " '3_age_group_first_time_member.csv',\n", " '4_educational_background.csv',\n", " '5_occupational_background.csv',\n", " '6_first_time_elected.csv',\n", " '7_women_member_per_state.csv',\n", " '8_women_age_group.csv',\n", " '9_educational_qual_women.csv']" ] }, "execution_count": 20, "metadata": {}, "output_type": "execute_result" } ], "source": [ "os.listdir()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Now we read in the CSV files using the Pandas Dataset" ] }, { "cell_type": "code", "execution_count": 21, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/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", "
Table - 1 Distribution of Age Groups of members with 5 year spanUnnamed: 1
0Year-SpaceNo of Members
125-3012
231-3521
336-4036
441-4558
546-5070
651-5587
755-6092
861-6583
966-7043
1071-7528
1176-8011
1281-851
1386-901
\n", "
" ], "text/plain": [ " Table - 1 Distribution of Age Groups of members with 5 year span \\\n", "0 Year-Space \n", "1 25-30 \n", "2 31-35 \n", "3 36-40 \n", "4 41-45 \n", "5 46-50 \n", "6 51-55 \n", "7 55-60 \n", "8 61-65 \n", "9 66-70 \n", "10 71-75 \n", "11 76-80 \n", "12 81-85 \n", "13 86-90 \n", "\n", " Unnamed: 1 \n", "0 No of Members \n", "1 12 \n", "2 21 \n", "3 36 \n", "4 58 \n", "5 70 \n", "6 87 \n", "7 92 \n", "8 83 \n", "9 43 \n", "10 28 \n", "11 11 \n", "12 1 \n", "13 1 " ] }, "execution_count": 21, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import pandas as pd\n", "df_men = pd.read_csv(\"1_age_group_5yr_span.csv\")\n", "df_men" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Converting this dataset to a suitable format\n", "1. For the purpose of using various fields as labels in matplotlib\n", "2. We use numpy for the same" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Visual representation of the Information" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Changing the default style sheet for matplotlib" ] }, { "cell_type": "code", "execution_count": 28, "metadata": { "collapsed": true }, "outputs": [], "source": [ "%matplotlib inline\n", "import matplotlib.pyplot as plt\n", "plt.style.use('ggplot')\n", "plt.rcParams['figure.figsize'] = (10.0, 8.0)" ] }, { "cell_type": "code", "execution_count": 29, "metadata": { "collapsed": false }, "outputs": [], "source": [ "ls_labels_men = []\n", "ls_values_men = []\n", "\n", "for i in range(1,df_men.shape[0]):\n", " ls_labels_men.append(str(df_men.iat[i,0]))\n", " ls_values_men.append(float(df_men.iat[i,1]))" ] }, { "cell_type": "code", "execution_count": 30, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAmcAAAHuCAYAAADa5aucAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3Xl0lNXBx/HfTHaSSUISFpMIAYICYXmpBFmUrRzbqi10\nedMWUCSg1lhr6YIpSqUVtNhqpKBg64KtEYstpHXBatmMYGtYyhIiGrYKBCIQAipJSHLfP3gzZSAD\nM2SSuZDv5xzPyTzz3JnfXJ5Jfj7LjMMYYwQAAAArOIMdAAAAAP9FOQMAALAI5QwAAMAilDMAAACL\nUM4AAAAsQjkDAACwCOUMQLNatGiRwsLCgh2j1XA6nXrppZeCHcOrPXv2yOl0at26dcGOAliLcgZY\n5uTJk5oxY4auuuoqtWnTRomJiRo4cKDmzZsX7GgAgBYQGuwAADzdddddWr16tX7729+qX79+On78\nuDZu3KiPP/64WZ+3pqZG4eHhzfocNjh16hR78i5xxhjV1dUpNJQ/Ybg8secMsMxf//pXTZs2TV/7\n2tfUuXNn9enTRxMnTtQDDzzgsd6f/vQnXXPNNYqKilJSUpJuvPFGHTt2TNLpApKbm6vU1FRFREQo\nIyNDixcv9hjvdDo1b948jRs3TvHx8Zo4caIk6e2339bQoUPVpk0bpaamKjs7W0ePHnWPKy4u1pe+\n9CW1bdtWMTEx6tWrl1588cULvq4VK1YoIyNDUVFRGjRokDZv3ixJOnHihFwu1zn5Gg5/rV279ryP\n2adPH0VFRal///4qLCyU0+lUfn6+x2O89NJLuvHGGxUTE6Of//znkqTf/OY36tq1qyIiIpSenq65\nc+d6PHZaWppmz57tsWzKlCkaOXKk+/aIESM0efJk5ebmql27doqLi9Odd96p6urq887F/fffr169\neik6OlqdOnXSXXfdpePHj7vvbzgUvG7dOn3hC19QdHS0BgwYoPXr13s8zqpVq9S3b19FRUWpX79+\nWrVq1Xmft8ETTzyh1NRURUdH66abblJ+fr6cTqcOHDjgXmfDhg264YYb5HK51L59e33zm9/Uf/7z\nH/f9M2fOVPfu3fW3v/1NPXr0UExMjEaOHKnS0lKP51qyZInS09MVFRWloUOHasuWLefkKS0t1Te/\n+U21bdtWCQkJ+tKXvqRt27adMx+rV69W//79FRkZqRUrVvj0WoFLkgFglZ49e5qbb77ZHD161Os6\nzz33nAkLCzOzZs0yJSUlZtu2bWb+/Pnm8OHDxhhjfvKTn5jExETz5z//2Xz00Ufm4YcfNk6n06xY\nscL9GA6HwyQmJponn3zS7Nq1y5SWlpoVK1aYNm3amPnz55vS0lJTVFRkRo4caYYPH+4e16dPHzN+\n/HhTUlJidu/ebZYvX25ee+01r1mff/5543Q6zTXXXGPeeecds2XLFnPzzTeblJQUc/LkSWOMMXfe\neacZOXKkx7gHHnjAZGRkeH3cffv2maioKHP77bebkpISs2LFCvOFL3zBOBwOk5+fb4wxZvfu3cbh\ncJjU1FTz0ksvmT179pjdu3eb+fPnm6ioKPP73//elJaWmoULF5rIyEjz7LPPuh8/LS3NzJ492+M5\nJ0+e7JFz+PDhJjY21txxxx3mgw8+MK+++qpp3769mTp1qtfcxhgza9Ys8+6775q9e/eaFStWmB49\nepiJEyeeM2fDhw837777rvnggw/MV77yFdOlSxdTW1trjDFm//79pk2bNiY7O9uUlJSYt99+2/Tp\n08fj9TfmL3/5iwkNDTW//e1vTWlpqVm0aJG54oorjNPpNPv37zfGGFNcXGxiYmLMzJkzzY4dO8y2\nbdvM//7v/5qrrrrKVFVVGWOMefDBB010dLT5yle+YjZu3Gg2b95srrnmGnP99de7n2vjxo0mJCTE\nTJ8+3Xz44Ydm6dKlJi0tzTgcDrN27VpjjDEHDx40HTp0MDk5OWbbtm3mww8/NPfcc49JTEw0n3zy\nicd8XHvttWb16tVm9+7d7vuAyxHlDLDM2rVrTefOnU1ISIjp27evueOOO0xBQYHHOldeeaW55557\nGh3/2WefmYiICLNgwQKP5V//+tfNqFGj3LcdDoeZMmWKxzrDhw83P/vZzzyW7d271zgcDrN582Zj\njDFxcXFm0aJFPr+e559/3jgcDrNy5Ur3soqKChMTE+MuQxs3bjQOh8N89NFHxhhjamtrTUpKinni\niSe8Pu706dNNly5dTH19vXvZm2++2Wg5mzVrlsfY1NRUc99993ksmzp1qunatav7trdyNmLECPft\n4cOHn5Phd7/7nYmMjDSff/75+SfmDEuXLjURERHu2w1ztmnTJveyf/3rX8bhcJgPP/zQGGPM/fff\nb9LS0kxdXZ17nddee+2C5WzIkCHm1ltv9ViWm5trHA6Hu5xNnDjRfOc73/FYp6qqyrRp08a9LT74\n4IMmNDTU/T8Exhjzpz/9yTidTlNdXW2MMWb8+PHmuuuu83ic+fPne5SzBx980AwaNMhjnfr6etOt\nWzf3v3/DfLz77rteXxdwOeGwJmCZIUOGaOfOnSosLNTEiRN16NAhfetb39LXvvY1SVJ5ebn27dun\nG264odHxpaWlqqmp0bBhwzyWDxs2TMXFxR7LBg4c6HG7qKhIeXl5crlc7v8yMjLkcDj00UcfSZJ+\n8pOfuA/v/eIXv9CmTZt8el2DBw92/xwfH6+ePXu68/Tv318DBgzQM888I0lavny5jhw5oltvvdXr\n423fvl2ZmZlyOBzuZYMGDWp03TNf5/Hjx7V///5G52fPnj2qqqry6fWc+dhnZhgyZIiqq6u1c+dO\nr2OWLl2qYcOGKSUlRS6XSxMmTNCpU6d08OBB9zoOh0P9+vVz377iiiskSYcOHZJ0+vUPHDhQTud/\nf40PHTr0gnlLSkrOmaezbxcVFWnZsmUe20FSUpKqq6s9DlsmJycrMTHRI6MxRuXl5e7nGjJkiMdj\nn52xqKhIGzZs8Hiu2NhY7d2795xDpJmZmRd8fcDlgLMpAQuFhIRo8ODBGjx4sH70ox8pPz9ft9xy\niwoLC3X11VcH7Hmio6M9bhtjlJubq1tuueWcdTt06CBJeuCBBzR+/Hi9+eabWrlypR5++GFNmzZN\nDz30kF/PbYzxKDXf+973NH36dM2aNUvPPPOM+xwkb84ceyFnv05fOJ1OGWM8lp06deqc9c5e50L+\n9a9/KSsrS9OnT9djjz2mtm3b6r333tPEiRNVU1Pj8fxnvsaGn+vr6923/X3usx/LG2OMbr31VuXm\n5p5zX0JCgvvnsy8gOTtjw2Nd6LlGjx6t+fPnn3NfXFyc++eQkJBWccEKIHFBAHBJ6NGjh6TTe83a\nt2+v1NRU/f3vf2903fT0dEVERGjNmjUey9esWaM+ffqc93kGDBigbdu2qWvXruf8d2bB6dKli+66\n6y698sor+sUvfqEFCxZc8DW899577p+PHTumDz74QL169XIv+/a3v62qqiotXLhQb7zxhm6//fbz\nPl6vXr1UVFTkUQT++c9/XjBHbGysUlNTG52frl27KjIyUpLUvn177d+/32OdTZs2nVNszs6wbt06\nRUREqFu3bo0+/7vvvqukpCT98pe/VGZmptLT0y/qStxevXrp/fff93ju8108cea4sz9j7Ox5GzBg\ngDZv3tzodhAfH+9XxrOf6+yMDdtcSkrKOc915l45oFUJ2gFVAI0aNmyYWbhwoSkqKjJ79uwx//jH\nP8zAgQNNQkKCOXLkiDHGmGeeecaEhYWZhx56yGzfvt1s27bNzJs3z33+z7Rp00xiYqJ55ZVXzI4d\nO8zs2bON0+n0OO+rsXOTVq1aZcLCwsyPfvQjs2nTJlNaWmqWL19uJk+ebE6ePGk+/fRTk5OTY1au\nXGl27dplNm7caIYPH26GDRvm9fU0nMydmZnpviDgq1/9qklOTnZfENDg7rvvNuHh4ebqq6++4Dw1\nnBB/xx13mO3bt5uVK1eaa665xjgcDvPSSy8ZY/57zlnD+U0NnnrqKfcFAR9++KH7goDnnnvOvc4D\nDzxgEhISzFtvvWU++OAD88Mf/tDExcWdc85ZbGys+d73vmdKSkrMa6+9Zjp27Gh++MMfes392muv\nGafTaZ599lmzc+dO88ILL5jU1FTjcDjM3r173XMWGhrqMe7jjz82DofDrFmzxuP1T5482Wzfvt38\n4x//MP369bvgOWdLly41YWFhZt68eeajjz4yL7zwgklJSTFOp9McOHDAGGNMSUmJcblcZvz48eb9\n9983u3btMitXrjT33nuv2bVrlzHm9Lli6enpHo9dWFjo8To2bNhgnE6nuf/++82OHTvM0qVLTdeu\nXT3+TQ4dOmSSk5PNl770JVNYWGh2795tCgsLzfTp0826deu8zgdwOaOcAZb51a9+Za6//nrTvn17\nExkZaTp16mRuueUWU1JS4rFefn6+6devn4mIiDCJiYnm5ptvNseOHTPGGHPq1CmTm5trUlJSTHh4\nuMnIyDCLFy/2GO/tj3hhYaEZPXq0cblcJjo62vTs2dNMnTrV1NbWmqqqKjNu3DjTpUsXExkZadq3\nb2++853vmH379nl9Pc8//7wJCwszb7/9tunZs6eJiIgw1157rcfJ7g02b95sHA6H+c1vfuPTXP3j\nH/8wvXv3NhEREaZfv35m+fLlxuFwmKVLlxpjTpczp9N5Tjkzxphf//rXpkuXLiYsLMx069bNzJ07\n1+P+EydOmFtuucW0bdvWtG/f3vziF78wU6ZM8bhac8SIEWby5Mnmpz/9qUlMTDQul8vcfvvt7isa\nvZkxY4bp0KGDiY6ONjfddJNZvHixcTqdHuUsLCzMY8zHH39snE6nu5wZY8yKFStMnz59TEREhOnT\n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\n1XK5XJKka6+9Vh9++KHi4+N17NgxxcfHq6KiQnGNfHlwcXGxiouL3bezsrLcj+OP8PDwixrXUsjX\nNOT7fxERCgsP93tYXUgI+WzO1gS8N5qGfE1je76WsmTJEvfPGRkZysjIkBTkcpacnKy//OUvqqmp\nUVhYmLZs2aL09HRFRkZq9erVGjt2rNasWaPMzMxzxp75IhqcOHHC7wwul+uixrUU8jUN+U6LqK6W\ns6bG73H1dXWtPp/N2ZqC90bTkK9pbM/XElwul7Kyshq9L6jlLC0tTcOGDVNubq4cDoe6dOmi0aNH\nq6qqSnl5eVq1apX7ozQAAABag6B/ztmYMWM0ZswYj2UxMTGaMWNGkBIBAAAED98QAAAAYBHKGQAA\ngEUoZwAAABahnAEAAFiEcgYAAGARyhkAAIBFKGcAAAAWoZwBAABYhHIGAABgEcoZAACARShnAAAA\nFqGcAQAAWIRyBgAAYBHKGQAAgEUoZwAAABahnAEAAFiEcgYAAGARyhkAAIBFKGcAAAAWoZwBAABY\nhHIGAABgEcoZAACARShnAAAAFqGcAQAAWIRyBgAAYBHKGQAAgEUoZwAAABahnAEAAFiEcgYAAGAR\nyhkAAIBFKGcAAAAWoZwBAABYhHIGAABgEcoZAACARShnAAAAFqGcAQAAWIRyBgAAYBHKGQAAgEUo\nZwAAABahnAEAAFgkNNgBgMtBaHm5QsrK/B5n0tKkuLjABwIAXLIoZ0AAhJSVKTI/3+9x9dnZlDMA\ngAcOawIAAFiEcgYAAGARyhkAAIBFKGcAAAAWoZwBAABYhHIGAABgEcoZAACARShnAAAAFqGcAQAA\nWIRyBgAAYBHKGQAAgEUoZwAAABahnAEAAFiEcgYAAGARyhkAAIBFKGcAAAAWoZwBAABYhHIGAABg\nEcoZAACARShnAAAAFqGcAQAAWIRyBgAAYBHKGQAAgEUoZwAAABahnAEAAFiEcgYAAGARyhkAAIBF\nKGcAAAAWoZwBAABYhHIGAABgEcoZAACARShnAAAAFqGcAQAAWIRyBgAAYBHKGQAAgEUoZwAAABah\nnAEAAFiEcgYAAGARyhkAAIBFQoMd4LPPPtPChQu1b98+SVJOTo6uuOIK5eXl6fDhw2rXrp2mTp2q\n6OjoICcFAABofkEvZ88//7z69++vH//4x6qrq1N1dbWWLl2qvn37asyYMSooKFBBQYHGjx8f7KgA\n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\nggB/HT58WE8++aQqKyvlcDj0xS9+UTfeeKOk05+nsnLlSsXGxkqSxo0bp//5n/855zFefvllbdiw\nQZLkcrmUk5OjpKQkSdKyZcu0atUqOZ1OTZo0Sf369fMrX01NjWbOnKlTp06ptrZWmZmZGjdunN57\n7z298sor2r9/vx555BF17dq10fHespWXl2vq1KlKSUmRJF111VWaMmWKX9nOl0+Sli9frrfeektO\np1P9+/fXhAkTvD7Oq6++qhdffFHPPvusYmJiJDV97s5UX1+v3NxcJSQkKDc31+f585YvUPPnLZ/k\n2/ydvY1+97vfdV8QE6j5u/vuuxUVFSWn06mQkBA98sgjPs+ft/dQIOevsXy+vncl7/McqPn77LPP\ntHDhQvf3/N511106cuSIz9tfY/kCNX9nZ8vJyVH37t192vaeeOIJHThwwP040dHRevTRRyUFZu4O\nHDigJ554wn370KFD+va3v62EhAQtWbLkgnPnLV+g5s5bvhtvvNGn+SstLdWzzz6ruro6hYSEaPLk\nyUpPT5cUuG1v2bJlKiwslMPhUKdOnZSTk6P169f7tO15yxfI925j+cLCwnyavz179uj3v/+9qqur\n1a5dO/3gBz9QVFSU+3ED9bfjkmMuExUVFWb37t3GGGNOnjxpfvCDH5h9+/YZY4xZsmSJefXVVy/4\nGJ9//rn75zfeeMMsWLDAGGPMxx9/bH7yk5+YU6dOmUOHDpnvf//7pq6uzu+MVVVVxhhjamtrzfTp\n001JSYnZt2+f2b9/v5k5c6bZuXOn39kOHTpkfvSjH/mdxdd8W7duNb/85S/NqVOnjDHGVFZWeh3/\nySefmFmzZpmcnBxz4sQJY0zg5q7Bq6++aubOnWt+9atfGWOMz/PnLV8g56+xfL7On7dtNJDzd+br\nbuDr/HnLF8j5ayyfr+9db/McyPmbN2+eWbFihTHm9Hvks88+83n+vOUL1Pw1ls2f926DF154wfz5\nz382xgT+vWuMMXV1deb22283n3zyiV/v3cbyBfq9e3Y+X+fvwQcfNJs2bTLGGLNx40Yzc+ZMY0zg\n5u/QoUPm7rvvNjU1NcYYYx5//HGzatUqn+fPW75AzZ+3fL7OX25urtm+fbsxxpiVK1eal19+2RjT\nPNvfpeSyOawZHx+vtLQ0SVJkZKRSUlI8vo/T+HBRakNbl6Sqqiq5XC5JUlFRkYYOHarQ0FC1b99e\n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\nQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import numpy as np\n", "import matplotlib.pyplot as plt\n", "\n", "N = len(ls_labels_men)\n", "\n", "\n", "ind = np.arange(N) # the x locations for the groups\n", "width = 0.35 # the width of the bars\n", "\n", "fig, ax = plt.subplots()\n", "\n", "rects1 = ax.bar(ind, ls_values_men, width, color = 'red', alpha = 0.6)\n", "\n", "\n", "\n", "#rects2 = ax.bar(ind + width, ls_values_men, width )\n", "\n", "# add some text for labels, title and axes ticks\n", "ax.set_ylabel('Scores')\n", "\n", "ax.set_title('Scores by group and gender')\n", "ax.set_xticks(ind + width)\n", "ax.set_xticklabels(ls_labels_men)\n", "\n", "\n", "#ax.legend((rects1[0], rects2[0]), ('Men', 'Women'))\n", "\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 31, "metadata": { "collapsed": true }, "outputs": [], "source": [ "import pandas as pd\n", "df_men = pd.read_csv(\"4_educational_background.csv\")" ] }, { "cell_type": "code", "execution_count": 32, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/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", "
Table - 4 Educational Background of MembersUnnamed: 1Unnamed: 2
0Educational QualificationsNo. of MembersPercentage
1Under Matriculates/Certified Courses/ Others173.13
2Matric, Inter/High Secondary, Diploma Holders9216.95
3Under Graduates152.77
4Graduates includeing those with equivalent tec...22641.62
5Post Graduates including those with equivalent...16029.46
6Doctorate336.07
\n", "
" ], "text/plain": [ " Table - 4 Educational Background of Members Unnamed: 1 \\\n", "0 Educational Qualifications No. of Members \n", "1 Under Matriculates/Certified Courses/ Others 17 \n", "2 Matric, Inter/High Secondary, Diploma Holders 92 \n", "3 Under Graduates 15 \n", "4 Graduates includeing those with equivalent tec... 226 \n", "5 Post Graduates including those with equivalent... 160 \n", "6 Doctorate 33 \n", "\n", " Unnamed: 2 \n", "0 Percentage \n", "1 3.13 \n", "2 16.95 \n", "3 2.77 \n", "4 41.62 \n", "5 29.46 \n", "6 6.07 " ] }, "execution_count": 32, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df_men" ] }, { "cell_type": "code", "execution_count": 33, "metadata": { "collapsed": true }, "outputs": [], "source": [ "ls_labels_men = []\n", "ls_values_men = []\n", "\n", "for i in range(1,df_men.shape[0]):\n", " ls_labels_men.append(str(df_men.iat[i,0]))\n", " ls_values_men.append(float(df_men.iat[i,1]))" ] }, { "cell_type": "code", "execution_count": 34, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import matplotlib.pyplot as plt\n", "import pandas as pd\n", "plt.rcParams['figure.figsize'] = (10.0, 10.0)\n", "\n", "# The slices will be ordered and plotted counter-clockwise.\n", "\n", "labels = ls_labels_men\n", "sizes = ls_values_men\n", "colors = ['yellowgreen', 'gold', 'lightskyblue', 'lightcoral', 'red', 'lightgreen']\n", "explode = (0.1, 0.1, 0.1, 0.1, 0.1, .1) \n", "\n", "p, text = plt.pie(sizes, colors = colors, explode = explode, shadow=True, startangle=90 )\n", "# Set aspect ratio to be equal so that pie is drawn as a circle.\n", "plt.axis('equal')\n", "\n", "#plt.title(\"Educational Background\", fontsize = 50, loc = 'right')\n", "\n", "plt.legend(p, labels, loc= 'lower right')\n", "\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Similarly we have analysed the census data for education, populatin, literacy rates etc for the country" ] }, { "cell_type": "code", "execution_count": 47, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "'C:\\\\Users\\\\user\\\\Desktop\\\\7th Sem Project\\\\datasets\\\\originals'" ] }, "execution_count": 47, "metadata": {}, "output_type": "execute_result" } ], "source": [ "os.getcwd()" ] }, { "cell_type": "code", "execution_count": 50, "metadata": { "collapsed": true }, "outputs": [], "source": [ "os.chdir('..')" ] }, { "cell_type": "code", "execution_count": 45, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "'C:\\\\Users\\\\user\\\\Desktop\\\\7th Sem Project\\\\datasets\\\\originals'" ] }, "execution_count": 45, "metadata": {}, "output_type": "execute_result" } ], "source": [ "os.getcwd()" ] }, { "cell_type": "code", "execution_count": 52, "metadata": { "collapsed": false }, "outputs": [], "source": [ "os.chdir('processed_census_datasets')" ] }, { "cell_type": "code", "execution_count": 53, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/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", "
Unnamed: 0Unnamed: 1Unnamed: 2Unnamed: 3Unnamed: 4C-10 : POPULATION ATTENDING EDUCATIONAL INSTITUTIONS BY AGE, SEX AND TYPE OF EDUCATIONAL INSTITUTION - 2011Unnamed: 6Unnamed: 7Unnamed: 8Unnamed: 9...Unnamed: 26Unnamed: 27Unnamed: 28Unnamed: 29Unnamed: 30Unnamed: 31Unnamed: 32Unnamed: 33Unnamed: 34Unnamed: 35
0TableStateDistt.Area NameTotal/Age-Total populationNaNNaNPopulation...NaNNaNNaNNaNPopulation not attending educational institutionsNaNNaNNaNNaNNaN
1NameCodeCodeNaNRural/groupNaNNaNNaNattending educational institutions...NaNOther institutionNaNNaNAttended BeforeNaNNaNNever AttendedNaNNaN
2NaNNaNNaNNaNUrban/NaNPersonsMalesFemalesPersons...FemalesPersonsMalesFemalesPersonsMalesFemalesPersonsMalesFemales
3NaNNaNNaNNaNNaN12345...22232425262728293031
4NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
5NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
6C301000INDIATotalAll ages1210854977623270258587584719314556926...8462171023291556681466610481187692279953000201234692415110359172779827242330532
7C301000INDIARuralAll ages833748852427781058405967794214744835...712212595972318582277390290282165175224339115057826328721852135648574193073278
8C301000INDIAUrbanAll ages37710612519548920018161692599812091...13400542731923809918922019090552710472866186176866863885073713125349257254
9C301010State - JAMMU & KASHMIRTotalAll ages12541302664066259006403696633...1382273801651810862377201024395861332424507265921773762895283
10C301010State - JAMMU & KASHMIRRuralAll ages9108060477447743335832676870...907135928977461523695811561745807836406160917350052326604
11C301010State - JAMMU & KASHMIRUrbanAll ages3433242186618515670571019763...475137887541624714024298778415245881011050442371568679
12C301030State - PUNJABTotalAll ages2774333814639465131038736801164...43363672417065196591274586271232025622660819631237596854436627
13C301030State - PUNJABRuralAll ages17344192909347682507164182696...28071745379109543732523441157143209520583626226648603171402
14C301030State - PUNJABUrbanAll ages10399146554598948531572618468...152919271915510116542062830074882413140236005010948251265225
15C301070State - NCT OF DELHITotalAll ages16787941898732678006154717065...1821291291662112508841689448123963604498365398215849572069025
16C301070State - NCT OF DELHIRuralAll ages419042226321192721121535...64591311280185424111001744231120834657465509
17C301070State - NCT OF DELHIUrbanAll ages16368899876100576078944595530...1757285381631012228823147047013953530075354189915383832003516
18C301090State - UTTAR PRADESHTotalAll ages1998123411044805109533183157397639...579811700349359776437613435763870216022641416810711263435591146715215
19C301090State - UTTAR PRADESHRuralAll ages155317278809929957432428344660839...448551037055392149784439543282871078715243541667021112776149738940614
20C301090State - UTTAR PRADESHUrbanAll ages44495063234875152100754812736800...1312666329396762665317389248999137373978751436901565944147774601
21C3010100State - BIHARTotalAll ages104099452542781574982129528365229...158407136148678846826426855076171361819718895488791472138407327495074
22C3010100State - BIHARRuralAll ages92341436480738504426758624671221...151553116961570565990522551179146571427894037451190361969437425424662
23C3010100State - BIHARUrbanAll ages11758016620430755537093694008...685419187108288359430389724790391824858376011116896992070412
24C3010180State - ASSAMTotalAll ages3120557615939443152661337548916...57261800010881711912432989705763253753571122367149796176244054
25C3010180State - ASSAMRuralAll ages2680703413678989131280456423680...519513304833849669962844572672042361241042051046319485788562
26C3010180State - ASSAMUrbanAll ages4398542226045421380881125236...531469625432153247014513309121139233803161347669455492
27C3010190State - WEST BENGALTotalAll ages91276115468090274446708820857818...126983762494308633163424964432389757118598872279218541208221815839636
28C3010190State - WEST BENGALRuralAll ages62183113318449453033816814434107...10578840592243411625126090469150243911106607821658537934072212317815
29C3010190State - WEST BENGALUrbanAll ages2909300214964082141289206423711...211953565718745169121640597488731807532794626331727414963521821
30C3010240State - GUJARATTotalAll ages60439692314912602894843214320617...165502344013686975428356858162506121210624617762217720642710555790
31C3010240State - GUJARATRuralAll ages3469460917799159168954508102296...12977113886948444014317218844392558732931227509548345047440591
32C3010240State - GUJARATUrbanAll ages2574508313692101120529826218321...357312052673853141403964078066876232953548712223719233115199
33C3010270State - MAHARASHTRATotalAll ages112374333582430565413127729474864...54642678813811029771556030743108563624517438272963951112780016168595
34C3010270State - MAHARASHTRARuralAll ages61556074315390343001704016201903...4086628439151141332527210847155589631165188418143324714953210993792
35C3010270State - MAHARASHTRAUrbanAll ages50818259267040222411423713272961...13776394422299616446283922271552667312865554915307139782685174803
36C3010280State - ANDHRA PRADESHTotalAll ages84580777424421464213863121701636...98659959814920446777312538431766559013588253316252981304270718582591
37C3010280State - ANDHRA PRADESHRuralAll ages56361702282432412811846113660166...7403956085278302825518356718107219097634809243448181004510114299717
38C3010280State - ANDHRA PRADESHUrbanAll ages2821907514198905140201708041470...246203989621374185221289712569436815953444728048029976064282874
\n", "

39 rows × 36 columns

\n", "
" ], "text/plain": [ " Unnamed: 0 Unnamed: 1 Unnamed: 2 Unnamed: 3 Unnamed: 4 \\\n", "0 Table State Distt. Area Name Total/ \n", "1 Name Code Code NaN Rural/ \n", "2 NaN NaN NaN NaN Urban/ \n", "3 NaN NaN NaN NaN NaN \n", "4 NaN NaN NaN NaN NaN \n", "5 NaN NaN NaN NaN NaN \n", "6 C3010 0 0 INDIA Total \n", "7 C3010 0 0 INDIA Rural \n", "8 C3010 0 0 INDIA Urban \n", "9 C3010 1 0 State - JAMMU & KASHMIR Total \n", "10 C3010 1 0 State - JAMMU & KASHMIR Rural \n", "11 C3010 1 0 State - JAMMU & KASHMIR Urban \n", "12 C3010 3 0 State - PUNJAB Total \n", "13 C3010 3 0 State - PUNJAB Rural \n", "14 C3010 3 0 State - PUNJAB Urban \n", "15 C3010 7 0 State - NCT OF DELHI Total \n", "16 C3010 7 0 State - NCT OF DELHI Rural \n", "17 C3010 7 0 State - NCT OF DELHI Urban \n", "18 C3010 9 0 State - UTTAR PRADESH Total \n", "19 C3010 9 0 State - UTTAR PRADESH Rural \n", "20 C3010 9 0 State - UTTAR PRADESH Urban \n", "21 C3010 10 0 State - BIHAR Total \n", "22 C3010 10 0 State - BIHAR Rural \n", "23 C3010 10 0 State - BIHAR Urban \n", "24 C3010 18 0 State - ASSAM Total \n", "25 C3010 18 0 State - ASSAM Rural \n", "26 C3010 18 0 State - ASSAM Urban \n", "27 C3010 19 0 State - WEST BENGAL Total \n", "28 C3010 19 0 State - WEST BENGAL Rural \n", "29 C3010 19 0 State - WEST BENGAL Urban \n", "30 C3010 24 0 State - GUJARAT Total \n", "31 C3010 24 0 State - GUJARAT Rural \n", "32 C3010 24 0 State - GUJARAT Urban \n", "33 C3010 27 0 State - MAHARASHTRA Total \n", "34 C3010 27 0 State - MAHARASHTRA Rural \n", "35 C3010 27 0 State - MAHARASHTRA Urban \n", "36 C3010 28 0 State - ANDHRA PRADESH Total \n", "37 C3010 28 0 State - ANDHRA PRADESH Rural \n", "38 C3010 28 0 State - ANDHRA PRADESH Urban \n", "\n", " C-10 : POPULATION ATTENDING EDUCATIONAL INSTITUTIONS BY AGE, SEX AND TYPE OF EDUCATIONAL INSTITUTION - 2011 \\\n", "0 Age- \n", "1 group \n", "2 NaN \n", "3 1 \n", "4 NaN \n", "5 NaN \n", "6 All ages \n", "7 All ages \n", "8 All ages \n", "9 All ages \n", "10 All ages \n", "11 All ages \n", "12 All ages \n", "13 All ages \n", "14 All ages \n", "15 All ages \n", "16 All ages \n", "17 All ages \n", "18 All ages \n", "19 All ages \n", "20 All ages \n", "21 All ages \n", "22 All ages \n", "23 All ages \n", "24 All ages \n", "25 All ages \n", "26 All ages \n", "27 All ages \n", "28 All ages \n", "29 All ages \n", "30 All ages \n", "31 All ages \n", "32 All ages \n", "33 All ages \n", "34 All ages \n", "35 All ages \n", "36 All ages \n", "37 All ages \n", "38 All ages \n", "\n", " Unnamed: 6 Unnamed: 7 Unnamed: 8 \\\n", "0 Total population NaN NaN \n", "1 NaN NaN NaN \n", "2 Persons Males Females \n", "3 2 3 4 \n", "4 NaN NaN NaN \n", "5 NaN NaN NaN \n", "6 1210854977 623270258 587584719 \n", "7 833748852 427781058 405967794 \n", "8 377106125 195489200 181616925 \n", "9 12541302 6640662 5900640 \n", "10 9108060 4774477 4333583 \n", "11 3433242 1866185 1567057 \n", "12 27743338 14639465 13103873 \n", "13 17344192 9093476 8250716 \n", "14 10399146 5545989 4853157 \n", "15 16787941 8987326 7800615 \n", "16 419042 226321 192721 \n", "17 16368899 8761005 7607894 \n", "18 199812341 104480510 95331831 \n", "19 155317278 80992995 74324283 \n", "20 44495063 23487515 21007548 \n", "21 104099452 54278157 49821295 \n", "22 92341436 48073850 44267586 \n", "23 11758016 6204307 5553709 \n", "24 31205576 15939443 15266133 \n", "25 26807034 13678989 13128045 \n", "26 4398542 2260454 2138088 \n", "27 91276115 46809027 44467088 \n", "28 62183113 31844945 30338168 \n", "29 29093002 14964082 14128920 \n", "30 60439692 31491260 28948432 \n", "31 34694609 17799159 16895450 \n", "32 25745083 13692101 12052982 \n", "33 112374333 58243056 54131277 \n", "34 61556074 31539034 30017040 \n", "35 50818259 26704022 24114237 \n", "36 84580777 42442146 42138631 \n", "37 56361702 28243241 28118461 \n", "38 28219075 14198905 14020170 \n", "\n", " Unnamed: 9 ... Unnamed: 26 \\\n", "0 Population ... NaN \n", "1 attending educational institutions ... NaN \n", "2 Persons ... Females \n", "3 5 ... 22 \n", "4 NaN ... NaN \n", "5 NaN ... NaN \n", "6 314556926 ... 846217 \n", "7 214744835 ... 712212 \n", "8 99812091 ... 134005 \n", "9 3696633 ... 1382 \n", "10 2676870 ... 907 \n", "11 1019763 ... 475 \n", "12 6801164 ... 4336 \n", "13 4182696 ... 2807 \n", "14 2618468 ... 1529 \n", "15 4717065 ... 1821 \n", "16 121535 ... 64 \n", "17 4595530 ... 1757 \n", "18 57397639 ... 57981 \n", "19 44660839 ... 44855 \n", "20 12736800 ... 13126 \n", "21 28365229 ... 158407 \n", "22 24671221 ... 151553 \n", "23 3694008 ... 6854 \n", "24 7548916 ... 5726 \n", "25 6423680 ... 5195 \n", "26 1125236 ... 531 \n", "27 20857818 ... 126983 \n", "28 14434107 ... 105788 \n", "29 6423711 ... 21195 \n", "30 14320617 ... 16550 \n", "31 8102296 ... 12977 \n", "32 6218321 ... 3573 \n", "33 29474864 ... 54642 \n", "34 16201903 ... 40866 \n", "35 13272961 ... 13776 \n", "36 21701636 ... 98659 \n", "37 13660166 ... 74039 \n", "38 8041470 ... 24620 \n", "\n", " Unnamed: 27 Unnamed: 28 Unnamed: 29 \\\n", "0 NaN NaN NaN \n", "1 Other institution NaN NaN \n", "2 Persons Males Females \n", "3 23 24 25 \n", "4 NaN NaN NaN \n", "5 NaN NaN NaN \n", "6 1023291 556681 466610 \n", "7 595972 318582 277390 \n", "8 427319 238099 189220 \n", "9 27380 16518 10862 \n", "10 13592 8977 4615 \n", "11 13788 7541 6247 \n", "12 36724 17065 19659 \n", "13 17453 7910 9543 \n", "14 19271 9155 10116 \n", "15 29129 16621 12508 \n", "16 591 311 280 \n", "17 28538 16310 12228 \n", "18 170034 93597 76437 \n", "19 103705 53921 49784 \n", "20 66329 39676 26653 \n", "21 136148 67884 68264 \n", "22 116961 57056 59905 \n", "23 19187 10828 8359 \n", "24 18000 10881 7119 \n", "25 13304 8338 4966 \n", "26 4696 2543 2153 \n", "27 76249 43086 33163 \n", "28 40592 24341 16251 \n", "29 35657 18745 16912 \n", "30 23440 13686 9754 \n", "31 11388 6948 4440 \n", "32 12052 6738 5314 \n", "33 67881 38110 29771 \n", "34 28439 15114 13325 \n", "35 39442 22996 16446 \n", "36 95981 49204 46777 \n", "37 56085 27830 28255 \n", "38 39896 21374 18522 \n", "\n", " Unnamed: 30 Unnamed: 31 Unnamed: 32 \\\n", "0 Population not attending educational institutions NaN NaN \n", "1 Attended Before NaN NaN \n", "2 Persons Males Females \n", "3 26 27 28 \n", "4 NaN NaN NaN \n", "5 NaN NaN NaN \n", "6 481187692 279953000 201234692 \n", "7 290282165 175224339 115057826 \n", "8 190905527 104728661 86176866 \n", "9 3772010 2439586 1332424 \n", "10 2369581 1561745 807836 \n", "11 1402429 877841 524588 \n", "12 12745862 7123202 5622660 \n", "13 7325234 4115714 3209520 \n", "14 5420628 3007488 2413140 \n", "15 8416894 4812396 3604498 \n", "16 185424 111001 74423 \n", "17 8231470 4701395 3530075 \n", "18 61343576 38702160 22641416 \n", "19 43954328 28710787 15243541 \n", "20 17389248 9991373 7397875 \n", "21 26855076 17136181 9718895 \n", "22 22551179 14657142 7894037 \n", "23 4303897 2479039 1824858 \n", "24 12432989 7057632 5375357 \n", "25 9962844 5726720 4236124 \n", "26 2470145 1330912 1139233 \n", "27 42496443 23897571 18598872 \n", "28 26090469 15024391 11066078 \n", "29 16405974 8873180 7532794 \n", "30 28356858 16250612 12106246 \n", "31 14317218 8443925 5873293 \n", "32 14039640 7806687 6232953 \n", "33 55603074 31085636 24517438 \n", "34 27210847 15558963 11651884 \n", "35 28392227 15526673 12865554 \n", "36 31253843 17665590 13588253 \n", "37 18356718 10721909 7634809 \n", "38 12897125 6943681 5953444 \n", "\n", " Unnamed: 33 Unnamed: 34 Unnamed: 35 \n", "0 NaN NaN NaN \n", "1 Never Attended NaN NaN \n", "2 Persons Males Females \n", "3 29 30 31 \n", "4 NaN NaN NaN \n", "5 NaN NaN NaN \n", "6 415110359 172779827 242330532 \n", "7 328721852 135648574 193073278 \n", "8 86388507 37131253 49257254 \n", "9 5072659 2177376 2895283 \n", "10 4061609 1735005 2326604 \n", "11 1011050 442371 568679 \n", "12 8196312 3759685 4436627 \n", "13 5836262 2664860 3171402 \n", "14 2360050 1094825 1265225 \n", "15 3653982 1584957 2069025 \n", "16 112083 46574 65509 \n", "17 3541899 1538383 2003516 \n", "18 81071126 34355911 46715215 \n", "19 66702111 27761497 38940614 \n", "20 14369015 6594414 7774601 \n", "21 48879147 21384073 27495074 \n", "22 45119036 19694374 25424662 \n", "23 3760111 1689699 2070412 \n", "24 11223671 4979617 6244054 \n", "25 10420510 4631948 5788562 \n", "26 803161 347669 455492 \n", "27 27921854 12082218 15839636 \n", "28 21658537 9340722 12317815 \n", "29 6263317 2741496 3521821 \n", "30 17762217 7206427 10555790 \n", "31 12275095 4834504 7440591 \n", "32 5487122 2371923 3115199 \n", "33 27296395 11127800 16168595 \n", "34 18143324 7149532 10993792 \n", "35 9153071 3978268 5174803 \n", "36 31625298 13042707 18582591 \n", "37 24344818 10045101 14299717 \n", "38 7280480 2997606 4282874 \n", "\n", "[39 rows x 36 columns]" ] }, "execution_count": 53, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import pandas as pd\n", "df = pd.read_csv(\"processed-population-and-education_DDW-0000C-10.xlsx - C-10 SC.csv\")\n", "df" ] }, { "cell_type": "code", "execution_count": 54, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "(39, 36)" ] }, "execution_count": 54, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.shape" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Other Datasets fom the Census 2011 survey" ] }, { "cell_type": "code", "execution_count": 55, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "['processed-education-level_DDW-0000C-08.xlsx - C-08.csv',\n", " 'processed-graduate-and-above_DDW-0000C-08A.xlsx - C-08App.csv',\n", " 'processed-household-size_DDW-HH01-0000-2011.XLS - Sheet1.csv',\n", " 'processed-non-worker_DDW-0000B-13-Census.xls - B13.csv',\n", " 'processed-population-and-education_DDW-0000C-10.xlsx - C-10 SC.csv',\n", " 'processed-population-and-religion_DDW00C-01_20MDDS.XLS - C01.csv',\n", " 'processed-workforce-analysis_DDW-0000B-01-Census.xls - B01.csv',\n", " 'processed-youth-population_PCA_AY_2011_Revised.xlsx - Sheet1.csv']" ] }, "execution_count": 55, "metadata": {}, "output_type": "execute_result" } ], "source": [ "os.listdir()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Various Visualization Techniques " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Matplotlib has been introduced earlier" ] }, { "cell_type": "markdown", "metadata": { "collapsed": true }, "source": [ "# Using Bokeh" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Here we represent the Parameters wrt National level and State level.\n", "\n", "###Namely, of two states Delhi and Assam" ] }, { "cell_type": "code", "execution_count": 30, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ " \n", "\n", "\n", " \n", "\n", "
\n", " \n", " BokehJS successfully loaded.\n", "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stderr", "output_type": "stream", "text": [ "C:\\Anaconda3\\lib\\site-packages\\bokeh\\_legacy_charts\\_chart.py:92: UserWarning: Instantiating a Legacy Chart from bokeh._legacy_charts\n", " warn(\"Instantiating a Legacy Chart from bokeh._legacy_charts\")\n" ] }, { "data": { "text/html": [ "\n", "
\n", "\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from bokeh._legacy_charts import Bar\n", "from bokeh.io import output_notebook, show\n", "\n", "# get the countries and we group the data by medal type\n", "states = ['delhi', 'assam']\n", "\n", "\n", "delhi = [ [56,46],\n", " [23,77],\n", " [45,55],\n", " [60,40],\n", " [35,15,25,25] \n", "]\n", "\n", "assam = [ [30,10],\n", " [33,67],\n", " [75,25],\n", " [50,50],\n", " [75,5,10,10] \n", "]\n", "\n", "output_notebook()\n", "\n", "bar = Bar([delhi[0],assam[0]], states, title=\"Stacked bars\", stacked=True)\n", "bar2 = Bar([delhi[0],assam[0]], states, title=\"Stacked bars\")\n", "\n", "show(bar)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## A Tale of Two Cities " ] }, { "cell_type": "code", "execution_count": 58, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ " \n", "\n", "\n", " \n", "\n", "
\n", " \n", " BokehJS successfully loaded.\n", "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stderr", "output_type": "stream", "text": [ "ERROR:C:\\Anaconda3\\lib\\site-packages\\bokeh\\validation\\check.py:E-1000 (COLUMN_LENGTHS): ColumnDataSource column lengths are not all the same: ColumnDataSource, ViewModel:ColumnDataSource, ref _id: 037801bb-c139-4f83-aaf7-39c2d0465075\n", "ERROR:C:\\Anaconda3\\lib\\site-packages\\bokeh\\validation\\check.py:E-1000 (COLUMN_LENGTHS): ColumnDataSource column lengths are not all the same: ColumnDataSource, ViewModel:ColumnDataSource, ref _id: 4fdfc1a6-c549-4cae-9f2d-bab55e887fc9\n" ] }, { "data": { "text/html": [ "\n", "
\n", "\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from collections import OrderedDict\n", "from math import log, sqrt\n", "\n", "import numpy as np\n", "import pandas as pd\n", "from six.moves import cStringIO as StringIO\n", "\n", "from bokeh.plotting import figure\n", "from bokeh.io import output_notebook, show\n", "\n", "antibiotics = \"\"\"\n", "attitude, Positive, Negative, Dont_care, gram\n", "ASSAM, 80, 5, 5, negative\n", "DELHI, 10, 0.8, 0.09, negative\n", "INDIA, 3, 0.1, 0.1, positive\"\"\"\n", "\n", "drug_color = OrderedDict([\n", " (\"Dont_care\", \"#0d3362\"),\n", " (\"Positive\", \"#c64737\"),\n", " (\"Negative\", \"black\" ),\n", "])\n", "\n", "gram_color = {\n", " \"positive\" : \"#aeaeb8\",\n", " \"negative\" : \"#e69584\",\n", "}\n", "\n", "df = pd.read_csv(StringIO(antibiotics),\n", " skiprows=1,\n", " skipinitialspace=True,\n", " engine='python')\n", "\n", "width = 800\n", "height = 800\n", "inner_radius = 90\n", "outer_radius = 300 - 10\n", "\n", "minr = sqrt(log(.001 * 1E4))\n", "maxr = sqrt(log(1000 * 1E4))\n", "a = (outer_radius - inner_radius) / (minr - maxr)\n", "b = inner_radius - a * maxr\n", "\n", "def rad(mic):\n", " return a * np.sqrt(np.log(mic * 1E4)) + b\n", "\n", "big_angle = 2.0 * np.pi / (len(df) + 1)\n", "small_angle = big_angle / 7\n", "\n", "x = np.zeros(len(df))\n", "y = np.zeros(len(df))\n", "\n", "#output_file(\"burtin.html\", title=\"burtin.py example\")\n", "\n", "output_notebook()\n", "\n", "p = figure(plot_width=width, plot_height=height, title=\"\",\n", " x_axis_type=None, y_axis_type=None,\n", " x_range=[-420, 420], y_range=[-420, 420],\n", " min_border=0, outline_line_color=\"black\",\n", " background_fill=\"#f0e1d2\", border_fill=\"#f0e1d2\")\n", "\n", "p.line(x+1, y+1, alpha=0)\n", "\n", "# annular wedges\n", "angles = np.pi/2 - big_angle/2 - df.index.to_series()*big_angle\n", "colors = [gram_color[gram] for gram in df.gram]\n", "p.annular_wedge(\n", " x, y, inner_radius, outer_radius, -big_angle+angles, angles, color=colors,\n", ")\n", "\n", "# small wedges\n", "\n", "p.annular_wedge(x, y, inner_radius, rad(df.Dont_care),\n", " -big_angle+angles+5*small_angle, -big_angle+angles+6*small_angle,\n", " color=drug_color['Dont_care'])\n", "\n", "p.annular_wedge(x, y, inner_radius, rad(df.Positive),\n", " -big_angle+angles+3*small_angle, -big_angle+angles+4*small_angle,\n", " color=drug_color['Positive'])\n", "\n", "p.annular_wedge(x, y, inner_radius, rad(df.Negative),\n", " -big_angle+angles+1*small_angle, -big_angle+angles+2*small_angle,\n", " color=drug_color['Negative'])\n", "\n", "# circular axes and lables\n", "labels = np.power(10.0, np.arange(-3, 4))\n", "radii = a * np.sqrt(np.log(labels * 1E4)) + b\n", "p.circle(x, y, radius=radii, fill_color=None, line_color=\"white\")\n", "p.text(x[:-1], radii[:-1], [str(r) for r in labels[:-1]],\n", " text_font_size=\"8pt\", text_align=\"center\", text_baseline=\"middle\")\n", "\n", "# radial axes\n", "p.annular_wedge(x, y, inner_radius-10, outer_radius+10,\n", " -big_angle+angles, -big_angle+angles, color=\"black\")\n", "\n", "# attitude labels\n", "xr = radii[0]*np.cos(np.array(-big_angle/2 + angles))\n", "yr = radii[0]*np.sin(np.array(-big_angle/2 + angles))\n", "label_angle=np.array(-big_angle/2+angles)\n", "label_angle[label_angle < -np.pi/2] += np.pi # easier to read labels on the left side\n", "p.text(xr, yr, df.attitude, angle=label_angle,\n", " text_font_size=\"9pt\", text_align=\"center\", text_baseline=\"middle\")\n", "\n", "# OK, these hand drawn legends are pretty clunky, will be improved in future release\n", "p.circle([-40, -40], [-370, -390], color=list(gram_color.values()), radius=5)\n", "p.text([-30, -30], [-370, -390], text=[ \"National\", \"States\" ],\n", " text_font_size=\"7pt\", text_align=\"left\", text_baseline=\"middle\")\n", "\n", "p.rect([-40, -40, -40], [18, 0, -18], width=30, height=13,\n", " color=list(drug_color.values()))\n", "p.text([-15, -15, -15], [18, 0, -18], text=list(drug_color.keys()),\n", " text_font_size=\"9pt\", text_align=\"left\", text_baseline=\"middle\")\n", "\n", "p.xgrid.grid_line_color = None\n", "p.ygrid.grid_line_color = None\n", "\n", "show(p)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Now we modify it a bit so that it outputs to an HTML file, thus we can embed these plots directly in a webpage - without dealing with JavaScript at all !!" ] }, { "cell_type": "code", "execution_count": 46, "metadata": { "collapsed": false }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "ERROR:C:\\Anaconda3\\lib\\site-packages\\bokeh\\validation\\check.py:E-1000 (COLUMN_LENGTHS): ColumnDataSource column lengths are not all the same: ColumnDataSource, ViewModel:ColumnDataSource, ref _id: 4b5c306f-361b-4db7-97b1-962ad2ec139c\n", "ERROR:C:\\Anaconda3\\lib\\site-packages\\bokeh\\validation\\check.py:E-1000 (COLUMN_LENGTHS): ColumnDataSource column lengths are not all the same: ColumnDataSource, ViewModel:ColumnDataSource, ref _id: 69e54c2b-5836-429e-a9d4-ab907fcf31f2\n" ] }, { "data": { "text/html": [ "\n", "
\n", "\n" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stderr", "output_type": "stream", "text": [ "ERROR:C:\\Anaconda3\\lib\\site-packages\\bokeh\\validation\\check.py:E-1000 (COLUMN_LENGTHS): ColumnDataSource column lengths are not all the same: ColumnDataSource, ViewModel:ColumnDataSource, ref _id: 4b5c306f-361b-4db7-97b1-962ad2ec139c\n", "ERROR:C:\\Anaconda3\\lib\\site-packages\\bokeh\\validation\\check.py:E-1000 (COLUMN_LENGTHS): ColumnDataSource column lengths are not all the same: ColumnDataSource, ViewModel:ColumnDataSource, ref _id: 69e54c2b-5836-429e-a9d4-ab907fcf31f2\n" ] } ], "source": [ "from bokeh.io import output_file, show\n", "output_file('tale_of_cities.html')\n", "show(p)" ] }, { "cell_type": "markdown", "metadata": { "collapsed": true }, "source": [ "## Similarly we have analysed many such datasets and have mapped them onto the Graphics" ] }, { "cell_type": "code", "execution_count": 32, "metadata": { "collapsed": false }, "outputs": [], "source": [ "from IPython.display import Image\n", "image0 = Image('IndiaSelected.jpg')\n", "image1 = Image('BanSectors.jpg')\n", "image2 = Image('StatesSelected.jpg')\n", "image3 = Image('BanTimeLine.jpg')" ] }, { "cell_type": "code", "execution_count": 37, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/jpeg": "/9j/4AAQSkZJRgABAQEASABIAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0a\nHBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJCQwLDBgNDRgyIRwhMjIyMjIy\nMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjL/wAARCAEXAi4DASIA\nAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQA\nAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3\nODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWm\np6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEA\nAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSEx\nBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElK\nU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3\nuLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD3+iii\ngAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKA\nCiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAK\nKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAoooJwMmgAorKbxPoasV/tazJBwdsoI/MUn\n/CUaH/0FbX/v4Knnj3N/qtf+R/c/8jWorJ/4SjQ/+gra/wDfwUf8JRof/QVtf+/go549w+q1/wCR\n/c/8jWorJ/4SjQ/+gra/9/BR/wAJRof/AEFbX/v4KOePcPqtf+R/c/8AI1qKyf8AhKND/wCgra/9\n/BR/wlGh/wDQVtf+/go549w+q1/5H9z/AMjWorJ/4SjQ/wDoK2v/AH8FH/CUaH/0FbX/AL+Cjnj3\nD6rX/kf3P/I1qKyf+Eo0P/oK2v8A38FH/CUaH/0FbX/v4KOePcPqtf8Akf3P/I1qKyf+Eo0Lvq1o\nB6tKAB+JrUjkjmjWSJ1eNxlWU5BHqDTUk9mROlUp6zi16pr9B1FFFMzCiiigAooooAKKKKACiiig\nAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKAC\niiigAooooAKKKKACiiigAooooAKKKKACiiigAorE1zW7rTb/AE+xsdOW9ub3zNqvceUFCAE87T61\nB/anij/oWbX/AMGg/wDjdQ6iTt+h1RwlSUVO6Se15JeXVnRVka4POk0uyfmC7vPLmXsyrFJJtPsS\ngBHcZFVP7U8Uf9Cza/8Ag0H/AMbrmDrGv3fxT0Wy1Wy+w2qCWSGFJPMVz5LgtvwMnkjoMZ9+c6lV\nWSs9WlsdWEwFRzlPmj7sZS+JN6J7Jedj0hVCqFUAKBgAdqWuS8V3Yg1ewjluooYWglJE2qyWKFgy\nY+ZM7jyeD6mqf/CW3ln/AGTbl4XaSGAzJKVMj7jgsCXUkY5BVH98VutTy3odzRWFp2pajPqMa3LW\nptpzcBEjiZXTy32jLFiGyPYVBLrl1/bj2UdzYq3neStm0bGfbsz5v3h8uecbcYH3s0rgdJRXOaSb\nn/hA4pp7+QXEtoZWugjyMhYZ3bSxJxnoD24AHAzNO1v7DDczwyJdW0IRpmg1J76MAkqcO4DI2dp2\n8jaD0PNN6NoDtqK4u78VarbWCyyQW0TLN9mmlYLsSRQxb78qDB+UDLA9evSkuPGVzHc6ciCzHnpE\n0kW9HYhmwSrCUcY5ygk75xijd2A7WisSx1XUJNLS7lsWvHllcLHZhE8tQSBuMkgyeOo9enes/VJ9\nSnvfsdsbm2muYluY0Z/mjMYbcpKkjG7ygQDg7jRcDq6K45vEM8Nql2t9aWsd4JbiJ74MyuAQqRoN\ny4JUBu/XgHmpn8QagEeWefT9Pga5MKyXUTFYcJuIc71BJJAH3cYPXIFH9f1/X6XDq6yNPVbXxBqV\nlEAkHkwXIQDAV3aVWwO2fLB+pJ71kaD4guZr7TrCaaCVZrVZPlIeTdtJJY79wH1TByPmycVsW/8A\nyN+pf9eFp/6MuKmXRm9H4ai8v1RrUUUVRgFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQ\nAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFAB\nRRRQAUUUUAFFFFAHN6z/AMjv4Y/3bv8A9AWukrm9Z/5Hfwx/u3f/AKAtdJWcN5ev6I68T/Do/wCH\n/wBukFZGuII5dM1BlzHZXXmSsBkqjRvGT9AXBPsM9q16KuSurGFKfs5KX9apr9SBL20kQOl1CykZ\nBEgINL9qt/8An4i/77FVn0PSJHLvpVizE5JNuhJ/Sm/2Bo3/AECLD/wGT/Cl73l+Jf7j+9+Bb+1W\n/wDz8Rf99ij7Vb/8/EX/AH2Kqf2Bo3/QIsP/AAGT/Cj+wNG/6BFh/wCAyf4Ue95fiH7jvL8P8y39\nqt/+fiL/AL7FH2q3/wCfiL/vsVU/sDRv+gRYf+Ayf4Uf2Bo3/QIsP/AZP8KPe8vxD9x3l+H+Zb+1\nW/8Az8Rf99ij7Vb/APPxF/32Kqf2Bo3/AECLD/wGT/Cj+wNG/wCgRYf+Ayf4Ue95fiH7jvL8P8y3\n9qt/+fiL/vsUfarf/n4i/wC+xVT+wNG/6BFh/wCAyf4Uf2Bo3/QIsP8AwGT/AAo97y/EP3HeX4f5\nlv7Vb/8APxF/32KPtVv/AM/EX/fYqp/YGjf9Aiw/8Bk/wo/sDRv+gRYf+Ayf4Ue95fiH7jvL8P8A\nMtm7tgMm4iA/3xWbprrea5qGoQMHtmhhtkkHIcoZGYg9x+8Az6g+lWBoOjg5Gk2AP/Xsn+FX1UKo\nVQAoGAAOAKVm3qHPTjFqF7vTW3l29BaKKKswCiiigAooooAKKKKACiiigAooooAKKKKACiiigAoo\nooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACisT\nU7zxFBeFNN0i1ubfaCJJbryznuMbTVP+0vGP/QvWH/gf/wDY1m6iTtZ/cdUMHOUVJSjr3kkdPUU8\n4gCkozlm2gLj0J7n2rJ0y88RT3gTUtItba32kmSK68w57DG0VpXf3rf/AK6f+ytTc/dckZVKTpy5\nW0/Rp/kI99sRna2mCqMk/L/8VVqsFLwXT6miXMMscK7AseMqdpznk9+O3St6ppTclqRJWCiiitST\n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\noooAKKKKAP/Z\n", "text/plain": [ "" ] }, "execution_count": 37, "metadata": {}, "output_type": "execute_result" } ], "source": [ "image3" ] }, { "cell_type": "code", "execution_count": 19, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from IPython.display import Image, HTML, display\n", "from glob import glob\n", "imagesList=''.join( [\"\" % str(s) \n", " for s in glob('*.jpg') ])\n", "display(HTML(imagesList))\n", "\n" ] }, { "cell_type": "code", "execution_count": 67, "metadata": { "collapsed": true }, "outputs": [], "source": [ "os.chdir('C:\\\\Users\\\\user\\\\Desktop\\\\7th Sem Project\\\\Jupyter')" ] }, { "cell_type": "code", "execution_count": 68, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "['.ipynb_checkpoints',\n", " 'BanSectors.jpg',\n", " 'BanTimeLine.jpg',\n", " 'Components',\n", " 'facets_with_custom_projection.png',\n", " 'hist_new_stacked.png',\n", " 'IndiaSelected.jpg',\n", " 'Main.ipynb',\n", " 'simple_violinplots.png',\n", " 'StatesSelected.jpg']" ] }, "execution_count": 68, "metadata": {}, "output_type": "execute_result" } ], "source": [ "os.listdir()" ] }, { "cell_type": "code", "execution_count": 70, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "['facets_with_custom_projection.png',\n", " 'hist_new_stacked.png',\n", " 'simple_violinplots.png']" ] }, "execution_count": 70, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from glob import glob \n", "glob('*.png')" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.4.3" } }, "nbformat": 4, "nbformat_minor": 0 }