{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "### Note : I [blogged](http://talhaoz.com/?p=634) about this study.\n", "\n", "See [here](http://talhaoz.com/news/) for other iPython notebooks on this project.\n", "\n", "Project (datasets and the source code) is available on [GitHub](https://github.com/oztalha/News-Commentary-Tweets-of-Elites)" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "C:\\Users\\Talha\\Documents\\WinPython3\\projects\\News-Commentary-Tweets-of-Elites\n" ] } ], "source": [ "%cd .." ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": false }, "outputs": [], "source": [ "import pandas as pd\n", "import plotly.plotly as py\n", "from plotly.graph_objs import *\n", "from mykeys import tw\n", "import networkx as nx\n", "import itertools" ] }, { "cell_type": "code", "execution_count": 51, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "" ] }, "execution_count": 51, "metadata": {}, "output_type": "execute_result" } ], "source": [ "get_party_representation()" ] }, { "cell_type": "code", "execution_count": 66, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "" ] }, "execution_count": 66, "metadata": {}, "output_type": "execute_result" } ], "source": [ "get_party_activity()" ] }, { "cell_type": "code", "execution_count": 67, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "" ] }, "execution_count": 67, "metadata": {}, "output_type": "execute_result" } ], "source": [ "plot_MP_activity()" ] }, { "cell_type": "code", "execution_count": 68, "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", "
twhandlenamefcntprofs
9abdulkadiraksu1Abdülkadir Aksu68AKP, MP
11aberatconkarAhmet Berat Çonkar2MP, AKP
12acaliskan40Abdullah Çalışkan22MP, AKP
14ackilic76Akif Çağatay Kılıç2AKP, MP
21adnankeskinCHPAdnan Keskin10MP, CHP
22afifdAfif Demirkıran10MP, AKP
24AhmetBOgutkenAhmet Baha Öğütken10MP, AKP
35Ahmet_DavutogluAhmet Davutoğlu71MP, AKP
45Akif_HamzacebiAkif Hamzaçebi0MP, CHP
64aliozgunduzAli Özgündüz14Legist, CHP, MP
66alirizaozturk33Ali Rıza Öztürk10MP, CHP, Legist
67AliSahin501Ali Şahin11MP, AKP
101Atalay_BesirBeşir Atalay1MP, AKP
103atillakartAtilla Kart13CHP, MP
113avhamzadagHamza Dağ2AKP, MP
116av_idrissahinİdris Şahin4MP, AKP
120aydinsengul35Aydın Şengul1MP, AKP
123aykanerdemirAykan Erdemir8MP, CHP
125aykuterdogduAykut Erdoğdu23MP, CHP
127Ayla_AkatAyla Akat18MP, HDP
129AylinNazliakaAylin Nazlıaka33MP, CHP
170BelmaSatirMihrimah Belma Satır3MP, AKP
183BilalMacitBilal Macit4MP, AKP
185birgulagulerBirgül Ayman Güler14MP, CHP
190bkusogluBülent Kuşoğlu6MP, CHP
197bulenttezcanchpBulent Tezcan8MP, CHP
198bulent_arincBülent Arınç43MP, AKP
206BurhanKuzuBurhan Kuzu18MP, AKP
213bybekirbozdagBekir Bozdağ33MP, AKP
222CandanYceerCandan Yüceer20MP, CHP
...............
1063sinanaaygunSinan Aygün3MP, CHP
1069SIRIN_UNALŞirin Ünal0MP, AKP
1071sirsureyyaSırrı Süreyya Önder11MP, HDP
1075skulkulogluM.Şevki Kulkuloğlu6MP, CHP
1086suatkilicSuat Kılıç16MP, AKP
1089suheylbatumSüheyl Batum5MP, CHP
1103S_CelebiSüleyman Çelebi7MP, CHP
1135ToprakBinnazBinnaz Toprak1MP, CHP
1150TugrulTurkesTuğrul Türkeş0MP, MHP
1151TulaySelamogluTülay Selamoğlu3MP, AKP
1158tuncelsebahatSebahat Tuncel7HDP, MP
1162turgutdibekTurgut Dibek4MP, CHP
1165T_MenderesTurelMenderes Türel5MP, AKP
1185UmutOranCHPUmut Oran9CHP, MP
1194Vahit_KilerVahit KİLER1MP, AKP
1200vekilinceMuharrem İnce40MP, CHP
1201veliagbabaVeli Ağbaba8MP, CHP
1203VeyselErogluVeysel Eroğlu11MP, AKP
1208volkan_bozkirVolkan Bozkır3MP, AKP
1211AysenurislamAyşenur İslam0AKP, MP
1235yeniceriozcanÖzcan Yeniçeri3MP, MHP
1251yramazanogluYıldırım Ramazanoğlu4MP, AKP
1253yukselozdenYüksel Özden4MP, AKP
1256yusufhalacogluYusuf Halaçoğlu13MP, MHP
1262Y_AkdoganYalçın Akdoğan11MP, AKP
1271zelkifkazdalZelkif Kazdal3MP, AKP
1274ZeybekciNihatNihat Zeybekçi1MP, AKP
1282zkarahanusluZeynep Karahan Uslu6MP, AKP
1286_cevdetyilmazCevdet Yılmaz5MP, AKP
1288_fatihsahinFatih Şahin7MP, AKP
\n", "

167 rows × 4 columns

\n", "
" ], "text/plain": [ " twhandle name fcnt profs\n", "9 abdulkadiraksu1 Abdülkadir Aksu 68 AKP, MP\n", "11 aberatconkar Ahmet Berat Çonkar 2 MP, AKP\n", "12 acaliskan40 Abdullah Çalışkan 22 MP, AKP\n", "14 ackilic76 Akif Çağatay Kılıç 2 AKP, MP\n", "21 adnankeskinCHP Adnan Keskin 10 MP, CHP\n", "22 afifd Afif Demirkıran 10 MP, AKP\n", "24 AhmetBOgutken Ahmet Baha Öğütken 10 MP, AKP\n", "35 Ahmet_Davutoglu Ahmet Davutoğlu 71 MP, AKP\n", "45 Akif_Hamzacebi Akif Hamzaçebi 0 MP, CHP\n", "64 aliozgunduz Ali Özgündüz 14 Legist, CHP, MP\n", "66 alirizaozturk33 Ali Rıza Öztürk 10 MP, CHP, Legist\n", "67 AliSahin501 Ali Şahin 11 MP, AKP\n", "101 Atalay_Besir Beşir Atalay 1 MP, AKP\n", "103 atillakart Atilla Kart 13 CHP, MP\n", "113 avhamzadag Hamza Dağ 2 AKP, MP\n", "116 av_idrissahin İdris Şahin 4 MP, AKP\n", "120 aydinsengul35 Aydın Şengul 1 MP, AKP\n", "123 aykanerdemir Aykan Erdemir 8 MP, CHP\n", "125 aykuterdogdu Aykut Erdoğdu 23 MP, CHP\n", "127 Ayla_Akat Ayla Akat 18 MP, HDP\n", "129 AylinNazliaka Aylin Nazlıaka 33 MP, CHP\n", "170 BelmaSatir Mihrimah Belma Satır 3 MP, AKP\n", "183 BilalMacit Bilal Macit 4 MP, AKP\n", "185 birgulaguler Birgül Ayman Güler 14 MP, CHP\n", "190 bkusoglu Bülent Kuşoğlu 6 MP, CHP\n", "197 bulenttezcanchp Bulent Tezcan 8 MP, CHP\n", "198 bulent_arinc Bülent Arınç 43 MP, AKP\n", "206 BurhanKuzu Burhan Kuzu 18 MP, AKP\n", "213 bybekirbozdag Bekir Bozdağ 33 MP, AKP\n", "222 CandanYceer Candan Yüceer 20 MP, CHP\n", "... ... ... ... ...\n", "1063 sinanaaygun Sinan Aygün 3 MP, CHP\n", "1069 SIRIN_UNAL Şirin Ünal 0 MP, AKP\n", "1071 sirsureyya Sırrı Süreyya Önder 11 MP, HDP\n", "1075 skulkuloglu M.Şevki Kulkuloğlu 6 MP, CHP\n", "1086 suatkilic Suat Kılıç 16 MP, AKP\n", "1089 suheylbatum Süheyl Batum 5 MP, CHP\n", "1103 S_Celebi Süleyman Çelebi 7 MP, CHP\n", "1135 ToprakBinnaz Binnaz Toprak 1 MP, CHP\n", "1150 TugrulTurkes Tuğrul Türkeş 0 MP, MHP\n", "1151 TulaySelamoglu Tülay Selamoğlu 3 MP, AKP\n", "1158 tuncelsebahat Sebahat Tuncel 7 HDP, MP\n", "1162 turgutdibek Turgut Dibek 4 MP, CHP\n", "1165 T_MenderesTurel Menderes Türel 5 MP, AKP\n", "1185 UmutOranCHP Umut Oran 9 CHP, MP\n", "1194 Vahit_Kiler Vahit KİLER 1 MP, AKP\n", "1200 vekilince Muharrem İnce 40 MP, CHP\n", "1201 veliagbaba Veli Ağbaba 8 MP, CHP\n", "1203 VeyselEroglu Veysel Eroğlu 11 MP, AKP\n", "1208 volkan_bozkir Volkan Bozkır 3 MP, AKP\n", "1211 Aysenurislam Ayşenur İslam 0 AKP, MP\n", "1235 yeniceriozcan Özcan Yeniçeri 3 MP, MHP\n", "1251 yramazanoglu Yıldırım Ramazanoğlu 4 MP, AKP\n", "1253 yukselozden Yüksel Özden 4 MP, AKP\n", "1256 yusufhalacoglu Yusuf Halaçoğlu 13 MP, MHP\n", "1262 Y_Akdogan Yalçın Akdoğan 11 MP, AKP\n", "1271 zelkifkazdal Zelkif Kazdal 3 MP, AKP\n", "1274 ZeybekciNihat Nihat Zeybekçi 1 MP, AKP\n", "1282 zkarahanuslu Zeynep Karahan Uslu 6 MP, AKP\n", "1286 _cevdetyilmaz Cevdet Yılmaz 5 MP, AKP\n", "1288 _fatihsahin Fatih Şahin 7 MP, AKP\n", "\n", "[167 rows x 4 columns]" ] }, "execution_count": 68, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df = pd.read_csv('data/TR-tweeps-En.csv',encoding='utf-8')\n", "x = ['AKP', 'CHP', 'MHP', 'HDP','Independent']\n", "df = df[df.profs.str.contains('|'.join(x))]\n", "df" ] }, { "cell_type": "code", "execution_count": 69, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# group by titles\n", "tweets = pd.read_csv('data/TR-tweets.csv',encoding='utf-8',parse_dates=['dt'])\n", "tweets.twhandle = tweets.twhandle.str[1:]\n", "title = tweets.groupby(by=['title','dt'])['twhandle']" ] }, { "cell_type": "code", "execution_count": 70, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# get monitored screen_names for each party\n", "df = pd.read_csv('data/TR-tweeps-En.csv',encoding='utf-8')\n", "groups = ['AKP', 'CHP', 'MHP', 'HDP','Independent']\n", "group = {}\n", "mps = set()\n", "for p in groups:\n", " group[p] = set(df[df.profs.str.contains(p)].twhandle.tolist())\n", " mps.update(group[p])" ] }, { "cell_type": "code", "execution_count": 73, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# get number of MPs of each party for each title\n", "news = {}\n", "def get_twbyp(g,partililer):\n", " tweeps = g.values.tolist()\n", " return len([t for t in tweeps if t in partililer])\n", " \n", "for p in groups:\n", " news[p] = title.apply(lambda g: get_twbyp(g,group[p]))\n", " #news[p] = title.apply(lambda g: len(group[p] & set(g.values))) # number of MPs for the title" ] }, { "cell_type": "code", "execution_count": 74, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "6678 comments made on 2747 news by AKP\n", "14228 comments made on 4925 news by CHP\n", "3039 comments made on 2133 news by MHP\n", "1140 comments made on 753 news by HDP\n", "1915 comments made on 1471 news by Independent\n", "27000 comments made on 6839 news by TBMM (any MP)\n" ] } ], "source": [ "#sum all commentated titles up, \n", "polnews = pd.Series(index=news['Independent'].index,data=0)\n", "for p in groups:\n", " print (news[p].sum(),'comments made on',news[p][news[p]>0].size,'news by',p)\n", " polnews = polnews.add(news[p])\n", "print (polnews.sum(),'comments made on',polnews[polnews>0].size,'news by TBMM (any MP)')" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# for each party calculate diff = party - others\n", "diff = {}\n", "for p in groups:\n", " diff[p] = 2*news[p] - polnews" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "title dt \n", "İşte demokratikleşme paketi 2013-09-30 55\n", "Berkin Elvan yaşam mücadelesini kaybetti 2014-03-11 50\n", "Öğretmenler günü kutlu olsun 2013-11-24 50\n", "Mutlu yıllar Türkiye 2013-12-31 47\n", "Cumhuriyet’in 90′ıncı yılı kutlu olsun 2013-10-29 44\n", "Büyük Zafer’in 91′inci yılı 2013-08-30 41\n", "Ramazan ayı başladı 2013-07-09 40\n", "Kemal Kılıçdaroğlu’na Meclis’te yumruklu saldırı 2014-04-08 39\n", "Bugün Dünya Engelliler Günü 2013-12-03 37\n", "Nice 19 Mayıslara… 2013-05-19 36\n", "Darbenin adı: 12 Eylül 1980 2013-09-12 36\n", "Bugün Dünya Engelliler Günü 2014-12-03 36\n", "24 Kasım Öğretmenler Günü kutlu olsun 2014-11-24 36\n", "Mutlu yıllar Türkiye 2014-12-31 35\n", "Çanakkale Zaferi’nin 99′uncu yıl dönümü 2014-03-18 35\n", "Büyük Zafer’in 92′nci yılı 2014-08-30 35\n", "Genç’ten Emine Erdoğan protestosu 2013-11-26 34\n", "Başörtülü milletvekilleri Meclis’te 2013-10-31 33\n", "Türkiye ateş çemberinde – nediyor.com 2013-05-11 33\n", "Cumhuriyet’in 91′inci yılı kutlu olsun 2014-10-29 33\n", "Fezlekeler okutulmadı; muhalefet ayaklandı 2014-03-19 32\n", "MHP seçim bürosuna silahlı saldırı: 1 ölü 2014-01-26 32\n", "Sivas’ta yaşamını yitirenler anıldı 2013-07-02 32\n", "Nejat Uygur yaşamını yitirdi 2013-11-18 32\n", "Paketten beklentiler farklı 2013-09-30 32\n", "Bugün Mevlid Kandili 2014-01-12 32\n", "Hacıbektaş saldırganı serbest 2013-08-18 31\n", "Hatay’da bir eylemci daha yaşamını yitirdi 2013-09-10 30\n", "Miraç Kandili kutlandı 2014-05-25 30\n", "İşte kabinenin 10 yeni üyesi 2013-12-25 30\n", "Yüz binler Berkin’i son yolculuğuna uğurladı 2014-03-12 30\n", "Marmaray açıldı; ilk sefer yapıldı 2013-10-29 30\n", "Mustafa Balbay tahliye edildi 2013-12-10 29\n", "AK Parti’de Davutoğlu dönemi başladı 2014-08-27 29\n", "12 Eylül’ün üzerinden 34 yıl geçti 2014-09-12 29\n", "Başbakan canlı yayında ağladı 2013-08-22 28\n", "19 Eylül Gaziler Günü kutlanıyor 2013-09-19 27\n", "İstanbul’da 1 Mayıs: “142 gözaltı 90 yaralı” 2014-05-01 27\n", "Ağaoğlu ve bazı bakan çocukları gözaltında 2013-12-17 27\n", "Helikopter kazasının şehitleri uğurlandı 2013-12-18 27\n", "Başbakan Menderes anılıyor 2013-09-17 27\n", "Çanakkale Zaferi’nin 98′inci yıldönümü – nediyor.com 2013-03-18 27\n", "Başbakan’dan Kazlıçeşme mesajları 2013-06-16 27\n", "21 yıldır aydınlanmayan suikast 2014-01-24 27\n", "“Büyük Rüşvet” Türkiye’yi sarstı 2013-12-18 27\n", "17 Aralık’ın üzerinden 1 yıl geçti 2014-12-17 27\n", "İnfial yaratan dövülme görüntüleri 2013-08-22 27\n", "“Destek verenler de aynı familyadan” 2013-06-09 26\n", "CHP 90 yaşında 2013-09-09 26\n", "Twitter yanıtı: “Gayri milli suçlaması sığ eleştiri” 2014-04-25 26\n", "Bugün çalışan gazetecilerin günü 2014-01-10 26\n", "Kömür ocağında patlama: 300 madenci mahsur 2014-05-13 26\n", "Erdoğan: “Anladığınız dilden yanıt veririz” 2013-06-09 25\n", "Gezi’ye son kurban Eskişehir’den 2013-07-10 25\n", "23 Nisan kutlu olsun 2014-04-23 25\n", "Resmileşen Ergenekon’a ceza yağmuru 2013-08-05 25\n", "Deniz Gezmiş ve arkadaşları anıldı – nediyor.com 2013-05-06 25\n", "AK Parti: “Başbakan Erdoğan cumhurbaşkanı adayımız” 2014-07-01 25\n", "Taksim’de gergin gece 2013-06-11 25\n", "Çarşı hakim önünde: “Gücümüz olsa Kartal’ı şampiyon yapardık” 2014-12-16 25\n", "dtype: int64" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# the most commentated events by all MPS\n", "polnews.order(ascending=False).head(60)" ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "title dt \n", "AK Parti’de Davutoğlu dönemi başladı 2014-08-27 21\n", "Başbakan Menderes anılıyor 2013-09-17 19\n", "Genç’ten Emine Erdoğan protestosu 2013-11-26 18\n", "Marmaray açıldı; ilk sefer yapıldı 2013-10-29 18\n", "AK Parti 13′üncü yılını kutluyor 2014-08-14 18\n", "AK Parti 11 yıldır iktidarda 2013-11-03 16\n", "AK Partililerden “DirenÇözüm” atağı 2013-06-29 15\n", "ODTÜ videosunun yankısı sürüyor 2013-09-05 14\n", "Başörtülü milletvekilleri Meclis’te 2013-10-31 13\n", "Adnan Menderes idam edilmesinin 53′üncü yılı 2014-09-17 12\n", "IMF ve dış borç tartışması dolu dizgin – nediyor.com 2013-05-14 12\n", "Çankaya Köşkü’nde devir teslim gerçekleşti 2014-08-28 11\n", "AK Partili Şahin eşine veda etti 2014-11-28 11\n", "Tartışmaların odağı Marmaray 2013-10-27 11\n", "Yemin töreninde gerginlik; CHP’liler kitapçık fırlattı 2014-08-28 11\n", "Erdoğan yemin etti; resmen 12′nci Cumhurbaşkanı 2014-08-28 11\n", "Erdoğan’dan Köşk’te 30 Ağustos resepsiyonu 2014-08-30 9\n", "Davutoğlu bin 245 delegenin imzasıyla aday 2014-08-27 9\n", "Başbakan’dan CHP’ye ağır Mısır eleştirisi 2013-09-03 9\n", "27 Mayıs Darbesi’nin 53′üncü yılı 2013-05-27 9\n", "Berat Kandili kutlandı 2013-06-23 8\n", "27 Mayıs’ın 54′üncü yılı 2014-05-27 8\n", "Ankara-İstanbul YHT hattı bugün açıldı 2014-07-25 8\n", "Maltepe mitingi için uçuş yasağı 2014-08-03 8\n", "Başbakan’ın doğum günü kutlanıyor 2014-02-26 8\n", "Başbakan “Kürdistan bölgesini” selamladı 2013-11-16 7\n", "Halkalı’da aşura matemi 2013-11-13 7\n", "Srebrenitsa’da 18 yıldır dinmeyen acı 2013-07-11 7\n", "“Torba Kanun Tasarısı” Meclis’ten geçti 2014-09-10 7\n", "Kılıçdaroğlu’ndan Başbakan’a sert sözler 2013-10-29 7\n", " ..\n", "Berkin Elvan doğum gününde anılıyor 2015-01-05 -16\n", "Meclis’te fezlekeler için genel görüşmeye ret 2014-03-19 -17\n", "İstanbul’da 1 Mayıs: “142 gözaltı 90 yaralı” 2014-05-01 -17\n", "Soruşturma Komisyonu: “Yüce Divan’a gerek yok” 2015-01-05 -17\n", "Isparta’da kaza: 17 mevsimlik işçi öldü 2014-10-31 -17\n", "Twitter’a erişim engellendi 2014-03-21 -17\n", "“Büyük Rüşvet” Türkiye’yi sarstı 2013-12-18 -17\n", "17 Aralık’ın üzerinden 1 yıl geçti 2014-12-17 -17\n", "Olaylar Taksim çevresine sıçradı 2013-05-31 -17\n", "BDP’li vekillerin tahliye talebi reddedildi 2013-12-16 -17\n", "Kemal Kılıçdaroğlu’na Meclis’te yumruklu saldırı 2014-04-08 -17\n", "Dört eski bakan için tek komisyon kurulacak 2014-05-06 -17\n", "Eski bakan çocukları ve Zarrab tahliye edildi 2014-02-28 -18\n", "Emniyette deprem; 5 şube müdürü değişti 2013-12-18 -18\n", "16 yaşındaki liseli Erdoğan’a hakaretten tutuklandı 2014-12-24 -18\n", "Gezi’ye son kurban Eskişehir’den 2013-07-10 -19\n", "CHP 90 yaşında 2013-09-09 -20\n", "İstifa eden Bayraktar: “Başbakan istifa etmeli” 2013-12-25 -20\n", "Deniz Gezmiş ve arkadaşları anıldı 2014-05-06 -20\n", "Ağaoğlu ve bazı bakan çocukları gözaltında 2013-12-17 -21\n", "Madımak Katliamı’nın 21′nci yıl dönümü 2014-07-02 -21\n", "21 yıldır aydınlanmayan suikast 2014-01-24 -21\n", "Hatay’da bir eylemci daha yaşamını yitirdi 2013-09-10 -22\n", "Sivas’ta yaşamını yitirenler anıldı 2013-07-02 -24\n", "Twitter yasağına tepkiler çığ gibi 2014-03-21 -24\n", "Deniz Gezmiş ve arkadaşları anıldı – nediyor.com 2013-05-06 -25\n", "Çarşı hakim önünde: “Gücümüz olsa Kartal’ı şampiyon yapardık” 2014-12-16 -25\n", "Fezlekeler okutulmadı; muhalefet ayaklandı 2014-03-19 -28\n", "Mustafa Balbay tahliye edildi 2013-12-10 -29\n", "Berkin Elvan yaşam mücadelesini kaybetti 2014-03-11 -44\n", "dtype: int64" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Number of commentations on events by AKP MPs - Other MPs\n", "diff['AKP'].order(ascending=False)" ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "title dt \n", "Mustafa Balbay tahliye edildi 2013-12-10 27\n", "21 yıldır aydınlanmayan suikast 2014-01-24 19\n", "Deniz Gezmiş ve arkadaşları anıldı – nediyor.com 2013-05-06 19\n", "CHP 90 yaşında 2013-09-09 18\n", "Berkin Elvan yaşam mücadelesini kaybetti 2014-03-11 16\n", "Ecevit 8′inci ölüm yıl dönümünde anılıyor 2014-11-05 16\n", "Twitter yasağına tepkiler çığ gibi 2014-03-21 16\n", "Madımak Katliamı’nın 21′nci yıl dönümü 2014-07-02 15\n", "Karanlıkta 20′nci yıl – nediyor.com 2013-01-24 15\n", "CHP 91 yaşında 2014-09-09 15\n", "Sarısülük’ü öldürmekle suçlanan polis serbest 2013-06-24 14\n", "Sivas’ta yaşamını yitirenler anıldı 2013-07-02 14\n", "Ali İsmail ölümünün 1′inci yıl dönümünde anıldı 2014-07-10 14\n", "Eskişehir Belediyesi’nde 5 tutuklama – nediyor.com 2013-01-28 14\n", "Berkin Elvan doğum gününde anılıyor 2015-01-05 14\n", "Fezlekeler okutulmadı; muhalefet ayaklandı 2014-03-19 14\n", "16 yaşındaki liseli Erdoğan’a hakaretten tutuklandı 2014-12-24 14\n", "Dört eski bakan için tek komisyon kurulacak 2014-05-06 13\n", "Soruşturma Komisyonu: “Yüce Divan’a gerek yok” 2015-01-05 13\n", "İsmet İnönü anıldı 2013-12-25 13\n", "Deniz Gezmiş’in annesi yaşamını yitirdi 2014-11-20 13\n", "TMMOB’ye ağır Gezi faturası 2013-07-10 13\n", "Korkmaz davası 9 Ekim’e ertelendi 2014-07-14 12\n", "Yalova’da CHP önde; AK Parti itiraz edecek 2014-06-01 12\n", "Ecevit 7′nci ölüm yıldönümünde anılıyor 2013-11-05 12\n", "Emniyette deprem; 5 şube müdürü değişti 2013-12-18 12\n", "Erdal İnönü anılıyor 2014-10-31 12\n", "İstanbul’da 1 Mayıs: “142 gözaltı 90 yaralı” 2014-05-01 11\n", "17 Aralık soruşturmasına takipsizlik kararı verildi 2014-10-17 11\n", "Basın özgürlüğünde Türkiye yine geriledi – nediyor.com 2013-05-03 11\n", " ..\n", "Öğretmenler günü kutlu olsun 2013-11-24 -12\n", "Paketten beklentiler farklı 2013-09-30 -12\n", "Mutlu yıllar Türkiye 2013-12-31 -13\n", "27 Mayıs Darbesi’nin 53′üncü yılı 2013-05-27 -13\n", "Tartışmaların odağı Marmaray 2013-10-27 -13\n", "Kobani için eylem çağrısı yapan HDP’ye tepki 2014-10-07 -13\n", "Çankaya Köşkü’nde devir teslim gerçekleşti 2014-08-28 -13\n", "Erdoğan yemin etti; resmen 12′nci Cumhurbaşkanı 2014-08-28 -13\n", "27 Mayıs’ın 54′üncü yılı 2014-05-27 -14\n", "Regaip Kandili kutlandı 2014-05-01 -14\n", "Bugün Mevlid Kandili 2014-01-12 -14\n", "MHP Genel Merkezi’ne arabalı saldırı 2013-08-24 -14\n", "Adnan Menderes idam edilmesinin 53′üncü yılı 2014-09-17 -14\n", "Suriye’den ürküten işkence fotoğrafları 2014-01-20 -14\n", "AK Partililerden “DirenÇözüm” atağı 2013-06-29 -15\n", "Başbakan “Kürdistan bölgesini” selamladı 2013-11-16 -15\n", "IMF ve dış borç tartışması dolu dizgin – nediyor.com 2013-05-14 -16\n", "ODTÜ videosunun yankısı sürüyor 2013-09-05 -16\n", "Srebrenitsa’da 18 yıldır dinmeyen acı 2013-07-11 -17\n", "Ramazan ayı başladı 2013-07-09 -18\n", "AK Parti 13′üncü yılını kutluyor 2014-08-14 -18\n", "AK Partili Şahin eşine veda etti 2014-11-28 -19\n", "Başörtülü milletvekilleri Meclis’te 2013-10-31 -19\n", "İşte demokratikleşme paketi 2013-09-30 -19\n", "Miraç Kandili kutlandı 2014-05-25 -20\n", "AK Parti 11 yıldır iktidarda 2013-11-03 -20\n", "AK Parti’de Davutoğlu dönemi başladı 2014-08-27 -23\n", "Marmaray açıldı; ilk sefer yapıldı 2013-10-29 -24\n", "Başbakan Menderes anılıyor 2013-09-17 -25\n", "Genç’ten Emine Erdoğan protestosu 2013-11-26 -26\n", "dtype: int64" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Number of commentations on events by CHP MPs - Other MPs\n", "diff['CHP'].order(ascending=False)" ] }, { "cell_type": "code", "execution_count": 14, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "title dt \n", "Bahçeli’yi çılgına çeviren görüntü 2013-06-15 5\n", "Bahçeli’den Başbakan’a ağır sözler 2013-06-22 5\n", "MHP’den Ankara mitingi 2013-11-09 5\n", "TRT spikerinden “yavru muhalefet” gafı 2014-01-25 5\n", "Bahçeli’den açık tehdit – nediyor.com 2013-03-23 4\n", "Eski TBMM Başkanvekili yaşamını yitirdi 2014-06-21 4\n", "Bahçeli Elazığ’da sert konuştu 2013-09-15 4\n", "Bahçeli’den Başbakan için ağır ifadeler 2013-10-26 4\n", "Başbakan’dan Vali Coş’a destek: “Yedirmeyiz” 2013-11-12 4\n", "“Türk ırkı yok” tartışması dinmiyor 2013-12-02 4\n", "Alparslan Türkeş ölümünün 17′inci yılında anıldı 2014-04-04 3\n", "Tahliye edilen Alan : “Ne kadar namussuz varsa…” 2014-06-20 3\n", "Bahçeli’den AK Parti’ye ağır sözler 2014-02-07 3\n", "Şırnak Valisi: “Başbakan ve Öcalan’ı takdir ediyorum” 2014-05-30 3\n", "MHP Türkmenler için yardım kampanyası başlattı 2014-06-21 3\n", "Bahçeli Başbakan’ın “61″ hesabına takıldı 2013-11-26 2\n", "Asansör kazasıyla ilgili gözaltına alınan 9 kişi serbest 2014-09-07 2\n", "AK Saray’ın ilk yabancı konuğu Papa olacak 2014-11-07 2\n", "Yurt genelinde ayakkabı kutulu eylemler 2013-12-19 2\n", "“Bakan Ala’nın kardeşi MEB’e atandı” iddiası 2014-01-11 2\n", "MHP’li Engin Alan’ın milletvekilliği düşecek 2013-10-09 2\n", "Mehmet Ali Şahin’den Bahçeli’ye sert eleştiri – nediyor.com 2013-04-21 2\n", "TOKİ: “Kümbetin yanına yurdu biz yapmadık” 2014-08-19 2\n", "Twitter’a erişebilmek için farklı yöntemler 2014-03-21 2\n", "İstanbul Şişli’de “Bayrağa saygı” eylemi 2014-06-09 2\n", "Erdoğan’a sahte suikast yapılacak iddiası 2014-01-30 2\n", "MHP kurmaylarından selfie pozu 2014-04-24 2\n", "MHP Ali İsmail Korkmaz’a sahip çıktı 2014-02-05 2\n", "Zaman’dan hükümete yönelik ağır manşet 2013-11-15 2\n", "Devlet Bahçeli fezleke kıskacında – nediyor.com 2013-04-10 2\n", " ..\n", "Cumhuriyet’in 91′inci yılı kutlu olsun 2014-10-29 -27\n", "21 yıldır aydınlanmayan suikast 2014-01-24 -27\n", "12 Eylül’ün üzerinden 34 yıl geçti 2014-09-12 -27\n", "Çanakkale Zaferi’nin 99′uncu yıl dönümü 2014-03-18 -27\n", "Mutlu yıllar Türkiye 2014-12-31 -27\n", "Türkiye ateş çemberinde – nediyor.com 2013-05-11 -27\n", "AK Parti’de Davutoğlu dönemi başladı 2014-08-27 -27\n", "Darbenin adı: 12 Eylül 1980 2013-09-12 -28\n", "Hatay’da bir eylemci daha yaşamını yitirdi 2013-09-10 -28\n", "Marmaray açıldı; ilk sefer yapıldı 2013-10-29 -28\n", "Nice 19 Mayıslara… 2013-05-19 -28\n", "Paketten beklentiler farklı 2013-09-30 -28\n", "Hacıbektaş saldırganı serbest 2013-08-18 -29\n", "Mustafa Balbay tahliye edildi 2013-12-10 -29\n", "24 Kasım Öğretmenler Günü kutlu olsun 2014-11-24 -30\n", "Nejat Uygur yaşamını yitirdi 2013-11-18 -30\n", "Sivas’ta yaşamını yitirenler anıldı 2013-07-02 -30\n", "Ramazan ayı başladı 2013-07-09 -30\n", "Başörtülü milletvekilleri Meclis’te 2013-10-31 -31\n", "Büyük Zafer’in 92′nci yılı 2014-08-30 -31\n", "Genç’ten Emine Erdoğan protestosu 2013-11-26 -32\n", "Bugün Dünya Engelliler Günü 2014-12-03 -34\n", "Büyük Zafer’in 91′inci yılı 2013-08-30 -35\n", "Kemal Kılıçdaroğlu’na Meclis’te yumruklu saldırı 2014-04-08 -35\n", "Bugün Dünya Engelliler Günü 2013-12-03 -37\n", "Mutlu yıllar Türkiye 2013-12-31 -39\n", "Cumhuriyet’in 90′ıncı yılı kutlu olsun 2013-10-29 -40\n", "Berkin Elvan yaşam mücadelesini kaybetti 2014-03-11 -42\n", "Öğretmenler günü kutlu olsun 2013-11-24 -44\n", "İşte demokratikleşme paketi 2013-09-30 -45\n", "dtype: int64" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Number of commentations on events by MHP MPs - Other MPs\n", "diff['MHP'].order(ascending=False)" ] }, { "cell_type": "code", "execution_count": 15, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "title dt \n", "Mardin ve Hakkari’de duvar gerginliği 2013-11-07 5\n", "“Demokrasi ve Barış Konferansı” sona erdi 2013-05-25 5\n", "“Hayata Dönüş” utancının 13′üncü yılı 2013-12-19 5\n", "Paris’teki 3′lü cinayetin üzerinden 2 yıl geçti 2015-01-09 4\n", "3 PKK’lının cenazesi Diyarbakır’da – nediyor.com 2013-01-16 4\n", "BDP yerel seçim stratejisini belirledi 2013-09-09 4\n", "Van Belediye Başkanı serbest – nediyor.com 2013-03-29 3\n", "HDP kongresinde Kürkçü kalp krizi geçirdi 2013-10-27 3\n", "Öcalan’ın son fotoğrafı Twitter’da 2013-12-20 3\n", "Ağrı’da oylar yeniden sayılıyor 2014-04-04 3\n", "Mehmet Öcalan serbest bırakıldı 2013-08-04 3\n", "Uludere raporu kabul edildi – nediyor.com 2013-03-27 3\n", "HDP eş genel başkanları seçildi 2014-06-22 3\n", "Paris cinayetlerinin yıl dönümünde gerginlik 2014-01-09 3\n", "“Şanlıurfa’da sınırı geçen bir kadın öldürüldü” iddiası 2014-11-06 3\n", "Demirtaş’tan TRT ekranında TRT’ye gönderme 2014-08-03 2\n", "Öcalan’dan yeni mesaj 2013-10-14 2\n", "BDP-HDP heyetinden İmralı açıklaması 2014-03-09 2\n", "Demirtaş’ın adaylık dilekçesi TBMM’ye sunuldu 2014-07-01 2\n", "13 faili meçhulden yargılanan Çitil’e beraat 2014-05-21 2\n", "HDP Köşk adayını açıkladı: Selahattin Demirtaş 2014-06-30 2\n", "Cizre’de 14 yaşındaki çocuk yaşamını yitirdi 2015-01-06 2\n", "Askerden itiraf: “Köy yakma taburuyduk” 2013-11-10 2\n", "BDP Eş Başkanı Demirtaş hastaneye kaldırıldı – nediyor.com 2013-03-11 2\n", "BDP’li iki vekil tahliye edildi 2014-01-03 2\n", "Gözaltına alınan HDP’liler serbest bırakıldı 2015-01-05 2\n", "BDP’li vekiller HDP’ye katılma kararı aldı 2014-04-18 2\n", "Ankara’da 2015 Bütçesi’ne karşı eylem 2014-12-13 2\n", "IŞİD Suriye’de Kürtlerin yaşadığı bölgelere saldırıyor 2014-07-10 2\n", "“PKK terörizmi” ifadesi rapordan çıkarıldı – nediyor.com 2013-04-23 2\n", " ..\n", "Sivas’ta yaşamını yitirenler anıldı 2013-07-02 -28\n", "Mutlu yıllar Türkiye 2014-12-31 -29\n", "AK Parti’de Davutoğlu dönemi başladı 2014-08-27 -29\n", "Mustafa Balbay tahliye edildi 2013-12-10 -29\n", "Hacıbektaş saldırganı serbest 2013-08-18 -29\n", "Kemal Kılıçdaroğlu’na Meclis’te yumruklu saldırı 2014-04-08 -29\n", "Darbenin adı: 12 Eylül 1980 2013-09-12 -30\n", "İşte kabinenin 10 yeni üyesi 2013-12-25 -30\n", "Marmaray açıldı; ilk sefer yapıldı 2013-10-29 -30\n", "Başörtülü milletvekilleri Meclis’te 2013-10-31 -31\n", "Türkiye ateş çemberinde – nediyor.com 2013-05-11 -31\n", "Genç’ten Emine Erdoğan protestosu 2013-11-26 -32\n", "Bugün Mevlid Kandili 2014-01-12 -32\n", "MHP seçim bürosuna silahlı saldırı: 1 ölü 2014-01-26 -32\n", "Fezlekeler okutulmadı; muhalefet ayaklandı 2014-03-19 -32\n", "Nejat Uygur yaşamını yitirdi 2013-11-18 -32\n", "Cumhuriyet’in 91′inci yılı kutlu olsun 2014-10-29 -33\n", "Çanakkale Zaferi’nin 99′uncu yıl dönümü 2014-03-18 -33\n", "Bugün Dünya Engelliler Günü 2013-12-03 -33\n", " 2014-12-03 -34\n", "Mutlu yıllar Türkiye 2013-12-31 -35\n", "Büyük Zafer’in 92′nci yılı 2014-08-30 -35\n", "Nice 19 Mayıslara… 2013-05-19 -36\n", "Berkin Elvan yaşam mücadelesini kaybetti 2014-03-11 -36\n", "24 Kasım Öğretmenler Günü kutlu olsun 2014-11-24 -36\n", "Ramazan ayı başladı 2013-07-09 -40\n", "Büyük Zafer’in 91′inci yılı 2013-08-30 -41\n", "Cumhuriyet’in 90′ıncı yılı kutlu olsun 2013-10-29 -42\n", "İşte demokratikleşme paketi 2013-09-30 -45\n", "Öğretmenler günü kutlu olsun 2013-11-24 -48\n", "dtype: int64" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Number of commentations on events by HDP MPs - Other MPs\n", "diff['HDP'].order(ascending=False)" ] }, { "cell_type": "code", "execution_count": 16, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "title dt \n", "“Kimse Yok Mu”nun yetkisi elinden alındı 2014-10-02 3\n", "Cizre’de polise roketli saldırı: 2 yaralı 2015-01-07 3\n", "Ankara’da 13 polise “usulsüz taltif” iddiasıyla gözaltı 2014-09-22 3\n", "İETT’den Cemaat hamlesi: Fatih Üni. hattı kaldırıldı 2014-09-23 3\n", "İBB’nin gündemi Fatih Koleji: Bayramda yıkım 2014-10-06 3\n", "“Kimse Yok Mu” derneği kapatılıyor mu? 2014-09-29 3\n", "Tuğluk: “PKK ta­ri­hi­nin en güç­lü dö­ne­mi­ni ya­şı­yor” 2014-08-26 2\n", "PKK İzmir’de yol kesti 2014-05-30 2\n", "IŞID’den petrol alındığı haberine Erdoğan’dan yalanlama 2014-09-16 2\n", "Başbakan’a “Apo” tepkisi 2014-07-28 2\n", "Saraç YÖK Başkanı’na hakaret mi etti? 2014-02-22 2\n", "PKK’lı Karasu: “AK Partili bakan adeta bize yalvardı” 2014-11-28 2\n", "Saray’ın maliyetini açıklayan Şimşek’e Erdoğan kızdı mı? 2014-11-07 2\n", "Genelkurmay: “PKK Ağrı’da mahkeme kurdu” 2014-09-20 2\n", "Şırnak’ta silahlı PKK’lılar yol kesti 2014-12-05 2\n", "“THY 200 İranlı pilot alacak” iddiası Meclis’e taşındı 2014-09-16 2\n", "Dışişleri’nden “dinleme” açıklaması 2014-09-01 2\n", "“AK Saray’da bir koltuk 25 bin euro” iddiası 2014-11-30 2\n", "PKK Muş’ta 10 çocuğu kaçırdı 2014-09-08 2\n", "Şükür’ün adı bir stadyumdan daha söküldü 2014-04-13 2\n", "Muş’ta PKK yanlıları yurt ve dershane yaktı 2014-08-24 2\n", "PKK Cizre’de iki mahallede “özerklik” mi ilan etti? 2014-10-26 2\n", "Dışişleri’nden açıklama: “Taraf’ın haberi asılsız” 2014-08-21 2\n", "Yeni Şafak Aksoy ile yollarını ayırdı 2014-01-11 2\n", "Ala: “Polis okullarının kapatılması şart” 2014-11-29 2\n", "17 polis yanlışlıkla gözaltına alındı 2014-11-08 2\n", "Karaman’dan iktidara: “Üzerimize bela yağacak” 2014-12-05 2\n", "Akşam’ın “Ötüken” manşeti istifa getirdi 2014-04-14 2\n", "Ankara’da “paralel yapı” iddiasıyla yeni operasyon 2014-10-21 2\n", "Savcı: “Gerekirse 500 bin kişiyi gözaltına alırız” 2014-08-05 2\n", " ..\n", "“Büyük Rüşvet” Türkiye’yi sarstı 2013-12-18 -27\n", "Hacıbektaş saldırganı serbest 2013-08-18 -27\n", "Mustafa Balbay tahliye edildi 2013-12-10 -27\n", "Başbakan’dan Kazlıçeşme mesajları 2013-06-16 -27\n", "Nejat Uygur yaşamını yitirdi 2013-11-18 -28\n", "Paketten beklentiler farklı 2013-09-30 -28\n", "İşte kabinenin 10 yeni üyesi 2013-12-25 -28\n", "Bugün Mevlid Kandili 2014-01-12 -28\n", "Sivas’ta yaşamını yitirenler anıldı 2013-07-02 -28\n", "Büyük Zafer’in 92′nci yılı 2014-08-30 -29\n", "AK Parti’de Davutoğlu dönemi başladı 2014-08-27 -29\n", "Genç’ten Emine Erdoğan protestosu 2013-11-26 -30\n", "Darbenin adı: 12 Eylül 1980 2013-09-12 -30\n", "Çanakkale Zaferi’nin 99′uncu yıl dönümü 2014-03-18 -31\n", "Türkiye ateş çemberinde – nediyor.com 2013-05-11 -31\n", "Başörtülü milletvekilleri Meclis’te 2013-10-31 -31\n", "Cumhuriyet’in 91′inci yılı kutlu olsun 2014-10-29 -31\n", "24 Kasım Öğretmenler Günü kutlu olsun 2014-11-24 -32\n", "Bugün Dünya Engelliler Günü 2014-12-03 -32\n", "Kemal Kılıçdaroğlu’na Meclis’te yumruklu saldırı 2014-04-08 -33\n", "Mutlu yıllar Türkiye 2014-12-31 -35\n", "Bugün Dünya Engelliler Günü 2013-12-03 -35\n", "Nice 19 Mayıslara… 2013-05-19 -36\n", "Ramazan ayı başladı 2013-07-09 -38\n", "Büyük Zafer’in 91′inci yılı 2013-08-30 -39\n", "Cumhuriyet’in 90′ıncı yılı kutlu olsun 2013-10-29 -40\n", "Mutlu yıllar Türkiye 2013-12-31 -41\n", "Berkin Elvan yaşam mücadelesini kaybetti 2014-03-11 -44\n", "Öğretmenler günü kutlu olsun 2013-11-24 -46\n", "İşte demokratikleşme paketi 2013-09-30 -49\n", "dtype: int64" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Number of commentations on events by Independent MPs - Other MPs\n", "diff['Independent'].order(ascending=False)" ] }, { "cell_type": "code", "execution_count": 17, "metadata": { "collapsed": false }, "outputs": [], "source": [ "G=nx.Graph()\n", "# add vertices\n", "for p in groups:\n", " for politician in group[p]:\n", " G.add_node(politician, group=p)" ] }, { "cell_type": "code", "execution_count": 18, "metadata": { "collapsed": false }, "outputs": [], "source": [ "def updateG(group,G,politicians):\n", " \"\"\" Create weighted edges \"\"\"\n", " edges = itertools.combinations(group.tolist(), 2)\n", " for v1,v2 in edges:\n", " if v1 not in politicians or v2 not in politicians:\n", " continue\n", " if G.has_edge(v1, v2):\n", " G[v1][v2]['weight'] += 1\n", " else:\n", " G.add_edge(v1, v2, weight=1)" ] }, { "cell_type": "code", "execution_count": 19, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "167 10236\n" ] } ], "source": [ "# add edges\n", "title.apply(updateG,G,mps)\n", "# print number of nodes and edges\n", "print (G.number_of_nodes(),G.number_of_edges())" ] }, { "cell_type": "code", "execution_count": 22, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# Exporting to be read by Gephi for better visualization\n", "nx.write_gml(G,\"data/nediyor_politics.gml\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "See the interactive output here: [TBMM Co-commentation Network Visualization](http://talhaoz.com/news/tbmm)" ] }, { "cell_type": "code", "execution_count": 28, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# calculate the likelihood of tie formation among parties\n", "# AKP-AKP, AKP-CHP, AKP-MHP, AKP-HDP, AKP-Bagimsiz\n", "G = nx.read_gml(\"data/nediyor_politics.gml\")" ] }, { "cell_type": "code", "execution_count": 69, "metadata": { "collapsed": false }, "outputs": [], "source": [ "def get_likelihood(g1,g2):\n", " \"\"\" returns tie formation likelihood of group1 and group2\"\"\"\n", " groups = ['AKP', 'CHP', 'MHP', 'HDP','Independent']\n", " likelihoods = []\n", " for politician in G:\n", " if G.node[politician]['group'] != g1:\n", " continue\n", " g2weight = .0 # sum of edge weights of nbors whose party is g2\n", " total = .0 # sum of all edge weights (all neighbors)\n", " for nbor in G[politician]:\n", " if G.node[nbor]['group'] == g2:\n", " g2weight += G[politician][nbor]['weight']\n", " total += G[politician][nbor]['weight']\n", " if total > 0:\n", " likelihoods.append(g2weight/total)\n", " l = sum(likelihoods)/len(likelihoods)\n", " print(g1+'-'+g2+' likelihood {:.2f}'.format(l))\n", " return l" ] }, { "cell_type": "code", "execution_count": 72, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "AKP-AKP likelihood 0.47\n", "AKP-CHP likelihood 0.36\n", "AKP-MHP likelihood 0.08\n", "AKP-HDP likelihood 0.03\n", "AKP-Independent likelihood 0.06\n", "CHP-CHP likelihood 0.59\n", "CHP-MHP likelihood 0.09\n", "CHP-HDP likelihood 0.05\n", "CHP-Independent likelihood 0.05\n", "MHP-MHP likelihood 0.13\n", "MHP-HDP likelihood 0.03\n", "MHP-Independent likelihood 0.09\n", "HDP-HDP likelihood 0.17\n", "HDP-Independent likelihood 0.05\n", "Independent-Independent likelihood 0.09\n" ] } ], "source": [ "groups = ['AKP', 'CHP', 'MHP', 'HDP','Independent']\n", "for g1 in groups:\n", " for g2 in groups:\n", " if groups.index(g1)>groups.index(g2):\n", " continue\n", " get_likelihood(g1,g2)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "#community detection\n", "import " ] }, { "cell_type": "code", "execution_count": 65, "metadata": { "collapsed": false }, "outputs": [], "source": [ "def get_party_representation():\n", " \"\"\" Plot Tweep Rate by (i) MP counts, (ii) Monitored MP counts \"\"\"\n", "\n", " #http://www.tbmm.gov.tr/develop/owa/milletvekillerimiz_sd.dagilim\n", " chairs = {'AKP':312, 'CHP':125, 'HDP':27, 'MHP':52, 'Independent':13}\n", " \n", " df = pd.read_csv('data/TR-tweeps-En.csv',encoding='utf-8')\n", " groups = ['AKP', 'CHP', 'MHP', 'HDP','Independent']\n", " group = {}\n", " mps = set()\n", " for p in groups:\n", " group[p] = set(df[df.profs.str.contains(p)].twhandle.tolist())\n", " mps.update(group[p])\n", " \n", " y1=[int((len(group[p])*1.0/chairs[p])*100+0.5) for p in groups]\n", " y2=[len(group[p]) for p in groups]\n", " trace1 = Bar(x=groups, y=y1, name='Percentage of MPs normalized by # of chairs')\n", " trace2 = Bar(x=groups, y=y2, name='Plain number of MPs monitored')\n", " data = Data([trace1, trace2])\n", " \n", " layout = Layout(autosize=True,\n", " title='Members of TBMM monitored',\n", " barmode='group',\n", " legend=Legend(xanchor='right',yanchor='top', y=1,traceorder='normal'),\n", " yaxis=YAxis(title='MPs monitored by nediyor.com'),\n", " #yaxis2=YAxis(title='Percentage of MPs',side='right',overlaying='y',anchor='x')\n", " )\n", " fig = Figure(data=data, layout=layout)\n", " return py.iplot(fig,filename='MPs monitored by nediyor.com')\n", "\n", "\n", "def get_party_activity():\n", " \"\"\" Plot Twitter Usage normalized by (i) MP counts, (ii) Monitored MP counts \"\"\"\n", "\n", " # plot commentating activity of parties\n", " df = pd.read_csv('data/TR-tweeps-En.csv',encoding='utf-8')\n", " x = ['AKP', 'CHP', 'MHP', 'HDP','Independent']\n", " df = df[df.profs.str.contains('|'.join(x))]\n", " mparty = dict(zip(df.twhandle, df.profs.map(lambda mp: [p for p in x if p in mp][0])))\n", "\n", " tweets = pd.read_csv('data/TR-tweets.csv',encoding='utf-8',parse_dates=['dt'])\n", " tweets['twhandle']=tweets['twhandle'].str[1:]\n", " tweets = tweets.rename(columns={'twtext':'twcnt'})\n", " tweeps = tweets.groupby(by='twhandle')['twcnt'].count().order(ascending=False)\n", " poltweeps = tweeps[tweeps.index.isin(df.twhandle)]\n", " \n", " vekil = pd.DataFrame.from_dict(mparty,orient='index')\n", " vekil.index.name = 'twhandle'\n", " vekil.columns = ['party']\n", " df = pd.DataFrame(poltweeps).join(vekil)\n", " \n", " #http://www.tbmm.gov.tr/develop/owa/milletvekillerimiz_sd.dagilim\n", " parties = {'AKP':312, 'CHP':125, 'HDP':27, 'MHP':52, 'Independent':13}\n", " mpc = sum(parties.values())\n", " \n", " # Parties' newsworthy tweet counts normalized by MP counts\n", " perMP = {}\n", " for p,cnt in parties.items():\n", " perMP[p] = df[df.party == p].twcnt.sum()/float(cnt)\n", "\n", " # Parties' newsworthy tweet counts normalized by MPs with Twitter accounts\n", " perTweep = {}\n", " for p,cnt in parties.items():\n", " perTweep[p] = df[df.party == p].twcnt.sum()/float(df[df.party == p].shape[0])\n", " \n", " \n", " x = ['AKP', 'CHP', 'MHP', 'HDP','Independent']\n", " y1 = [int((perMP[p] * 100) + 0.5) / 100.0 for p in x]\n", " y2 = [int((perTweep[p] * 100) + 0.5) / 100.0 for p in x]\n", " #tweep/mp ratio\n", " # y = [df[df.profs.str.contains(p)].shape[0] for p in x]\n", " \n", " texts = []\n", " for p in x:\n", " twpset = poltweeps.index.tolist()\n", " text = u''\n", " for i,twp in enumerate(twpset):\n", " #twp = ''+ twp +''\n", " text+= ' '+ twp if (i+1) % 10 != 0 else '
'+twp\n", " texts.append(text)\n", " \n", " trace1 = Bar(x=x, y=y1, name='normalized by MP counts') #, text = texts\n", " trace2 = Bar(x=x, y=y2, name='normalized by curated tweep counts')\n", " data = Data([trace1, trace2])\n", " layout = Layout(autosize=True,\n", " title=\"Newsworthy Tweet Counts\",\n", " barmode='group',\n", " legend=Legend(x=0, y=1,traceorder='normal'),\n", " yaxis=YAxis(title='Number of newsworthy tweets per MP'),\n", " annotations=Annotations([\n", " Annotation(\n", " text='Code and datasets are available on github.com/oztalha
'\\\n", " 'Two years of curated tweets are scraped from nediyor.com',\n", " showarrow=False,\n", " x=0.01,\n", " y=0.85,\n", " xref='paper',\n", " yref='paper',\n", " xanchor='left',\n", " yanchor='top',\n", " align='left'\n", " ),\n", " ]))\n", " fig = Figure(data=data, layout=layout)\n", " return py.iplot(fig, filename='Newsworthy Tweet Counts of Turkish Parties')\n", "\n", "\n", "def plot_MP_activity():\n", " # plot commentating activity of these politicians\n", " df = pd.read_csv('data/TR-tweeps-En.csv',encoding='utf-8')\n", " x = ['AKP', 'CHP', 'MHP', 'HDP','Independent']\n", " df = df[df.profs.str.contains('|'.join(x))]\n", " mparty = dict(zip(df.twhandle, df.profs.map(lambda mp: [p for p in x if p in mp][0])))\n", "\n", " tweets = pd.read_csv('data/TR-tweets.csv',encoding='utf-8',parse_dates=['dt'])\n", " tweets['twhandle']=tweets['twhandle'].str[1:]\n", " tweeps = tweets.groupby(by='twhandle')['twtext'].count().order(ascending=False)\n", " poltweeps = tweeps[tweeps.index.isin(df.twhandle)]\n", " partycolors = {'AKP':'orange', 'CHP':'red', 'MHP':'green', 'HDP':'purple','Independent':'cyan'}\n", " colors = [partycolors[mparty[x]] for x in poltweeps.index]\n", " data = Data([Bar(\n", " x=poltweeps.index,\n", " y=poltweeps.values,\n", " marker=Marker(color=colors)\n", " )])\n", " layout = Layout(autosize=True, margin=Margin(b=111),\n", " yaxis=YAxis(title='# of news commentated (Jan 2013 - Jan 2015)'),\n", " title=\"News commentated by Members of TBMM (curated by nediyor.com)\")\n", " fig = Figure(data=data, layout=layout)\n", " return py.iplot(fig,filename=\"TBMM as News Commentators\")" ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "collapsed": true }, "outputs": [], "source": [ " tweets = pd.read_csv('data/TR-tweets.csv',encoding='utf-8',parse_dates=['dt'])\n", " tweets['twhandle']=tweets['twhandle'].str[1:]\n", " tweeps = tweets.groupby(by='twhandle')['twtext'].count().order(ascending=False)\n", " poltweeps = tweeps[tweeps.index.isin(df.twhandle)]" ] }, { "cell_type": "code", "execution_count": 77, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "idrisbal\n", "Mv_MCetin\n", "hakansukur\n", "ErtugrulGunay\n" ] } ], "source": [ "for k,v in mparty.items():\n", " if v == 'Independent':\n", " print(k)" ] }, { "cell_type": "code", "execution_count": 49, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Independent 1915 4\n", "MHP 3039 13\n", "HDP 1139 17\n", "CHP 14205 58\n", "AKP 6677 74\n" ] } ], "source": [ " for p,cnt in parties.items():\n", " print(p,df[df.party == p].twcnt.sum(), df[df.party == p].shape[0])" ] } ], "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 }