From 301bf6dafdf4b2c7b27a724d9f877e4aa6b23cf1 Mon Sep 17 00:00:00 2001 From: Lyudmila Vaseva <vaseva@mi.fu-berlin.de> Date: Tue, 9 Jul 2019 18:38:33 +0200 Subject: [PATCH] Re-order notebook; compare filter hits with Sep2016 --- quarries/quarry-37496 | 3 + src/explore.ipynb | 5830 ++++++++++++++++++++++++++++++++++++----- 2 files changed, 5224 insertions(+), 609 deletions(-) create mode 100644 quarries/quarry-37496 diff --git a/quarries/quarry-37496 b/quarries/quarry-37496 new file mode 100644 index 0000000..d9cdc09 --- /dev/null +++ b/quarries/quarry-37496 @@ -0,0 +1,3 @@ +use enwiki_p; +select * from abuse_filter_log +where afl_timestamp < 20161001000000 and afl_timestamp >= 20160901000000; diff --git a/src/explore.ipynb b/src/explore.ipynb index cedbcab..398709c 100644 --- a/src/explore.ipynb +++ b/src/explore.ipynb @@ -69,7 +69,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "## General stats" + "## General stats / Filter characteristics" ] }, { @@ -336,7 +336,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "## Timestamp\n", + "### Timestamp: When were filters last modified?\n", "\n", "Have a lot of filters been modified for the last time recently?" ] @@ -507,8 +507,7 @@ "plt.xlabel('Month')\n", "plt.ylabel('Num filters')\n", "plt.plot(df_modified, 'bo')\n", - "plt.show()\n", - "\n" + "plt.show()" ] }, { @@ -524,161 +523,54 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "## Filter hits over the years" + "### Helper functions" ] }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 7, + "metadata": {}, + "outputs": [], + "source": [ + "flatten = lambda x: list(itertools.chain.from_iterable(x))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Edit filter actions" + ] + }, + { + "cell_type": "code", + "execution_count": 9, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - " LogMonth Freq\n", - "0 2019-03-01 34309\n", - "1 2019-02-01 236606\n", - "2 2019-01-01 252668\n", - "3 2018-12-01 226287\n", - "4 2018-11-01 253233\n", - "5 2018-10-01 256438\n", - "6 2018-09-01 230354\n", - "7 2018-08-01 216045\n", - "8 2018-07-01 205477\n", - "9 2018-06-01 209374\n", - "10 2018-05-01 238235\n", - "11 2018-04-01 242857\n", - "12 2018-03-01 255431\n", - "13 2018-02-01 213548\n", - "14 2018-01-01 235705\n", - "15 2017-12-01 213359\n", - "16 2017-11-01 254671\n", - "17 2017-10-01 224244\n", - "18 2017-09-01 212790\n", - "19 2017-08-01 195593\n", - "20 2017-07-01 176778\n", - "21 2017-06-01 184406\n", - "22 2017-05-01 231250\n", - "23 2017-04-01 225176\n", - "24 2017-03-01 257081\n", - "25 2017-02-01 246199\n", - "26 2017-01-01 256925\n", - "27 2016-12-01 226680\n", - "28 2016-11-01 258655\n", - "29 2016-10-01 254070\n", - "30 2016-09-01 238406\n", - "31 2016-08-01 192681\n", - "32 2016-07-01 171567\n", - "33 2016-06-01 201867\n", - "34 2016-05-01 294276\n", - "35 2016-04-01 319474\n", - "36 2016-03-01 360327\n", - "37 2016-02-01 366637\n", - "38 2016-01-01 372907\n", - "39 2015-12-01 307003\n", - "40 2015-11-01 338129\n", - "41 2015-10-01 264966\n", - "42 2015-09-01 272765\n", - "43 2015-08-01 215203\n", - "44 2015-07-01 207626\n", - "45 2015-06-01 236916\n", - "46 2015-05-01 250012\n", - "47 2015-04-01 201602\n", - "48 2015-03-01 188296\n", - "49 2015-02-01 163529\n", - "50 2015-01-01 163552\n", - "51 2014-12-01 137314\n", - "52 2014-11-01 154933\n", - "53 2014-10-01 165732\n", - "54 2014-09-01 132150\n", - "55 2014-08-01 93636\n", - "56 2014-07-01 80837\n", - "57 2014-06-01 94967\n", - "58 2014-05-01 132788\n", - "59 2014-04-01 129260\n", - "60 2014-03-01 157123\n", - "61 2014-02-01 146198\n", - "62 2014-01-01 151970\n", - "63 2013-12-01 131054\n", - "64 2013-11-01 156195\n", - "65 2013-10-01 163029\n", - "66 2013-09-01 122300\n", - "67 2013-08-01 117010\n", - "68 2013-07-01 113163\n", - "69 2013-06-01 109264\n", - "70 2013-05-01 163644\n", - "71 2013-04-01 146456\n", - "72 2013-03-01 156797\n", - "73 2013-02-01 196511\n", - "74 2013-01-01 169755\n", - "75 2012-12-01 147379\n", - "76 2012-11-01 186991\n", - "77 2012-10-01 204204\n", - "78 2012-09-01 160734\n", - "79 2012-08-01 122418\n", - "80 2012-07-01 110906\n", - "81 2012-06-01 123762\n", - "82 2012-05-01 178005\n", - "83 2012-04-01 173853\n", - "84 2012-03-01 184071\n", - "85 2012-02-01 197130\n", - "86 2012-01-01 192057\n", - "87 2011-12-01 175397\n", - "88 2011-11-01 211174\n", - "89 2011-10-01 224586\n", - "90 2011-09-01 171945\n", - "91 2011-08-01 133965\n", - "92 2011-07-01 133186\n", - "93 2011-06-01 143617\n", - "94 2011-05-01 173431\n", - "95 2011-04-01 160696\n", - "96 2011-03-01 177539\n", - "97 2011-02-01 173222\n", - "98 2011-01-01 181135\n", - "99 2010-12-01 157738\n", - "100 2010-11-01 195329\n", - "101 2010-10-01 206730\n", - "102 2010-09-01 174706\n", - "103 2010-08-01 138323\n", - "104 2010-07-01 127687\n", - "105 2010-06-01 146164\n", - "106 2010-05-01 206822\n", - "107 2010-04-01 197381\n", - "108 2010-03-01 217092\n", - "109 2010-02-01 206380\n", - "110 2010-01-01 193376\n", - "111 2009-12-01 166506\n", - "112 2009-11-01 210227\n", - "113 2009-10-01 226865\n", - "114 2009-09-01 213208\n", - "115 2009-08-01 162281\n", - "116 2009-07-01 160993\n", - "117 2009-06-01 179176\n", - "118 2009-05-01 211879\n", - "119 2009-04-01 179152\n", - "120 2009-03-01 99008\n" + "[('log only', 413), ('disallow', 406), ('warn', 122), ('tag', 70), ('throttle', 52), ('blockautopromote', 4)]\n" ] } ], "source": [ - "# filter hits per month (all filters) (data quarry from 05.03.2019, that's why hitcount Mar 2019 is so small)\n", - "# Mar 2009 is also lower, since the first filter was introduced on 17.3.2009 and not at the beginning of the month\n", - "df_hits = pd.read_csv(\"quarry-34014-how-many-abuse-filter-hits-have-been-there-per-month-en-wiki-run346197.csv\", sep=',')\n", - "df_hits['LogMonth'] = pd.to_datetime(df_hits['LogMonth'], format=\"%Y%m\")\n", + "actions = df['af_actions'].fillna('log only')\n", + "actions_list = flatten([x.split(\",\") for x in list(actions)])\n", + "all_actions = collections.Counter(actions_list).most_common()\n", "\n", - "with pd.option_context('display.max_rows', None, 'display.max_columns', None):\n", - " print(df_hits)\n" + "print(all_actions)" ] }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 12, "metadata": {}, "outputs": [ { "data": { - "image/png": "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\n", + "image/png": "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\n", "text/plain": [ "<Figure size 432x288 with 1 Axes>" ] @@ -690,521 +582,117 @@ } ], "source": [ - "plt.xlabel('Month')\n", - "plt.ylabel('Num hits')\n", - "plt.plot(df_hits['LogMonth'],df_hits['Freq'], 'bo')\n", - "plt.show()\n", + "all_actions_labels = [x[0] for x in all_actions]\n", + "all_actions_values = [x[1] for x in all_actions]\n", "\n", - "#TODO: why is the peak there? there's an upward tendency" + "plt.xlabel('actions')\n", + "plt.xticks(rotation='20')\n", + "plt.ylabel('Num filters')\n", + "plt.bar(all_actions_labels, all_actions_values)\n", + "plt.show()" ] }, { "cell_type": "code", - "execution_count": 40, + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[('disallow', 51), ('log only', 19), ('throttle,disallow', 7), ('throttle', 4), ('tag', 3), ('warn,tag', 2), ('throttle,warn', 2), ('warn', 1), ('disallow,tag', 1), ('warn,disallow', 1)]\n" + ] + } + ], + "source": [ + "# What are the actions of active hidden filters\n", + "active_hidden = df.query('af_hidden==1 and af_enabled==1')\n", + "active_hidden_actions = collections.Counter(list(active_hidden['af_actions'].fillna('log only'))).most_common()\n", + "print (active_hidden_actions)" + ] + }, + { + "cell_type": "code", + "execution_count": 14, "metadata": {}, "outputs": [ { "data": { - "image/png": "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ElAeeJ7na2x0deTImUiKeXOJqqgIVKrWVlcTE9OPTUx440imtWvPqbnZ1eCglMtNvXCmUq6WLfNeT5Fc/H2Mnr/rfXt73EkQt6KKV//4j/+oT3ziE/roRz+qmpqayfu/8pWvFPWPPPLII/re976n//iP/9Bll12myy67TKlUSm+++ebkbKihoSE1NjbqyiuvjHSsUFdXV14vryVLlqimpka1tbVF/b+GzUIOCxmk8s3hutKtt+r8Sc9UH4zBQUe33VYzbR8MK4+FNP8sQe64ZOXxIEe+C3PM53kedIa4zZRl/XrvI64cceySZeW4kMNWBql8c3z847MtFXb08Y9fOu1rYLk+HvNlIcd0GV54YbqlTo727HF02WXhZbb6eMQhjBzz+ftYzo9HEjNI5ChkJUcxitpt8Etf+pLS6bTGx8f1+9//fvKjGN3d3XryySf14x//WFdcccXk/XfccYe++93vSpJeeukl/eY3v9FHPvKRWMYAS4rpg1FuothxCbZU4vM8CdglC4gGuwCWN7/f59690qOPerd9fdI0182REPx9BOJX1MyrX//61/r1r39d8g9/7bXX9OCDD6qlpUUf+9jHJEmXXnqpfv7zn+ub3/ym7r77bl1//fVKp9PauXPn5M5/UY8BpXJd6cCBqvPN0oNtQF5pjT6j3HEJdlTa8zwp2CULiA4bmpS3IJrkBzkrHQvD30cgfkUVr1asWKF3331X9fX1Jf3whoYGuTOUoa+55hq98MILJsaAUkxNGU5f0FQ5uCU1mcxUAadQNuuNlxNOBsrbTIXeSnueJwVFRSBa7AKImcSxhBsz4+8jEL+iile1tbVavXq1PvWpT+X1vLqwsTlQCfJnCTmhzBLq6JitD4Y3Xk44GShfsxV6K+15nhQUFQEgfsxKt4e/j0D8iup5tWrVKt1999265pprdPnll09+AJUmij49ldYHg5OB8pTfG8LR2JiT1xtCqqzneVL4RcVUwaUtiooAEB36QtrD30cgfkXNvPrqV78adg4gEaKaJVRJfTCYgVOeil0OWinP86Twi+cX75JFUREAosKsdHv4+wjEr6ji1de+9rVp7//KV74SaBjAuihnCVVKHwxOBspTsSfelfI8T5JKKp4DYaPhNuaDWek28fcRiFdRxavf//73k/89Pj6u3bt3a+3ataGFAqxillA4OBkoP5x4hyeK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\n", + "image/png": "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\n", "text/plain": [ - "<Figure size 1440x480 with 1 Axes>" + "<Figure size 432x288 with 1 Axes>" ] }, - "metadata": {}, + "metadata": { + "needs_background": "light" + }, "output_type": "display_data" } ], "source": [ - "# The same plot as above, but \"zoomed in\", so we can actually read the values for single months\n", - "fig, ax = plt.subplots(num=None, figsize=(18, 6), dpi=80, facecolor='w', edgecolor='k')\n", - "\n", - "xfmt = matplotlib.dates.DateFormatter('%Y/%m')\n", - "ax.xaxis.set_major_formatter(xfmt)\n", - "\n", - "locator = matplotlib.dates.MonthLocator(bymonth=[1,5,9])\n", - "ax.xaxis.set_major_locator(locator)\n", + "ah_actions_labels = [x[0] for x in active_hidden_actions]\n", + "ah_actions_values = [x[1] for x in active_hidden_actions]\n", "\n", - "plt.xlabel('Month')\n", - "plt.ylabel('Num hits')\n", - "plt.plot_date(df_hits['LogMonth'],df_hits['Freq'], 'bo')\n", - "#plt.xticks(matplotlib.dates.date2num(df_hits['LogMonth']))\n", - "plt.setp(plt.gca().xaxis.get_majorticklabels(),\n", - " 'rotation', 60)\n", - "plt.grid(color='0.7', linestyle='-', linewidth=0.2)\n", + "plt.xlabel('actions')\n", + "plt.xticks(rotation='20')\n", + "plt.ylabel('Num filters')\n", + "plt.bar(ah_actions_labels, ah_actions_values)\n", "plt.show()" ] }, { - "cell_type": "markdown", + "cell_type": "code", + "execution_count": 16, "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[('tag', 25), ('warn,tag', 25), ('disallow', 22), ('log only', 20), ('warn', 12), ('throttle,tag', 2), ('warn,disallow', 2), ('throttle,warn,tag', 1), ('throttle,disallow', 1)]\n" + ] + } + ], "source": [ - "#### Explore the peak in filter hits" + "# What are the actions of active public filters\n", + "active_public = df.query('af_hidden==0 and af_enabled==1')\n", + "active_public_actions = collections.Counter(list(active_public['af_actions'].fillna('log only'))).most_common()\n", + "print(active_public_actions)" ] }, { "cell_type": "code", - "execution_count": 42, + "execution_count": 17, "metadata": {}, "outputs": [ { "data": { + "image/png": "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\n", "text/plain": [ - "10.68.16.39 1689\n", - "37.113.52.15 1249\n", - "95.152.44.52 1133\n", - "5.165.178.194 715\n", - "94.181.143.10 697\n", - "95.152.42.158 674\n", - "5.166.250.109 559\n", - "5.166.224.152 556\n", - "Acheter cialis 533\n", - "37.113.51.96 473\n", - "93.124.7.25 430\n", - "5.167.114.39 317\n", - "93.124.34.23 307\n", - "36.250.176.0 291\n", - "Wwekik2222kdjdj 279\n", - "37.113.37.111 274\n", - "94.181.170.143 247\n", - "Theadityapratap 239\n", - "94.181.156.128 229\n", - "93.124.46.78 222\n", - "Achat cialis 222\n", - "93.124.28.116 213\n", - "176.97.116.140 202\n", - "5.165.186.39 192\n", - "Acquistare cialis 190\n", - "93.124.74.221 187\n", - "AbhiJahazi 186\n", - "37.113.34.32 186\n", - "37.113.28.187 185\n", - "64.62.219.98 180\n", - " ... \n", - "Dharmendra780 1\n", - "Robertdenningraider13 1\n", - "SLCHT 1\n", - "2601:153:700:6870:B8D9:5791:192D:1DAE 1\n", - "59.96.9.214 1\n", - "207.32.26.5 1\n", - "208.61.1.124 1\n", - "149.126.106.19 1\n", - "121.216.118.139 1\n", - "HegerLoyneszhFG 1\n", - "2607:FB90:1903:33F9:4C08:6E2:70C7:20F6 1\n", - "Clutchmaster163955 1\n", - "86.160.200.85 1\n", - "38.78.194.51 1\n", - "69.174.87.60 1\n", - "PujolBoatmanJvfh 1\n", - "89.240.83.117 1\n", - "MarrowWylyLRFj 1\n", - "173.31.204.16 1\n", - "PettigrewSparacioETJg 1\n", - "Ednopsniwagn 1\n", - "Kevinfigs 1\n", - "162.228.50.214 1\n", - "LoeberArelUVURo 1\n", - "50.82.26.116 1\n", - "Kaileefiles 1\n", - "Bestraight 1\n", - "Dexon Software 1\n", - "203.59.81.156 1\n", - "119.154.88.171 1\n", - "Name: afl_user_text, Length: 139586, dtype: int64" - ] - }, - "execution_count": 42, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "df_jan2016 = pd.read_csv(\"quarry-37494-abuselog-entries-en-wiki-in-january-2016-run389216.csv\", sep=',')\n", - "\n", - "# Number of hits per editor\n", - "df_jan2016['afl_user_text'].value_counts()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "37.113.52.15 is a Russian IP (whois --> netname: ERTH-PENZA-PPPOE-16-NET)\n", - "95.152.44.52 too (whois--> netname: RU-PENZA-VT-DSL-200901)" - ] - }, - { - "cell_type": "code", - "execution_count": 43, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "edit 300781\n", - "createaccount 71902\n", - "move 193\n", - "autocreateaccount 18\n", - "gatheredit 9\n", - "delete 4\n", - "Name: afl_action, dtype: int64" + "<Figure size 432x288 with 1 Axes>" ] }, - "execution_count": 43, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "# Number of hits per editor's actions\n", - "df_jan2016['afl_action'].value_counts()" - ] - }, - { - "cell_type": "code", - "execution_count": 44, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "527 71853\n", - "61 27072\n", - "650 24264\n", - "633 21099\n", - "279 18460\n", - "636 17279\n", - "384 15080\n", - "135 10028\n", - "30 7829\n", - "172 7471\n", - "271 7192\n", - "380 6554\n", - "80 6530\n", - "364 6238\n", - "686 6089\n", - "712 5597\n", - "466 5555\n", - "432 5398\n", - "220 5385\n", - "550 5215\n", - "189 4730\n", - "3 4656\n", - "148 4470\n", - "260 4148\n", - "614 4120\n", - "231 3398\n", - "631 3349\n", - "225 3245\n", - "46 3174\n", - "680 3134\n", - " ... \n", - "242 19\n", - "706 19\n", - "16 19\n", - "734 18\n", - "264 18\n", - "710 17\n", - "666 15\n", - "722 14\n", - "167 13\n", - "294 10\n", - "624 9\n", - "727 8\n", - "651 8\n", - "637 8\n", - "745 6\n", - "52 6\n", - "674 6\n", - "748 5\n", - "690 5\n", - "2 5\n", - "597 4\n", - "579 4\n", - "709 4\n", - "68 4\n", - "554 3\n", - "749 3\n", - "596 1\n", - "718 1\n", - "459 1\n", - "694 1\n", - "Name: afl_filter, Length: 138, dtype: int64" - ] + "metadata": { + "needs_background": "light" }, - "execution_count": 44, - "metadata": {}, - "output_type": "execute_result" + "output_type": "display_data" } ], "source": [ - "# Number of hits per filter\n", - "df_jan2016['afl_filter'].value_counts()" + "ap_actions_labels = [x[0] for x in active_public_actions]\n", + "ap_actions_values = [x[1] for x in active_public_actions]\n", + "\n", + "plt.xlabel('actions')\n", + "plt.xticks(rotation='20')\n", + "plt.ylabel('Num filters')\n", + "plt.bar(ap_actions_labels, ap_actions_values)\n", + "plt.show()" ] }, { "cell_type": "code", - "execution_count": 45, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "UserLogin 71920\n", - "Skateboard 660\n", - "Conchobar_Lads_Tomlinson 584\n", - "Billboard_(magazine) 536\n", - "Chris_Stark 467\n", - "Tyler_Joseph 431\n", - "Bulletin_board_system 339\n", - "Hailey_Baldwin 328\n", - "Flickr_-_Official_U.S._Navy_Imagery_-_Sailors_play_board_games_with_children_at_the_Cameron_Community_Ministries_during_Rochester_Navy_Week.jpg 322\n", - "Ryback 287\n", - "Aditya_Pratap 247\n", - "95.152.44.52 232\n", - "WikiProject_Film 232\n", - "British_Board_of_Film_Classification 224\n", - "10_Cloverfield_Lane 219\n", - "Keyboard_instrument 217\n", - "Board_game 203\n", - "176.97.116.140 202\n", - "93.124.46.78 198\n", - "AbhiJahazi 186\n", - "Board 184\n", - "Entertainment_Software_Rating_Board 178\n", - "Battle_of_the_Alamo 169\n", - "Computer_keyboard 161\n", - "Cultural_history_of_the_buttocks 155\n", - "Conchobar_Tomlinson 155\n", - "History_of_the_internal_combustion_engine 154\n", - "Skateboarder_(magazine) 146\n", - "WikiProject_Video_games 140\n", - "Cian_Mitchell 140\n", - " ... \n", - "Surfix 1\n", - "British_Colonial_Research_Committee 1\n", - "Nassau_County_Police_Department 1\n", - "Institute_of_Health_Sciences_Bhubaneswar 1\n", - "Underwater_Pompeii 1\n", - "El_Valle_de_Antón 1\n", - "Make_My_Journeys 1\n", - "Ten_Fold_Engineering 1\n", - "LNER_Class_A3_4472_Flying_Scotsman 1\n", - "North_Eastern_College 1\n", - "Zillow 1\n", - "Ww57614wW 1\n", - "Junkyard_Dog 1\n", - "John_Steptoe 1\n", - "Financial_doctor 1\n", - "Music_of_Portugal 1\n", - "Northwoods_Mall_(North_Charleston,_South_Carolina) 1\n", - "Niuman_Romero 1\n", - "Chaudhry_Faisal_Mushtaq 1\n", - "Big_Island_(Bay_of_Quinte) 1\n", - "Venus_of_Willendorf 1\n", - "Alexis_Argüello 1\n", - "Pdfpdf/Images_of_Adelaide 1\n", - "Chickasaw_State_Park_(Alabama) 1\n", - "Torin's_Passage 1\n", - "Gulshanthakurbohani 1\n", - "WPCH-TV 1\n", - "List_of_countries_with_IKEA_stores 1\n", - "Phelps,_New_York 1\n", - "Micheál_Quirke 1\n", - "Name: afl_title, Length: 91387, dtype: int64" - ] - }, - "execution_count": 45, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "# Number of hits per intended edit page\n", - "df_jan2016['afl_title'].value_counts()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "To be fair, I don't see any particularly interesting or conspicious pattern, beside the 71920 attempts at account creations. But maybe it's exactly them that make the 71920 hits difference to all the \"standard\" numbers. I'm comparing this with September 2016 (238406 hits) for reference." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Helper functions" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": {}, - "outputs": [], - "source": [ - "flatten = lambda x: list(itertools.chain.from_iterable(x))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Edit filter actions" - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "[('log only', 413), ('disallow', 406), ('warn', 122), ('tag', 70), ('throttle', 52), ('blockautopromote', 4)]\n" - ] - } - ], - "source": [ - "actions = df['af_actions'].fillna('log only')\n", - "actions_list = flatten([x.split(\",\") for x in list(actions)])\n", - "all_actions = collections.Counter(actions_list).most_common()\n", - "\n", - "print(all_actions)" - ] - }, - { - "cell_type": "code", - "execution_count": 12, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "<Figure size 432x288 with 1 Axes>" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "all_actions_labels = [x[0] for x in all_actions]\n", - "all_actions_values = [x[1] for x in all_actions]\n", - "\n", - "plt.xlabel('actions')\n", - "plt.xticks(rotation='20')\n", - "plt.ylabel('Num filters')\n", - "plt.bar(all_actions_labels, all_actions_values)\n", - "plt.show()" - ] - }, - { - "cell_type": "code", - "execution_count": 13, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "[('disallow', 51), ('log only', 19), ('throttle,disallow', 7), ('throttle', 4), ('tag', 3), ('warn,tag', 2), ('throttle,warn', 2), ('warn', 1), ('disallow,tag', 1), ('warn,disallow', 1)]\n" - ] - } - ], - "source": [ - "# What are the actions of active hidden filters\n", - "active_hidden = df.query('af_hidden==1 and af_enabled==1')\n", - "active_hidden_actions = collections.Counter(list(active_hidden['af_actions'].fillna('log only'))).most_common()\n", - "print (active_hidden_actions)" - ] - }, - { - "cell_type": "code", - "execution_count": 14, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "<Figure size 432x288 with 1 Axes>" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "ah_actions_labels = [x[0] for x in active_hidden_actions]\n", - "ah_actions_values = [x[1] for x in active_hidden_actions]\n", - "\n", - "plt.xlabel('actions')\n", - "plt.xticks(rotation='20')\n", - "plt.ylabel('Num filters')\n", - "plt.bar(ah_actions_labels, ah_actions_values)\n", - "plt.show()" - ] - }, - { - "cell_type": "code", - "execution_count": 16, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "[('tag', 25), ('warn,tag', 25), ('disallow', 22), ('log only', 20), ('warn', 12), ('throttle,tag', 2), ('warn,disallow', 2), ('throttle,warn,tag', 1), ('throttle,disallow', 1)]\n" - ] - } - ], - "source": [ - "# What are the actions of active public filters\n", - "active_public = df.query('af_hidden==0 and af_enabled==1')\n", - "active_public_actions = collections.Counter(list(active_public['af_actions'].fillna('log only'))).most_common()\n", - "print(active_public_actions)" - ] - }, - { - "cell_type": "code", - "execution_count": 17, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYkAAAEmCAYAAACXl2yGAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4zLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvnQurowAAIABJREFUeJzt3Xnc5XP9//HHczZkZqyTnbG1YGyNJcrXvoaoRHZqqCylvpHv94dS4puEqL5ElmQpa7YsaVDIDLIMIkZfwgwpImHm9fvj9f64jjPX55prO9e5zDzvt9t1u875nOXzPp/zOe/Xe/8oIjAzM+vMkHYnwMzMBi8HCTMzq+UgYWZmtRwkzMysloOEmZnVcpAwM7NaDhJmZlbLQcLMzGo5SJiZWa1h7U5Adyy66KIxduzYdifDzOxdZfLkyS9ExJi+vMe7IkiMHTuWSZMmtTsZZmbvKpKe6ut7uLnJzMxqOUiYmVktBwkzM6vlIGFmZrUcJMzMrFbLgoSkZSTdImmKpIckHVq2HyPpGUn3lb9tW5UGMzPrm1YOgX0L+EpE3CNpFDBZ0o3lse9HxIkt3LeZmfWDlgWJiHgWeLbcfkXSw8BSrdqfmZn1vwGZTCdpLLAWcBewIXCQpL2ASWRt46VOXjMBmACw7LLL9nrfY4+4ptev7Y2px29X+9hApqWrdJiZdVfLO64ljQQuBb4UES8DPwJWBNYkaxrf6+x1EXFGRIyPiPFjxvRpVrmZmfVSS4OEpOFkgLggIi4DiIjnI2JGRMwEzgTWbWUazMys91o5uknAWcDDEXFSw/YlGp62E/Bgq9JgZmZ908o+iQ2BPYEHJN1Xth0J7CZpTSCAqcABLUyDmZn1QStHN90OqJOHrm3VPs3MrH95xrWZmdVykDAzs1oOEmZmVstBwszMajlImJlZLQcJMzOr5SBhZma1HCTMzKyWg4SZmdVykDAzs1oOEmZmVstBwszMajlImJlZLQcJMzOr5SBhZma1HCTMzKyWg4SZmdVykDAzs1oOEmZmVqtl17i2wWvsEdcM6P6mHr/dgO7PzPqPaxJmZlbLQcLMzGo5SJiZWS0HCTMzq+UgYWZmtRwkzMysloOEmZnVcpAwM7NaDhJmZlbLQcLMzGo5SJiZWS0HCTMzq9WyICFpGUm3SJoi6SFJh5btC0u6UdJj5f9CrUqDmZn1TStrEm8BX4mIVYD1gS9KWgU4Arg5IlYGbi73zcxsEGpZkIiIZyPinnL7FeBhYClgR+Dc8rRzgY+3Kg1mZtY3A9InIWkssBZwF7BYRDxbHnoOWGwg0mBmZj3X8osOSRoJXAp8KSJelvT2YxERkqLmdROACQDLLrtsq5NpbeILIJkNbi2tSUgaTgaICyLisrL5eUlLlMeXAKZ19tqIOCMixkfE+DFjxrQymWZmVqOVo5sEnAU8HBEnNTx0FbB3ub03cGWr0mBmZn3TyuamDYE9gQck3Ve2HQkcD1wiaX/gKWCXFqbBzMz6oGVBIiJuB1Tz8Gat2q+ZmfUfz7g2M7NaDhJmZlbLQcLMzGo5SJiZWS0HCTMzq+UgYWZmtRwkzMysloOEmZnVcpAwM7NaDhJmZlbLQcLMzGo5SJiZWS0HCTMzq+UgYWZmtRwkzMysloOEmZnVcpAwM7NaDhJmZlbLQcLMzGo5SJiZWS0HCTMzq+UgYWZmtRwkzMysloOEmZnVcpAwM7NaDhJmZlZrtkFC0qGSRiudJekeSVsOROLMzKy9ulOT2C8iXga2BBYC9gSOb2mqzMxsUOhOkFD5vy1wfkQ81LDNzMzmYN0JEpMl3UAGiV9LGgXMbG2yzMxsMBjW1YOSBBwFjAGeiIjXJC0C7DsQiTMzs/bqMkhEREi6NiLGNWx7EXix5SkzM7O2605z0z2S1ml5SszMbNDpTpBYD7hT0p8l3S/pAUn3z+5Fks6WNE3Sgw3bjpH0jKT7yt+2fUm8mZm1VpfNTcVWvXzvc4DTgPOatn8/Ik7s5XuamdkAmm1NIiKeApYBNi23X+vm624F/tbnFJqZWdt0Z8b10cDhwNfLpuHAz/qwz4NKs9XZkhbqYr8TJE2SNGn69Ol92J2ZmfVWd/okdgJ2AF4FiIi/AqN6ub8fASsCawLPAt+re2JEnBER4yNi/JgxY3q5OzMz64vuBIk3IiKAAJA0f293FhHPR8SMiJgJnAms29v3MjOz1utOkLhE0v8CC0r6HHAT8JPe7EzSEg13dwIerHuumZm132xHN0XEiZK2AF4G3g8cFRE3zu51ki4ENgYWlfQ0cDSwsaQ1yVrJVOCA3ifdzMxabbZBQtIJEXE4cGMn22pFxG6dbD6r50k0M7N26U5z0xadbNumvxNiZmaDT21NQtLngS8AKzTNsB4F/K7VCTMzs/brqrnp58B1wHeAIxq2vxIRniRnZjYX6CpIDCU7q7/Y/ICkhR0ozMzmfF0FicmUuRHMeiW6AFZoSYrMzGzQqA0SEbH8QCbEzMwGn646rj8QEY9IWruzxyPintYly8zMBoOumpsOAybQ+fpKAWzakhSZmdmg0VWQqCbP7R8RTwxEYszMbHDpajJdtTT4LwciIWZmNvh0VZN4UdINwPKSrmp+MCJ2aF2yzMxsMOgqSGwHrA2cTxfXfTAzszlXV0Ng3wDulLRBRPjScGZmc6HuXKvaAcLMbC7VnVVgzcxsLuUgYWZmtbpz0aHlgYOBsY3P9+gmM7M532yDBHAFeUW5XwEzW5scMzMbTLoTJF6PiFNbnhIzMxt0uhMkTpF0NHAD8O9qoxf4sznN2COuGbB9TT1+uwHbl1lfdCdIjAP2JBf0q5qbvMCfmdlcoDtB4lPACmVynZmZzUW6MwT2QWDBVifEzMwGn+7UJBYEHpF0N+/sk/AQWDOzOVx3gsTRLU+FmZkNSrMNEhExcSASYmZmg093Zly/Qo5mAhgBDAdejYjRrUyYmZm1X3dqEqOq25IE7Ais38pEmZnZ4NCjBf4iXQFs1aL0mJnZINKd5qadG+4OAcYDr7csRWZmNmh0Z3TT9g233wKmkk1OZmY2h+tOn8S+A5EQMzMbfGqDhKSjunhdRMSxXb2xpLOBjwHTImK1sm1h4GLy2hRTgV0i4qUeptnMzAZIVx3Xr3byB7A/cHg33vscYOumbUcAN0fEysDN5b6ZmQ1StTWJiPhedVvSKOBQYF/gIuB7da9reP2tksY2bd4R2LjcPhf4Ld0LOGZm1gZd9kmU5qHDgN3JTH3tPjYPLRYRz5bbzwGL9eG9zMysxWqbmyR9F7gbeAUYFxHH9Gf/QUQEHTO5O9v/BEmTJE2aPn16f+3WzMx6oKs+ia8ASwL/DfxV0svl7xVJL/dyf89LWgKg/J9W98SIOCMixkfE+DFjxvRyd2Zm1he1QSIihkTEfBExKiJGN/yN6sO6TVcBe5fbewNX9vJ9zMxsAPRoWY6ekHQhcAfwfklPS9ofOB7YQtJjwOblvpmZDVLdmXHdKxGxW81Dm7Vqn2Zm1r9aVpMwM7N3PwcJMzOr5SBhZma1HCTMzKyWg4SZmdVykDAzs1oOEmZmVstBwszMajlImJlZLQcJMzOr5SBhZma1HCTMzKyWg4SZmdVykDAzs1oOEmZmVstBwszMajlImJlZLQcJMzOr5SBhZma1HCTMzKyWg4SZmdVykDAzs1oOEmZmVstBwszMajlImJlZLQcJMzOr5SBhZma1HCTMzKyWg4SZmdVykDAzs1oOEmZmVstBwszMajlImJlZrWHt2KmkqcArwAzgrYgY3450mJlZ19oSJIpNIuKFNu7fzMxmw81NZmZWq11BIoAbJE2WNKGzJ0iaIGmSpEnTp08f4OSZmRm0L0h8JCLWBrYBvihpo+YnRMQZETE+IsaPGTNm4FNoZmbtCRIR8Uz5Pw24HFi3HekwM7OuDXiQkDS/pFHVbWBL4MGBToeZmc1eO0Y3LQZcLqna/88j4vo2pMPMzGZjwINERDwBrDHQ+zUzs57zEFgzM6vlIGFmZrUcJMzMrJaDhJmZ1XKQMDOzWg4SZmZWy0HCzMxqOUiYmVktBwkzM6vlIGFmZrUcJMzMrJaDhJmZ1XKQMDOzWg4SZmZWy0HCzMxqOUiYmVktBwkzM6vlIGFmZrUcJMzMrNaAX+PazLo29ohrBnR/U4/frvaxgUxLV+mw9nFNwszMajlImJlZLQcJMzOr5SBhZma1HCTMzKyWg4SZmdVykDAzs1qeJ2Fmg97cOncE2j9/xDUJMzOr5SBhZma1HCTMzKyWg4SZmdVqS5CQtLWkRyU9LumIdqTBzMxmb8CDhKShwOnANsAqwG6SVhnodJiZ2ey1oyaxLvB4RDwREW8AFwE7tiEdZmY2G+0IEksB/9dw/+myzczMBhlFxMDuUPoksHVEfLbc3xNYLyIOanreBGBCuft+4NEBTSgsCrwwwPusM1jSMljSAYMnLYMlHeC0dGawpAPak5blImJMX96gHTOunwGWabi/dNn2DhFxBnDGQCWqmaRJETG+XftvNFjSMljSAYMnLYMlHeC0DOZ0wOBKS0+0o7npbmBlSctLGgHsClzVhnSYmdlsDHhNIiLeknQQ8GtgKHB2RDw00OkwM7PZa8sCfxFxLXBtO/bdA21r6urEYEnLYEkHDJ60DJZ0gNPSmcGSDhhcaem2Ae+4NjOzdw8vy2FmZrUcJGyuU2b9mw0oSW3PbyWpp69pe6IHM6V3/THqzYnRCoPlWEbEjHan4d1gTjn/26kcw6EAETGzXWmobkcv+hd8AnQh0kxJwyWNezeVQMvJKeg4MdoRLCS9PThioH8kkjaQ9P5Otq8k6QfldkuPiaT5Wvn+rSJJ1flf7i9abW9vyjpXhtQvWW4PmjSWYzgDQNKqkj5fhv4PaBqq25JGStquOlbd4cuXFpKGNGdikrYG9gDeA7wF/BfwWPUDakMyu60hMCwH/AewOHAF8KdW71vS0OqHERFvNWz/MjAjIk7t7Hj3cxpGA58GZgCHSdo0In5THn4d+IikeSLi3y3Y9/zAdsBRwJ2Szo+Iia3+zH3RnLaICEkrA1sASwCrAjsPpvNe0kLA0hHxAPCfwBvAl9qYnqHAzKZM+T3AscCWwJPAIsCdwL0DkY+UNA0j87Ebyd/DN4CPdvc95uqaRFNpuzlAfAg4nFyA8BpgJfKH0qsqWyt11iRQSgw/An4JbAIcQc5ub3kaGptzJO0n6Zfl7l+Bzaun9fP+3/4ui1eA64Cx5f4pkvaVNIpcK+xmYP5+3P8QSZuVZWauAj4MfBaYCHwP2tfc0JXqe+vk/F8TuJxcHWFpYExntbIWp+3tppqm7cuWm6cDl5Xv9BbgJRjY32fzeV+C64KShpfN6wMrRcQ44NvAc8Cm/ZnO5uNU/Q4kbVV+i8OAM4H/johngH8BazQ+tytzXZAoB3R9SSuVqmBIWlrScZJ+LGnj8tTlgTci4uqIOIv8wawqaWTbEl80B4WGJoGNSikWssTyfmCDiNgXuAkYL2mBfk7LLO2tpWnu5HJ3FLC2pH3JxRynSlqgv3/IDd/lcpKWK+//EBCS1ge2BdYEDiBLU+Mi4m+dBdiekLSQpO8DxwO7AX8gf1fTIuLOiDgfmCFpq/L8tjaFlPQ2tlFX587OJYguWB6aAJwXEV8nM7fJwM7luS37DJIWq35jTU01Y8r/nYCflac/DUwCPgV8AHhWA9S8J2mbcp5Vx294aUr6PXA+cGh56ihgdLk9GbiEXHFiwVnetGf7X0zSx6v7DcdpPaB672Mk7QMsABwNvK/cvxjo9vIgc12QKJnHKsC3lRc/Oho4B/gbGW0vkPReMiOZJKlaZ+pZYB1gOWhb+74krUY2o1Tb5pV0oqRJwJeBkyW9D1gM+DMd62RdCKxGNjv1JQ2jJR0gaRPIk7P8QHaTdISymedJYAdlc0UAPwZWAHYHHgPm7cP+hzSXmiTNo+x/OAn4PXC8pN0j4v+Ae4Ddyu0f0nEdkxGSRvSmdC9pFUkfLp//JfL7GB0Rn42IR4F7gSGS5ikvuRLYq3p5rz54Pyjn7JFk82mVsW0m6TZgJ7Km/I3yvIfJQgbkuX8vJWPp7wBfzqlFJa1Kfkerl+3zSvqWpD8AZ0vaJiIuB2ZK2qi8/I9krfGTwFIR8a/Oah/9mNbq+1sJ+F4pcO4KjATeB+wJ7AMcUc6RfwIPSXpfaXodSh7nbpfkG/Y9j6TqPFob+JqkkaVwtH0JUD8ATpf0MWB/8ne3HzAVOIU8TssDf4fufZdzXZAo1gY+BuwN/Ar4OHAXcCDZ/roruZz5/OV5AP8AxpAZbVuanMo+A/iCpO9KOqak6RaySelzZDPHXuSiiaIENeB28rN8sKf7lTSsnIQHku35a1Ca3iTNC1xNljKXA/4XeC/wLfK4rljScWHZ/yYR8Xxvg2xEzGwoNS1ajsnHyEA/LSKWAs4DvlZeMhFYSdKYkoF/nyzlTQPe7MExGC3p45KuBc4CDim1I4CfAvM0PP1KspmhWn3zEmAnSfO2cYTL0HKsVgZulHQ3+Z39EfgMee6LvLbLx8k11pYrtb5XgWWBJSWt28/pWohss98dmEIW1lZQDngYT55T25K1h70lbUZHG/+bZCn5FrLEvjP07+i1LmqaI8v+DgdeKoWFY4F9ySWH/k725zxX0ln1lSxDBt01S1p7ko+MIIP4OsBtZIFrm/LYBsC5EbEu2epxLBnobyGbeHcDfkOei18kV6R1c1MXTgN+C1wYEfcA65EH9Xwyw9mPPGGvB/aSdBN5YF8CWl6dLaXjuu9mSzJQrQGcXkrIt5Ht3lcBNwAHl7bHKcCXJG1OZgJT6EG/hDraq98iaybrkOfMncCykhYHtgKejYhPRcTnyZL7MWTG+Sr5o1grIqaUtG2njuagHpO0gKTTSiZ3mqQtyQ75v5B9HkTEdcCbpbZzF/lD3bY8djUZKJYrJbDaH0mptYxUtnkfS14w6+CI+DDwPPD5Ulu6AFhfpR06IiaSmch6yg7hx8nS5UCMplJzTaukaUbJkJ8nS8H7RcTFEfECWbO6iTy/f0VmYA8AL5I101PKtkcopfz+Sl/JXP9Enl/zksFpLbId/SPAiJLGq8n+tT0j4maytroFMKw8fiFwv6TF+pK+hjR22lfZcN5eRTZnnh0Rvy7bNgQ+ELnS6y5kYfMVsgS/gKQ/AUuSfQJvzubce8dxKvt+hewj3TUi/kkG+I1LQF0HuL2cb78gA8qHI+IWMphsDnwkIs4ja/bPNX2eWnNlkIiIR8gT7oCyaVXgoYi4lcxsVicP6PVk6fzrEbEx8BSl9NmKH3vDiRnNJ2fDCXM+2az0ZERML9s+QJ4UG0bEYWQ7/HYRcRI5ouGQkvbLyJFOs0tHZ52Z9wH/Jk/GO8iS24pkRrJ2ed0IsqSyEtmkcR5Zcl2i1DhOIIPwX+qOX8mYuzovNwKGk5n+L4Cvk53Tt5Ml36pEfwWZEb5JXotk84b3mAI82FC6bk7DMEkrkrWQQ8rnfgu4lCzl/pGsLT0FbFYC4EvA1g1vcw3ZZBkAEXFJRLzenzXQ6hhKWrq639SOP7YxEEbESxFxAJlBNI5s3Bm4OCK+RZY+dyGbJPYl11j7E/CF8lke7kuam9JX9Y/9kawRrEWer4sDHyKbDucrr3sVmAn8W9KoyH7CIeT3APCtiNg9Ip7vTboaC2YljVEKCIdKOrjhGA+VNDxyUdLTyZoE5bwbQzYnUW4vDXw0IqaSBc/VyZFFI4GpzedC42+i6Titro6h5FdQOr6BW8nf4HCyWWtcw292Mtm6AHA2GfyrEYdfioiLunts5sogUdxAx8iXB8jRG2eTo4AuJJuXIDvHtpF0D9kUNRH6fWRC83yGsZJ+IulXkrYoj80omcALZIa9pKQ1ytusQQav1STtQmYC+5XXnUaWYqeRJa8La9LQOEqjmhvyGeVoHciM9hlg44h4jLx4yofJtuqhktaMvBztMuTxHFVKO98mT9I3IuKxiLix+hF2djwim5NmShpRjkOVEVY/oH2AxyJiekRcSlah9yNLWOtRqtFkIWDrElx/QikQKKvqFwC/b26WkDSfpP8mO0KfL++1Dvm9f5BsatsLODIiPlOOx8fKsfs12WRSfY4TI+KK/gwKzUpGtgU5Uqu6v6CkUyXdC3xH0jZ09EFUteAbgM83vNXjwFbKTuHNyM730RHxGplp/4Xsr1uc7OfqlpKhDmnatoyyD+0OsmN15bK/fwDrRsSTZJPTamW/86qjWW994M+lRA158bK9y2f/V3n/3jZjRjnvpOxz2oMs5KxKFoJ+Wp46sxQ8AM6l9C1EDqW+H3hN0sPk8T2UrAFBBrMzyNaJ28jz9h3HqfFcKefiNyXdBfwPcJKkpSPiLuDl8r1OJpuutiJbRz6jbBLdiizEXVDSdkdEfKIUeqv3737eHxFz7V85Ca4iS6SnkfMgVmx6zhDyx79ki9OyNJkh/ZwsoRxGZlZ3kSWExucuSlZhDyn31yEzwafJtvnm559Ltulu17BtaPmvTtLyCbJ0dwbZdPRdsoS0PZnhL0x2dJ5CjqI6hsyUDyOb8b7ejc+rKg1N27cl+zVuIjsxFy7bh5X/+wPXNTx/F+Cn5fYfSrqqhStn+c7IkR+LdJGuTcjS88iy//PIJr57yZL1SWSNaBmyZnYpWQKeh2waafU5Ox+wY9O2KcDa5fYOwFfK7YPJQs2mTc//INl0NIpsIhlNNldeDnys6blrkSNjtu1G2oaSGeqwpu0LkZ3gImtmXyzbvkUG8PeQTTMnl/PpU8Cp5Tlbk5ndI2Rfz5qdnUs9PIZDG86RIeX/2HK8fg18tezz8oZzdQrZlFS9x1Ll/9XluZeSAXax6rvo5Hxfqum47trJ7/rA8rmHk32mY8r39BBwdHnekcAF5fa+wDnl9uZkTeNqslmuOQ1DenXOtfqkHsx/ZPvgV8gq4SwnUgv2N8uXRGZyB5Ht/BuQmdKVVYZDZsSnlNsLAjuU21uQVf87yVLLEGBk03sPa9xvOdk2LT/UlRqetzrwHeCb5f4HyU77xcnmrSnk5JvFyIxzh3L7dOBT5TUblce26MZx6PRHXT7THWRn3OHlh7FW03NGk8FwfLl/BrBXub0TMLYfvqczy/HYl5zrsCNZYvt/ZGZ3IxmQDgQWGIDzdHFKsCz3ry/nzWfJwsVxDefIkWTT2y/J9v0vkbU6yCD/0XL7OLI5Z1J5fzXts9vnP9mnsRDZ7PlFYHjZvg5ZCHug4Rydn8wgLyrn73XlfFqKHJmzFZlZXksJWOW87fdCGllbgswHrivHdbGy7VCyQLB4uf8zSuGHLKj8otxeoRzjT3b2e288ruU385/l9hrAMtXvlPydP1j2Uw32GE0WXv9ABqJp5fkrk60Jo8qxnwisUh57T78fp1af4O+mv+YvtYX7WaX6MsnIfw/w/nJ/x/IDr0rQ6wEPltuLkxn2kuX+1jRk9g2fobNg9F7gRLINfyQdJaldgN+RwXJcw/P3KRnIV8mawo/K9i/TkSEdRTa/DO/GZ76UHIramJ7vUIallm0HAj9seM5PydJUlelUtZ+DyBFGj1Y/qn7+ft5PBuqbyIxuODAdOKo8vuAAnCONmcvnyNL1CHKU0flk09fPyNE/65AZ8TzkzOMbgP9oeP385f93gePK7dHAmOZ90sPCERkcrqKUismMcFy5fQJwWNPzR5fvfNeS3hOAE8pjxwPfKbd3AN7bSfq6XRqm81ryPOU8u6l8xxuW7UeS8wfGlPvbkAMcNmm4f3e5vTTwQA/SUZ23KzZ+N+Rvb+vyfhd38rr1yUJjVch7lewrhSwI7F5uV/lB9bweHafZ/c3NfRJva+yojXKU+/h+am4bVa4XdJRyhMO3yR8zZGllONkJCllKXYQMJES2Qc4rafuIeK48vlh57PrIkTNvK59hlmGWETGNHCs9nCyBHlM6DlcmS5wnA0+Xvoj5yFLnXhFxYnnN+srRMfcDryrnQ3wnIs6Ljjbartxd9otytNDJZKZ3LfC/kjYgS5APqUycKsdkazomB0X5LKeRQ1zXi4g9IuLtdvLetkk3ihwq+xOy1rVi+XwbRMQ3y+N/7+s+6pSO++blGt4iS5T3kB2f55IjyvaIiKci4m6yU3I9stT5PGUCl6QJwDfLOX49HefVyxExvZyq1YTIiB4OH40cnfQAOdptCJkBf005WewlYI/S8fu50lb+OllD+0VkO/4q5BIpS5O1i/PL+15VztnGfUVn53YXaXv7GEraopx3HyGbCvcj++cOkzSOzHRfpmMe0T3kgIVqlYXrgOnK2d7/As4sv4fq/Wvz0oZjOowyIqncX5NsPZgGLC/pGkknSDpPOeN9DXJ01FKSdijp26+89tMRUfU5VKP6ZvbmOM2O126i/5ZLqH7c1ckpab7IyT37kO3al5JV8tWBKyTdFxFXlpEL48iSymuS7iM7yydHdsgdBTylnNj3W7IE/Y59ziZd65LV/TFks8n/kYFmLNkOfSlZdR1R0vdRst9hc0kbluc+RlatfxM5BLGnfgAcqZwRvjD5Y/xCRPxdudzD+sBrZR/rkMHjGXI01ArA9Hjn2kIvls/2jpFY/RHki2vJJrS7SqfiY/30vrMonyEaf9wlM1ot8iqOfycz3G9EDm9E0p8lTYiI6mpnV5Dt0J9TLsb3GUknkDXPcyI7ZW8lM6S3lePVo8BQArHIvro9yTb+YWRJ/DyyT2lRsjnyDTJz+yBZW92SDMBXS1qJ7A+8igx6T/ckHd1I59rAm5FrOx1KBvwfS5pCNrnuSAbUTwHfJDPglSU9FDmX50VyQMsiEfFiRGxb3ndIRJzauK+u8hBJy5PH5jXye5xHORJwIjkRc2Gy5rQMebwOJn+vp5M17rvIju6dyWYmIoe4D4z+qpL47x1V4hHkuPpLy7b/JH9MS5Kll7vIauf/lMdPoDThlPubk5nq/P2QnkXJH+EEcpz//WQH89lkk1L1g6+adK4hq8ErktXta4D1++nYTCzpWJlscqjaUdcmh+gtQ9Y2fkuWeq8rx2rrdn+vA3TujKBc953sKL+O7FBesHxnx1L6QMgM7YaG1y5DNkdUjy9IaXPvw3lc2/RE9iFMJEe4LUkWIvYpj11Mttu43H2OAAAORElEQVQPa3j+ImRwqPq7NgJWaMExXAhYudyuMtdFy3l3cNl+ENlpPrqc65eRnedHkjXcJar36uT9hzbcVt22ptd8nRwRBznj+RqyhlwNQNm74fsfWZ5/Wtk2jNIv0q4/Nzf1I0mfBg6KHAq6HPChUlp6L/nj3wh4PSLWI9v5tyml6J8Bu5UaBRFxU0QcHDk2vHrv3n5XI8k2z3Mi4g9k6WQ4WY0dS2bYQ4AtJB1Hjp65JyL+HBFfjojtIuLOXu672Q/J9vXHyZO/mrtwL1mzeCMifkJ2EB8TEduQnXnDO3mvdyV1LPzWuG0VST8G/pvMPCIi1iJLuDPImuSlZIZcrQP0M2DBMpx0IllDOJCcS0BE/D0iXlbTMibdSF/jXJ0ZjduarEQOg74/srnjh+QQ7GFkoWRDYGHlshUTyWbS54HHI+LViLg1Ip7orGl2dulTJ5MFy+3hZCZ8etn0MNm882nyXH+hbN8HeDQiXiZr9SuQHeYXkoWV58sxeKlxH6XWPkM5h4YouXjDcfoADdMKGtK5MmUYMtkXcj050vAFMriuWR47hRweuxxlUUhy1eTnqmbI7h6n/uQg0b+mkIvZfZT8oTxPNiONJE/Cf5DNOZAjPER2RD1Ajgp6q/HNGk+K6H2T2DByan51Ij5EZjZTyZNxBbIz9LCSvj2jqZ+jv0TExWQNZXGyVLmVpJ+Sx+2XdPyIHwR2Vq5H9R7yh/OupbzWwXmSFo7Sf1MFC0nfIDtQH4uIo8hM/kPlpf8m+yI2ioinyAlTm0r6PFlz2Ic8Zt+IiH9HxPnRMYcAeOcyJl2kb2hjcCjbFpZ0pKT7yWVgqgX2qiA3GniCPHcgS+3Vsi/XkrXWpcmRaN+MiLUj4r+iqf+qBKNOmwgbMucuJws2vNebEXEm2UQ0jixcTCb7dD5JzneBHL22T2nWXYXs37o1Ip6MiJubf2udpO+O0oRbrX91oKQHyIz9YOXcD+jIX68jAwWR/VkLA+MkLUye+wuVJsLjImKtiDgwcr5IYyDql/7S3nCQ6Ecls7+WrCU8S5YaXiZLXQuTJZsnJT1KZtQTImeOEhF/7OT9+uOkeJpshqgmej1DdsaNJmsTr5CzPzePiBOi9W2dvyFHCf2BDEy/Ia9TcEJDZvYPstN6h4jYLVrYUdwqpeS3lXIJkifJzH9X5eKIt5FzDyDnxVTt05CzaOcvr3uT7Cv6s3KQwQlkCX0PcvTblIg4Pjquk9Grjvt45xLX65a+jKrG+UWyQFMNtKi+o3vIkUL7VLsuad2klMAPIGsZT0fpw+ppbbikabaTBUs/V7WOGOSyE1uRHcyjyN/hQmS7P2SQ+ArZJ7ZzRNwQHX1csxw/SZsrF+irfo+X0LHI5jJkX8e4cox2J2uANATEW4APKhfBXIFsnptBFgYmAp+LiBcil9h5e/BCT45VS82uPcp/vWoXvZgsHR5U7t9IzmcYSbbNtnxsfVN6liP7QK4nm3YOJ9cuasexWR84uZPtYgCGHw/wZ92fHN/+yXIO/IZsStuA7HfZozzvDmD7htf9hJwUuSY5D6TquxJNE9XK9p4MC+1sAuOHyKB1OdkntBc5/LkaHro+MKXh+TuTme8K5fPdQ2bke9CHfpDy3v0xWXA02QfxBHBo2fZdsh9ilnkEzDqfYYHy2ap5RhPKb3rH8p2uSE7uG1KO3ZRy7O4maxNLl9etAXy23N4c+BE56OSA5jxgMJ/7bU/AnPhHVrUfp8wMJpcQXrbpOZ3OZ2hhmpYih3TO2+7j00naBu0PpI+f6zSyFndByXin0THO/cCSobynZHaXNLzuvWTH9G3kqJslm953SGeZfQ/Ttjql45i8it6rdIy7F1n6XZ+OMf53AluW278AvtyQ1vf1MS39OVnwIw3v8zjwtXK7s+DYPIGw6ohejay1LUDWuvcmS/5XATuV5/yx/J7WI1sPvtD0XvOWAPI7OuYvjOhq/4P1z0NgWyAi/qBcb+atcn+WS4bGAC8ZHdmMNHDD5rrQ3P5d/Z8DnUaWOi+IiGuVFz/6MJnJ3U5mItVaUscqlzOfHjk/4OzyN4vunjtquiSppCXISWEHkQHrBUlHRcQ1kh4v24iIUC5iuAU55HIG2WTzVbJGehvZjEpJ67TO9jebtDUO3d4e+LukK8mAMZ0cSvtLsgZ2OXk9iXnINcpeA34Qudou6rjQ1kbkPIzby/21ovTRRFn7jMyY3zFcukp3Q3r+SjYbbU8OWT2IbAY8P/J6FpQ07UoGrXso/UiStieX5T655AMzyOalpyMHtHS2v0HNfRItEhG3RcQd7U7HYBRFu9PRapGrDf+CrDVAZjTrlcceJNvMN4uIv5FDnkc1v0djp3J3NA92UFnUT9J4cnjncGCriNiaLDEfXJ5+I5kpVi4nJ31VS2//iGwGg5xncz1NuhMg1PrJguMa0vNK0/GI6FjEr3lBy4UkfVrSUuTQ1N8Bv4uIDSPiXrL5r1o1GnI1gI+S8xpOJlenvZ08nrdQ5jOQTVXP9NMglPZod1VmTv7jXVKd9F9Lz4GlyBFlQ8k+qRvJlXQhh7tu3MJ970RmViuRGdoxJT1HkM0ll5HDPseRo+4epGGJFTKzXrkf0jHLcjfkqKhtG9L5CGUdsLLtJnJgR3X/GODMcvsTJd3VqLhqjafhNC1u2Y10DSGbAh8j+xHPoWMk1HV0NMnNS17DYtGG10+mNDOVfc8yr2JO+HNzUwtFOXts7hURz5ShvFeQo4EaS7DvKI0rr2/Rp6uqSVqFHF1zLln6XoG8hsiz5FyBeckx+tXlM/9IBqofSHoP2c7+65K+vfuSlkp0zCIfUdJ0Jjli6jl1XGnuDGB1STdExD/IUV+7lu2Qa3U9IumrEXGppJvJZbtfbtjPm+QSIdWxGBYRb1XHteH/KuSKrVuSfQ9bkQHrMeXSId8m+2NeL+l8IiJel3QjuWT3B8m5K/uU51T7fqm5SWtO4CBh1npHkh2xkyMvbPW2xqaXvgaIYio5rPnL5MzdR8nmk3+RAeB4cpLb6mSn+Uw6Lta0WZTx+Q3p63Y/Q3n+8GiaC1Ey5UPIvou7KJMFJY0kM9ujyIlkZ5HNSP8gJwseKOlEst9mS5omC1bpIzPlxol/85HH/C/AGSUwjIyIfyonr04ih/juHRF/k/TzKq0R8WtJB5FB4mpgM0mLlON3MPk9Xh65ltMsync5RxUO3Sdh1mIR8UxEfL8KEHrn5Tv7NUOJvFDQqWQH9QbkEhAPkpPcRI5GOonMhL9FNuMcGTkZ78lO3q87/QzLaxBMFiwl/J3KMXicXDhwJ+WM74skrRy5eOMdwD8j+4Ighybv0fC2fyWbBn9BBtndyOGwVRouZy7imoTZAGkY1dIfNYZapYnlh+RkxefIzuBR5ITOmRFxlqQrI5eFqNI224UiG5US/BbAIxHxpKRqsuAMMsOdSC4z8nMys+9ssuBTypVZGycL7ksOO50U2WE9pWm/XaVzGnBJadb6GDlSajuyBvJZ4MuSDiGb/jZqeN0ZwLmSfkc2L61AXrnwZUmnRcQpPUjDHMc1CbMBMsDt1OeQncH7RLoIWCcibi9peaFxlE9PM73yWZYGjpP0SbJD/JNkTeVwshS/Rym5/5WyJEbkemQTgW8ol8M+FHiq9EPcSXYEb1gCBPDOmdqzSeeq5HDTr5JDaF8iO+IfLsdjKNmBfwGwZmlGIiJ+TwaS3clre3+lBIjGZqzupmGO4yBhNgcqbfbHk81OVSfulKbnRB8D11rAx8nRSeeTQ2pvKZnuRcBapTP85+QqyJUjyRrFD8iazskN6XlLTYsS9iCNd5NNaE9GxFUlTSPLezxABo21SzPTM2StpaoZ3BwRe0eum3R/lZ5epGGOo7ksKJpZP1Guevp9cmLbtaWJ68mI+K6k1chaws/IEUdPkMNpp7c4TYuQ8xR2IDuQTwJOjYiJkvYgg+ZhZK1jvoi4pun1b1/bo5XpfDdxTcLMeiXaMFmwG2l6kbxmyralM/wZcs0lyPWlLgJejojfNAeI8vp3zUzogeKahJn1WpmhfAO5FtR85Eztb0fEbyVtTV4/5bcDnKYtySG1fyKH/14InN6c+c9tHdC95SBhZn0i6Vxy5NQ8ZOfwsZ0Fhv6YLNiDNO1K1hiuHYj9zckcJMysT0ptYraTBdulpxMC7Z0cJMysXw1kjWE26Wh7gJoTOEiYWb9wiX3O5CBhZma1PATWzMxqOUiYmVktBwkzM6vlIGHWDZI2lrRBw/0DJe3VzjSZDQQvFW7WPRuT1zv4PUBE/LitqTEbIB7dZHM1SVeQF7iZFzglIs4oy0kcR84efgHYn1zGegYwnbxC2WbkhWtOLEte/5i80tufgf0i4iVJvyWvxLYJsCCwf0TcJmlV4KfACLI2/4mIeGygPrNZT7i5yeZ2+0XEh4DxwCGSFiOvwfyJyOtAfyoippJB4PsRsWZE3Nb0HucBh0fE6uSKp0c3PDYsItYFvtSw/UAyIK1Z9vt0iz6bWZ+5ucnmdodI2qncXgaYANwa5VKe0XGJy06VK6otGBHVldfOJVdGrVxW/k8GxpbbdwD/JWlp4DLXImwwc03C5lqSNgY2Bz5cag33Avf1827+Xf7PoBTKIuLn5PUO/gVcK2nTft6nWb9xkLC52QLASxHxWrmAzvpk38RGkpYHkLRwee4rdHI9hHLZzZckfbRs2pOO6zl3StIKwBMRcSpwJbnMttmg5OYmm5tdDxwo6WHgUbJzejrZ5HRZuUrZNGAL4FfALyXtSHZcN9ob+HG5VOcTlMtidmEXYE9Jb5KX7zyunz6PWb/z6CYzM6vl5iYzM6vlIGFmZrUcJMzMrJaDhJmZ1XKQMDOzWg4SZmZWy0HCzMxqOUiYmVmt/w8v6gdWPDP96gAAAABJRU5ErkJggg==\n", - "text/plain": [ - "<Figure size 432x288 with 1 Axes>" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "ap_actions_labels = [x[0] for x in active_public_actions]\n", - "ap_actions_values = [x[1] for x in active_public_actions]\n", - "\n", - "plt.xlabel('actions')\n", - "plt.xticks(rotation='20')\n", - "plt.ylabel('Num filters')\n", - "plt.bar(ap_actions_labels, ap_actions_values)\n", - "plt.show()" - ] - }, - { - "cell_type": "code", - "execution_count": 18, + "execution_count": 18, "metadata": {}, "outputs": [ { @@ -1821,6 +1309,5130 @@ "active_public[active_public['af_actions'].fillna('log only').str.contains('disallow')]" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Filter activity" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Filter hits over the years" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " LogMonth Freq\n", + "0 2019-03-01 34309\n", + "1 2019-02-01 236606\n", + "2 2019-01-01 252668\n", + "3 2018-12-01 226287\n", + "4 2018-11-01 253233\n", + "5 2018-10-01 256438\n", + "6 2018-09-01 230354\n", + "7 2018-08-01 216045\n", + "8 2018-07-01 205477\n", + "9 2018-06-01 209374\n", + "10 2018-05-01 238235\n", + "11 2018-04-01 242857\n", + "12 2018-03-01 255431\n", + "13 2018-02-01 213548\n", + "14 2018-01-01 235705\n", + "15 2017-12-01 213359\n", + "16 2017-11-01 254671\n", + "17 2017-10-01 224244\n", + "18 2017-09-01 212790\n", + "19 2017-08-01 195593\n", + "20 2017-07-01 176778\n", + "21 2017-06-01 184406\n", + "22 2017-05-01 231250\n", + "23 2017-04-01 225176\n", + "24 2017-03-01 257081\n", + "25 2017-02-01 246199\n", + "26 2017-01-01 256925\n", + "27 2016-12-01 226680\n", + "28 2016-11-01 258655\n", + "29 2016-10-01 254070\n", + "30 2016-09-01 238406\n", + "31 2016-08-01 192681\n", + "32 2016-07-01 171567\n", + "33 2016-06-01 201867\n", + "34 2016-05-01 294276\n", + "35 2016-04-01 319474\n", + "36 2016-03-01 360327\n", + "37 2016-02-01 366637\n", + "38 2016-01-01 372907\n", + "39 2015-12-01 307003\n", + "40 2015-11-01 338129\n", + "41 2015-10-01 264966\n", + "42 2015-09-01 272765\n", + "43 2015-08-01 215203\n", + "44 2015-07-01 207626\n", + "45 2015-06-01 236916\n", + "46 2015-05-01 250012\n", + "47 2015-04-01 201602\n", + "48 2015-03-01 188296\n", + "49 2015-02-01 163529\n", + "50 2015-01-01 163552\n", + "51 2014-12-01 137314\n", + "52 2014-11-01 154933\n", + "53 2014-10-01 165732\n", + "54 2014-09-01 132150\n", + "55 2014-08-01 93636\n", + "56 2014-07-01 80837\n", + "57 2014-06-01 94967\n", + "58 2014-05-01 132788\n", + "59 2014-04-01 129260\n", + "60 2014-03-01 157123\n", + "61 2014-02-01 146198\n", + "62 2014-01-01 151970\n", + "63 2013-12-01 131054\n", + "64 2013-11-01 156195\n", + "65 2013-10-01 163029\n", + "66 2013-09-01 122300\n", + "67 2013-08-01 117010\n", + "68 2013-07-01 113163\n", + "69 2013-06-01 109264\n", + "70 2013-05-01 163644\n", + "71 2013-04-01 146456\n", + "72 2013-03-01 156797\n", + "73 2013-02-01 196511\n", + "74 2013-01-01 169755\n", + "75 2012-12-01 147379\n", + "76 2012-11-01 186991\n", + "77 2012-10-01 204204\n", + "78 2012-09-01 160734\n", + "79 2012-08-01 122418\n", + "80 2012-07-01 110906\n", + "81 2012-06-01 123762\n", + "82 2012-05-01 178005\n", + "83 2012-04-01 173853\n", + "84 2012-03-01 184071\n", + "85 2012-02-01 197130\n", + "86 2012-01-01 192057\n", + "87 2011-12-01 175397\n", + "88 2011-11-01 211174\n", + "89 2011-10-01 224586\n", + "90 2011-09-01 171945\n", + "91 2011-08-01 133965\n", + "92 2011-07-01 133186\n", + "93 2011-06-01 143617\n", + "94 2011-05-01 173431\n", + "95 2011-04-01 160696\n", + "96 2011-03-01 177539\n", + "97 2011-02-01 173222\n", + "98 2011-01-01 181135\n", + "99 2010-12-01 157738\n", + "100 2010-11-01 195329\n", + "101 2010-10-01 206730\n", + "102 2010-09-01 174706\n", + "103 2010-08-01 138323\n", + "104 2010-07-01 127687\n", + "105 2010-06-01 146164\n", + "106 2010-05-01 206822\n", + "107 2010-04-01 197381\n", + "108 2010-03-01 217092\n", + "109 2010-02-01 206380\n", + "110 2010-01-01 193376\n", + "111 2009-12-01 166506\n", + "112 2009-11-01 210227\n", + "113 2009-10-01 226865\n", + "114 2009-09-01 213208\n", + "115 2009-08-01 162281\n", + "116 2009-07-01 160993\n", + "117 2009-06-01 179176\n", + "118 2009-05-01 211879\n", + "119 2009-04-01 179152\n", + "120 2009-03-01 99008\n" + ] + } + ], + "source": [ + "# filter hits per month (all filters) (data quarry from 05.03.2019, that's why hitcount Mar 2019 is so small)\n", + "# Mar 2009 is also lower, since the first filter was introduced on 17.3.2009 and not at the beginning of the month\n", + "df_hits = pd.read_csv(\"quarry-34014-how-many-abuse-filter-hits-have-been-there-per-month-en-wiki-run346197.csv\", sep=',')\n", + "df_hits['LogMonth'] = pd.to_datetime(df_hits['LogMonth'], format=\"%Y%m\")\n", + "\n", + "with pd.option_context('display.max_rows', None, 'display.max_columns', None):\n", + " print(df_hits)\n" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "<Figure size 432x288 with 1 Axes>" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "plt.xlabel('Month')\n", + "plt.ylabel('Num hits')\n", + "plt.plot(df_hits['LogMonth'],df_hits['Freq'], 'bo')\n", + "plt.show()\n", + "\n", + "#TODO: why is the peak there? there's an upward tendency" + ] + }, + { + "cell_type": "code", + "execution_count": 40, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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ElAeeJ7na2x0deTImUiKeXOJqqgIVKrWVlcTE9OPTUx440imtWvPqbnZ1eCglMtNvXCmUq6WLfNeT5Fc/H2Mnr/rfXt73EkQt6KKV//4j/+oT3ziE/roRz+qmpqayfu/8pWvFPWPPPLII/re976n//iP/9Bll12myy67TKlUSm+++ebkbKihoSE1NjbqyiuvjHSsUFdXV14vryVLlqimpka1tbVF/b+GzUIOCxmk8s3hutKtt+r8Sc9UH4zBQUe33VYzbR8MK4+FNP8sQe64ZOXxIEe+C3PM53kedIa4zZRl/XrvI64cceySZeW4kMNWBql8c3z847MtFXb08Y9fOu1rYLk+HvNlIcd0GV54YbqlTo727HF02WXhZbb6eMQhjBzz+ftYzo9HEjNI5ChkJUcxitpt8Etf+pLS6bTGx8f1+9//fvKjGN3d3XryySf14x//WFdcccXk/XfccYe++93vSpJeeukl/eY3v9FHPvKRWMYAS4rpg1FuothxCbZU4vM8CdglC4gGuwCWN7/f59690qOPerd9fdI0182REPx9BOJX1MyrX//61/r1r39d8g9/7bXX9OCDD6qlpUUf+9jHJEmXXnqpfv7zn+ub3/ym7r77bl1//fVKp9PauXPn5M5/UY8BpXJd6cCBqvPN0oNtQF5pjT6j3HEJdlTa8zwp2CULiA4bmpS3IJrkBzkrHQvD30cgfkUVr1asWKF3331X9fX1Jf3whoYGuTOUoa+55hq98MILJsaAUkxNGU5f0FQ5uCU1mcxUAadQNuuNlxNOBsrbTIXeSnueJwVFRSBa7AKImcSxhBsz4+8jEL+iile1tbVavXq1PvWpT+X1vLqwsTlQCfJnCTmhzBLq6JitD4Y3Xk44GShfsxV6K+15nhQUFQEgfsxKt4e/j0D8iup5tWrVKt1999265pprdPnll09+AJUmij49ldYHg5OB8pTfG8LR2JiT1xtCqqzneVL4RcVUwaUtiooAEB36QtrD30cgfkXNvPrqV78adg4gEaKaJVRJfTCYgVOeil0OWinP86Twi+cX75JFUREAosKsdHv4+wjEr6ji1de+9rVp7//KV74SaBjAuihnCVVKHwxOBspTsSfelfI8T5JKKp4DYaPhNuaDWek28fcRiFdRxavf//73k/89Pj6u3bt3a+3ataGFAqxillA4OBkoP5x4hyeK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\n", + "text/plain": [ + "<Figure size 1440x480 with 1 Axes>" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# The same plot as above, but \"zoomed in\", so we can actually read the values for single months\n", + "fig, ax = plt.subplots(num=None, figsize=(18, 6), dpi=80, facecolor='w', edgecolor='k')\n", + "\n", + "xfmt = matplotlib.dates.DateFormatter('%Y/%m')\n", + "ax.xaxis.set_major_formatter(xfmt)\n", + "\n", + "locator = matplotlib.dates.MonthLocator(bymonth=[1,5,9])\n", + "ax.xaxis.set_major_locator(locator)\n", + "\n", + "plt.xlabel('Month')\n", + "plt.ylabel('Num hits')\n", + "plt.plot_date(df_hits['LogMonth'],df_hits['Freq'], 'bo')\n", + "#plt.xticks(matplotlib.dates.date2num(df_hits['LogMonth']))\n", + "plt.setp(plt.gca().xaxis.get_majorticklabels(),\n", + " 'rotation', 60)\n", + "plt.grid(color='0.7', linestyle='-', linewidth=0.2)\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Explore the peak in filter hits" + ] + }, + { + "cell_type": "code", + "execution_count": 42, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "10.68.16.39 1689\n", + "37.113.52.15 1249\n", + "95.152.44.52 1133\n", + "5.165.178.194 715\n", + "94.181.143.10 697\n", + "95.152.42.158 674\n", + "5.166.250.109 559\n", + "5.166.224.152 556\n", + "Acheter cialis 533\n", + "37.113.51.96 473\n", + "93.124.7.25 430\n", + "5.167.114.39 317\n", + "93.124.34.23 307\n", + "36.250.176.0 291\n", + "Wwekik2222kdjdj 279\n", + "37.113.37.111 274\n", + "94.181.170.143 247\n", + "Theadityapratap 239\n", + "94.181.156.128 229\n", + "93.124.46.78 222\n", + "Achat cialis 222\n", + "93.124.28.116 213\n", + "176.97.116.140 202\n", + "5.165.186.39 192\n", + "Acquistare cialis 190\n", + "93.124.74.221 187\n", + "AbhiJahazi 186\n", + "37.113.34.32 186\n", + "37.113.28.187 185\n", + "64.62.219.98 180\n", + " ... \n", + "Dharmendra780 1\n", + "Robertdenningraider13 1\n", + "SLCHT 1\n", + "2601:153:700:6870:B8D9:5791:192D:1DAE 1\n", + "59.96.9.214 1\n", + "207.32.26.5 1\n", + "208.61.1.124 1\n", + "149.126.106.19 1\n", + "121.216.118.139 1\n", + "HegerLoyneszhFG 1\n", + "2607:FB90:1903:33F9:4C08:6E2:70C7:20F6 1\n", + "Clutchmaster163955 1\n", + "86.160.200.85 1\n", + "38.78.194.51 1\n", + "69.174.87.60 1\n", + "PujolBoatmanJvfh 1\n", + "89.240.83.117 1\n", + "MarrowWylyLRFj 1\n", + "173.31.204.16 1\n", + "PettigrewSparacioETJg 1\n", + "Ednopsniwagn 1\n", + "Kevinfigs 1\n", + "162.228.50.214 1\n", + "LoeberArelUVURo 1\n", + "50.82.26.116 1\n", + "Kaileefiles 1\n", + "Bestraight 1\n", + "Dexon Software 1\n", + "203.59.81.156 1\n", + "119.154.88.171 1\n", + "Name: afl_user_text, Length: 139586, dtype: int64" + ] + }, + "execution_count": 42, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df_jan2016 = pd.read_csv(\"quarry-37494-abuselog-entries-en-wiki-in-january-2016-run389216.csv\", sep=',')\n", + "\n", + "# Number of hits per editor\n", + "df_jan2016['afl_user_text'].value_counts() #TODO intersect users with actions/pages" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "37.113.52.15 is a Russian IP (whois --> netname: ERTH-PENZA-PPPOE-16-NET)\n", + "95.152.44.52 too (whois--> netname: RU-PENZA-VT-DSL-200901)" + ] + }, + { + "cell_type": "code", + "execution_count": 49, + "metadata": {}, + "outputs": [ + { + "ename": "AttributeError", + "evalue": "'DataFrame' object has no attribute 'value_counts'", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mAttributeError\u001b[0m Traceback (most recent call last)", + "\u001b[0;32m<ipython-input-49-7bf774e7d58b>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[1;32m 1\u001b[0m \u001b[0;31m# Try to intersect users with actions/pages\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 2\u001b[0;31m \u001b[0mdf_jan2016\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'afl_user_text'\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m'afl_action'\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mvalue_counts\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", + "\u001b[0;32m~/uni/ma-arbeit-filters/src/env3/lib/python3.6/site-packages/pandas/core/generic.py\u001b[0m in \u001b[0;36m__getattr__\u001b[0;34m(self, name)\u001b[0m\n\u001b[1;32m 4374\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_info_axis\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_can_hold_identifiers_and_holds_name\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mname\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 4375\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mname\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 4376\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mobject\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m__getattribute__\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mname\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 4377\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 4378\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0m__setattr__\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mname\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mvalue\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", + "\u001b[0;31mAttributeError\u001b[0m: 'DataFrame' object has no attribute 'value_counts'" + ] + } + ], + "source": [ + "# Try to intersect users with actions/pages\n", + "df_jan2016[['afl_user_text', 'afl_action']].value_counts() " + ] + }, + { + "cell_type": "code", + "execution_count": 51, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>afl_id</th>\n", + " <th>afl_filter</th>\n", + " <th>afl_user</th>\n", + " <th>afl_user_text</th>\n", + " <th>afl_ip</th>\n", + " <th>afl_action</th>\n", + " <th>afl_actions</th>\n", + " <th>afl_var_dump</th>\n", + " <th>afl_timestamp</th>\n", + " <th>afl_namespace</th>\n", + " <th>afl_title</th>\n", + " <th>afl_wiki</th>\n", + " <th>afl_deleted</th>\n", + " <th>afl_patrolled_by</th>\n", + " <th>afl_rev_id</th>\n", + " <th>afl_log_id</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>206541</th>\n", + " <td>14364756</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707056949</td>\n", + " <td>20160119015147</td>\n", + " <td>0</td>\n", + " <td>Eric_Gordon</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>206547</th>\n", + " <td>14364762</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707057055</td>\n", + " <td>20160119015250</td>\n", + " <td>0</td>\n", + " <td>Members_of_the_111th_United_States_Congress</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>206553</th>\n", + " <td>14364768</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707057079</td>\n", + " <td>20160119015300</td>\n", + " <td>0</td>\n", + " <td>Greenon_High_School_(Springfield,_Ohio)</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>206564</th>\n", + " <td>14364779</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707057104</td>\n", + " <td>20160119015316</td>\n", + " <td>0</td>\n", + " <td>Maggie_Anderson</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>206565</th>\n", + " <td>14364780</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707057139</td>\n", + " <td>20160119015330</td>\n", + " <td>0</td>\n", + " <td>Josh_Blackie</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>206568</th>\n", + " <td>14364783</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707057194</td>\n", + " <td>20160119015402</td>\n", + " <td>0</td>\n", + " <td>Tenacious_D_discography</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>206601</th>\n", + " <td>14364816</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707057523</td>\n", + " <td>20160119015652</td>\n", + " <td>0</td>\n", + " <td>Operation_Pawan</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>206602</th>\n", + " <td>14364817</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707057586</td>\n", + " <td>20160119015720</td>\n", + " <td>0</td>\n", + " <td>Catholic_Central_School_(Springfield,_Ohio)</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>206603</th>\n", + " <td>14364818</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707057636</td>\n", + " <td>20160119015740</td>\n", + " <td>0</td>\n", + " <td>Dane_Richards</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>206610</th>\n", + " <td>14364825</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707057791</td>\n", + " <td>20160119015852</td>\n", + " <td>0</td>\n", + " <td>Milford_High_School_(Ohio)</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>206657</th>\n", + " <td>14364872</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707058341</td>\n", + " <td>20160119020305</td>\n", + " <td>0</td>\n", + " <td>Mitt_Romney_presidential_campaign,_2008</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>206660</th>\n", + " <td>14364875</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707058410</td>\n", + " <td>20160119020335</td>\n", + " <td>0</td>\n", + " <td>Ion_Dincă</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>206664</th>\n", + " <td>14364879</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707058432</td>\n", + " <td>20160119020351</td>\n", + " <td>0</td>\n", + " <td>Hunter_(band)</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>206672</th>\n", + " <td>14364887</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707058511</td>\n", + " <td>20160119020429</td>\n", + " <td>0</td>\n", + " <td>Celebrity_Solstice</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>206674</th>\n", + " <td>14364889</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707058531</td>\n", + " <td>20160119020437</td>\n", + " <td>0</td>\n", + " <td>Wassim_Almawi</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>206675</th>\n", + " <td>14364890</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707058568</td>\n", + " <td>20160119020457</td>\n", + " <td>0</td>\n", + " <td>Öpir</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>206682</th>\n", + " <td>14364897</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707058677</td>\n", + " <td>20160119020545</td>\n", + " <td>0</td>\n", + " <td>EFG-Hermes</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>206686</th>\n", + " <td>14364901</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707058737</td>\n", + " <td>20160119020616</td>\n", + " <td>0</td>\n", + " <td>Runaway_production</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>206688</th>\n", + " <td>14364903</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707058756</td>\n", + " <td>20160119020628</td>\n", + " <td>0</td>\n", + " <td>Miguel_Angel_Corzo</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>206694</th>\n", + " <td>14364909</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707058834</td>\n", + " <td>20160119020706</td>\n", + " <td>0</td>\n", + " <td>Wayne_Allyn_Root</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>206702</th>\n", + " <td>14364917</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707058958</td>\n", + " <td>20160119020748</td>\n", + " <td>0</td>\n", + " <td>Tenderloin,_San_Francisco</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>206705</th>\n", + " <td>14364920</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707058999</td>\n", + " <td>20160119020803</td>\n", + " <td>0</td>\n", + " <td>North_Arm_Cove,_New_South_Wales</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>206707</th>\n", + " <td>14364922</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707059084</td>\n", + " <td>20160119020832</td>\n", + " <td>0</td>\n", + " <td>Case_39</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>206709</th>\n", + " <td>14364924</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707059100</td>\n", + " <td>20160119020838</td>\n", + " <td>0</td>\n", + " <td>CI_Records</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>206710</th>\n", + " <td>14364925</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707059123</td>\n", + " <td>20160119020846</td>\n", + " <td>0</td>\n", + " <td>Southern_Weather</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>206711</th>\n", + " <td>14364926</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707059145</td>\n", + " <td>20160119020853</td>\n", + " <td>0</td>\n", + " <td>Tang_King-shing</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>206719</th>\n", + " <td>14364934</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707059200</td>\n", + " <td>20160119020911</td>\n", + " <td>0</td>\n", + " <td>Walled_Lake_Northern_High_School</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>206770</th>\n", + " <td>14364985</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707059872</td>\n", + " <td>20160119021422</td>\n", + " <td>0</td>\n", + " <td>American_Biographical_Institute</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>206771</th>\n", + " <td>14364986</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707059900</td>\n", + " <td>20160119021441</td>\n", + " <td>0</td>\n", + " <td>Howayek</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>206776</th>\n", + " <td>14364991</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707059953</td>\n", + " <td>20160119021510</td>\n", + " <td>0</td>\n", + " <td>Fountain_House_(self-help_program)</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>...</th>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " </tr>\n", + " <tr>\n", + " <th>219496</th>\n", + " <td>14377713</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707201381</td>\n", + " <td>20160119220627</td>\n", + " <td>0</td>\n", + " <td>Armed_Forces_Revolutionary_Council,_Ghana</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>219501</th>\n", + " <td>14377718</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707201517</td>\n", + " <td>20160119220726</td>\n", + " <td>0</td>\n", + " <td>Jason_Beghe</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>219503</th>\n", + " <td>14377720</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707201547</td>\n", + " <td>20160119220741</td>\n", + " <td>0</td>\n", + " <td>Tori_&_Dean:_Home_Sweet_Hollywood</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>219504</th>\n", + " <td>14377721</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707201583</td>\n", + " <td>20160119220757</td>\n", + " <td>0</td>\n", + " <td>Mark_Klein_(singer)</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>219505</th>\n", + " <td>14377722</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707201635</td>\n", + " <td>20160119220818</td>\n", + " <td>0</td>\n", + " <td>J._J._Johnson_(running_back)</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>219509</th>\n", + " <td>14377726</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707201665</td>\n", + " <td>20160119220832</td>\n", + " <td>0</td>\n", + " <td>Isha_Sesay</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>219537</th>\n", + " <td>14377754</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707201816</td>\n", + " <td>20160119220940</td>\n", + " <td>0</td>\n", + " <td>Chinaman_(term)</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>219548</th>\n", + " <td>14377765</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707201904</td>\n", + " <td>20160119221017</td>\n", + " <td>0</td>\n", + " <td>Saint_Vincent's_Catholic_Medical_Center</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>219553</th>\n", + " <td>14377770</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707201989</td>\n", + " <td>20160119221102</td>\n", + " <td>0</td>\n", + " <td>The_O2</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>219555</th>\n", + " <td>14377772</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707202038</td>\n", + " <td>20160119221119</td>\n", + " <td>0</td>\n", + " <td>San_Bernardo,_Chile</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>219562</th>\n", + " <td>14377779</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707202058</td>\n", + " <td>20160119221129</td>\n", + " <td>0</td>\n", + " <td>Dry_powder_inhaler</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>219567</th>\n", + " <td>14377784</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707202078</td>\n", + " <td>20160119221138</td>\n", + " <td>0</td>\n", + " <td>Calvin_Prasad</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>219575</th>\n", + " <td>14377792</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707202245</td>\n", + " <td>20160119221243</td>\n", + " <td>0</td>\n", + " <td>Wireless_Application_Protocol</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>219621</th>\n", + " <td>14377838</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707202723</td>\n", + " <td>20160119221607</td>\n", + " <td>0</td>\n", + " <td>Trevor_Blackwell</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>219623</th>\n", + " <td>14377840</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707202768</td>\n", + " <td>20160119221625</td>\n", + " <td>0</td>\n", + " <td>Bill_Millin</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>219626</th>\n", + " <td>14377843</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707202802</td>\n", + " <td>20160119221639</td>\n", + " <td>0</td>\n", + " <td>Oscar_Marzaroli</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>219627</th>\n", + " <td>14377844</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707202809</td>\n", + " <td>20160119221643</td>\n", + " <td>0</td>\n", + " <td>Harsh_Mahajan</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>219630</th>\n", + " <td>14377847</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707202830</td>\n", + " <td>20160119221652</td>\n", + " <td>0</td>\n", + " <td>Lindsay_Moran</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>219647</th>\n", + " <td>14377864</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707203116</td>\n", + " <td>20160119221839</td>\n", + " <td>0</td>\n", + " <td>IndyGo</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>219654</th>\n", + " <td>14377871</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707203152</td>\n", + " <td>20160119221849</td>\n", + " <td>0</td>\n", + " <td>Bobby_Reid_(American_football)</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>219660</th>\n", + " <td>14377877</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707203257</td>\n", + " <td>20160119221928</td>\n", + " <td>0</td>\n", + " <td>Universidad_Veracruzana</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>219668</th>\n", + " <td>14377885</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707203342</td>\n", + " <td>20160119222006</td>\n", + " <td>0</td>\n", + " <td>Jeff_Denham</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>219680</th>\n", + " <td>14377897</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707203483</td>\n", + " <td>20160119222059</td>\n", + " <td>0</td>\n", + " <td>Salma_de_Nora</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>219685</th>\n", + " <td>14377902</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707203533</td>\n", + " <td>20160119222116</td>\n", + " <td>0</td>\n", + " <td>Vinappris</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>219711</th>\n", + " <td>14377928</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707204116</td>\n", + " <td>20160119222504</td>\n", + " <td>0</td>\n", + " <td>Syracuse_Orange_men's_basketball</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>219717</th>\n", + " <td>14377934</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707204214</td>\n", + " <td>20160119222544</td>\n", + " <td>0</td>\n", + " <td>Adaptations_of_Little_Red_Riding_Hood</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>219720</th>\n", + " <td>14377937</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707204366</td>\n", + " <td>20160119222641</td>\n", + " <td>0</td>\n", + " <td>Elizabeth_Knox</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>220106</th>\n", + " <td>14378323</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707210669</td>\n", + " <td>20160119231005</td>\n", + " <td>0</td>\n", + " <td>Raleigh_Bicycle_Company</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>220108</th>\n", + " <td>14378325</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707210718</td>\n", + " <td>20160119231021</td>\n", + " <td>0</td>\n", + " <td>Archaic_(comics)</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>220124</th>\n", + " <td>14378341</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>10.68.16.39</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707210947</td>\n", + " <td>20160119231206</td>\n", + " <td>0</td>\n", + " <td>Nandigram_violence</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "<p>1689 rows × 16 columns</p>\n", + "</div>" + ], + "text/plain": [ + " afl_id afl_filter afl_user afl_user_text afl_ip afl_action \\\n", + "206541 14364756 80 0 10.68.16.39 NaN edit \n", + "206547 14364762 80 0 10.68.16.39 NaN edit \n", + "206553 14364768 80 0 10.68.16.39 NaN edit \n", + "206564 14364779 80 0 10.68.16.39 NaN edit \n", + "206565 14364780 80 0 10.68.16.39 NaN edit \n", + "206568 14364783 80 0 10.68.16.39 NaN edit \n", + "206601 14364816 80 0 10.68.16.39 NaN edit \n", + "206602 14364817 80 0 10.68.16.39 NaN edit \n", + "206603 14364818 80 0 10.68.16.39 NaN edit \n", + "206610 14364825 80 0 10.68.16.39 NaN edit \n", + "206657 14364872 80 0 10.68.16.39 NaN edit \n", + "206660 14364875 80 0 10.68.16.39 NaN edit \n", + "206664 14364879 80 0 10.68.16.39 NaN edit \n", + "206672 14364887 80 0 10.68.16.39 NaN edit \n", + "206674 14364889 80 0 10.68.16.39 NaN edit \n", + "206675 14364890 80 0 10.68.16.39 NaN edit \n", + "206682 14364897 80 0 10.68.16.39 NaN edit \n", + "206686 14364901 80 0 10.68.16.39 NaN edit \n", + "206688 14364903 80 0 10.68.16.39 NaN edit \n", + "206694 14364909 80 0 10.68.16.39 NaN edit \n", + "206702 14364917 80 0 10.68.16.39 NaN edit \n", + "206705 14364920 80 0 10.68.16.39 NaN edit \n", + "206707 14364922 80 0 10.68.16.39 NaN edit \n", + "206709 14364924 80 0 10.68.16.39 NaN edit \n", + "206710 14364925 80 0 10.68.16.39 NaN edit \n", + "206711 14364926 80 0 10.68.16.39 NaN edit \n", + "206719 14364934 80 0 10.68.16.39 NaN edit \n", + "206770 14364985 80 0 10.68.16.39 NaN edit \n", + "206771 14364986 80 0 10.68.16.39 NaN edit \n", + "206776 14364991 80 0 10.68.16.39 NaN edit \n", + "... ... ... ... ... ... ... \n", + "219496 14377713 80 0 10.68.16.39 NaN edit \n", + "219501 14377718 80 0 10.68.16.39 NaN edit \n", + "219503 14377720 80 0 10.68.16.39 NaN edit \n", + "219504 14377721 80 0 10.68.16.39 NaN edit \n", + "219505 14377722 80 0 10.68.16.39 NaN edit \n", + "219509 14377726 80 0 10.68.16.39 NaN edit \n", + "219537 14377754 80 0 10.68.16.39 NaN edit \n", + "219548 14377765 80 0 10.68.16.39 NaN edit \n", + "219553 14377770 80 0 10.68.16.39 NaN edit \n", + "219555 14377772 80 0 10.68.16.39 NaN edit \n", + "219562 14377779 80 0 10.68.16.39 NaN edit \n", + "219567 14377784 80 0 10.68.16.39 NaN edit \n", + "219575 14377792 80 0 10.68.16.39 NaN edit \n", + "219621 14377838 80 0 10.68.16.39 NaN edit \n", + "219623 14377840 80 0 10.68.16.39 NaN edit \n", + "219626 14377843 80 0 10.68.16.39 NaN edit \n", + "219627 14377844 80 0 10.68.16.39 NaN edit \n", + "219630 14377847 80 0 10.68.16.39 NaN edit \n", + "219647 14377864 80 0 10.68.16.39 NaN edit \n", + "219654 14377871 80 0 10.68.16.39 NaN edit \n", + "219660 14377877 80 0 10.68.16.39 NaN edit \n", + "219668 14377885 80 0 10.68.16.39 NaN edit \n", + "219680 14377897 80 0 10.68.16.39 NaN edit \n", + "219685 14377902 80 0 10.68.16.39 NaN edit \n", + "219711 14377928 80 0 10.68.16.39 NaN edit \n", + "219717 14377934 80 0 10.68.16.39 NaN edit \n", + "219720 14377937 80 0 10.68.16.39 NaN edit \n", + "220106 14378323 80 0 10.68.16.39 NaN edit \n", + "220108 14378325 80 0 10.68.16.39 NaN edit \n", + "220124 14378341 80 0 10.68.16.39 NaN edit \n", + "\n", + " afl_actions afl_var_dump afl_timestamp afl_namespace \\\n", + "206541 warn stored-text:707056949 20160119015147 0 \n", + "206547 warn stored-text:707057055 20160119015250 0 \n", + "206553 warn stored-text:707057079 20160119015300 0 \n", + "206564 warn stored-text:707057104 20160119015316 0 \n", + "206565 warn stored-text:707057139 20160119015330 0 \n", + "206568 warn stored-text:707057194 20160119015402 0 \n", + "206601 warn stored-text:707057523 20160119015652 0 \n", + "206602 warn stored-text:707057586 20160119015720 0 \n", + "206603 warn stored-text:707057636 20160119015740 0 \n", + "206610 warn stored-text:707057791 20160119015852 0 \n", + "206657 warn stored-text:707058341 20160119020305 0 \n", + "206660 warn stored-text:707058410 20160119020335 0 \n", + "206664 warn stored-text:707058432 20160119020351 0 \n", + "206672 warn stored-text:707058511 20160119020429 0 \n", + "206674 warn stored-text:707058531 20160119020437 0 \n", + "206675 warn stored-text:707058568 20160119020457 0 \n", + "206682 warn stored-text:707058677 20160119020545 0 \n", + "206686 warn stored-text:707058737 20160119020616 0 \n", + "206688 warn stored-text:707058756 20160119020628 0 \n", + "206694 warn stored-text:707058834 20160119020706 0 \n", + "206702 warn stored-text:707058958 20160119020748 0 \n", + "206705 warn stored-text:707058999 20160119020803 0 \n", + "206707 warn stored-text:707059084 20160119020832 0 \n", + "206709 warn stored-text:707059100 20160119020838 0 \n", + "206710 warn stored-text:707059123 20160119020846 0 \n", + "206711 warn stored-text:707059145 20160119020853 0 \n", + "206719 warn stored-text:707059200 20160119020911 0 \n", + "206770 warn stored-text:707059872 20160119021422 0 \n", + "206771 warn stored-text:707059900 20160119021441 0 \n", + "206776 warn stored-text:707059953 20160119021510 0 \n", + "... ... ... ... ... \n", + "219496 warn stored-text:707201381 20160119220627 0 \n", + "219501 warn stored-text:707201517 20160119220726 0 \n", + "219503 warn stored-text:707201547 20160119220741 0 \n", + "219504 warn stored-text:707201583 20160119220757 0 \n", + "219505 warn stored-text:707201635 20160119220818 0 \n", + "219509 warn stored-text:707201665 20160119220832 0 \n", + "219537 warn stored-text:707201816 20160119220940 0 \n", + "219548 warn stored-text:707201904 20160119221017 0 \n", + "219553 warn stored-text:707201989 20160119221102 0 \n", + "219555 warn stored-text:707202038 20160119221119 0 \n", + "219562 warn stored-text:707202058 20160119221129 0 \n", + "219567 warn stored-text:707202078 20160119221138 0 \n", + "219575 warn stored-text:707202245 20160119221243 0 \n", + "219621 warn stored-text:707202723 20160119221607 0 \n", + "219623 warn stored-text:707202768 20160119221625 0 \n", + "219626 warn stored-text:707202802 20160119221639 0 \n", + "219627 warn stored-text:707202809 20160119221643 0 \n", + "219630 warn stored-text:707202830 20160119221652 0 \n", + "219647 warn stored-text:707203116 20160119221839 0 \n", + "219654 warn stored-text:707203152 20160119221849 0 \n", + "219660 warn stored-text:707203257 20160119221928 0 \n", + "219668 warn stored-text:707203342 20160119222006 0 \n", + "219680 warn stored-text:707203483 20160119222059 0 \n", + "219685 warn stored-text:707203533 20160119222116 0 \n", + "219711 warn stored-text:707204116 20160119222504 0 \n", + "219717 warn stored-text:707204214 20160119222544 0 \n", + "219720 warn stored-text:707204366 20160119222641 0 \n", + "220106 warn stored-text:707210669 20160119231005 0 \n", + "220108 warn stored-text:707210718 20160119231021 0 \n", + "220124 warn stored-text:707210947 20160119231206 0 \n", + "\n", + " afl_title afl_wiki afl_deleted \\\n", + "206541 Eric_Gordon NaN 0 \n", + "206547 Members_of_the_111th_United_States_Congress NaN 0 \n", + "206553 Greenon_High_School_(Springfield,_Ohio) NaN 0 \n", + "206564 Maggie_Anderson NaN 0 \n", + "206565 Josh_Blackie NaN 0 \n", + "206568 Tenacious_D_discography NaN 0 \n", + "206601 Operation_Pawan NaN 0 \n", + "206602 Catholic_Central_School_(Springfield,_Ohio) NaN 0 \n", + "206603 Dane_Richards NaN 0 \n", + "206610 Milford_High_School_(Ohio) NaN 0 \n", + "206657 Mitt_Romney_presidential_campaign,_2008 NaN 0 \n", + "206660 Ion_Dincă NaN 0 \n", + "206664 Hunter_(band) NaN 0 \n", + "206672 Celebrity_Solstice NaN 0 \n", + "206674 Wassim_Almawi NaN 0 \n", + "206675 Öpir NaN 0 \n", + "206682 EFG-Hermes NaN 0 \n", + "206686 Runaway_production NaN 0 \n", + "206688 Miguel_Angel_Corzo NaN 0 \n", + "206694 Wayne_Allyn_Root NaN 0 \n", + "206702 Tenderloin,_San_Francisco NaN 0 \n", + "206705 North_Arm_Cove,_New_South_Wales NaN 0 \n", + "206707 Case_39 NaN 0 \n", + "206709 CI_Records NaN 0 \n", + "206710 Southern_Weather NaN 0 \n", + "206711 Tang_King-shing NaN 0 \n", + "206719 Walled_Lake_Northern_High_School NaN 0 \n", + "206770 American_Biographical_Institute NaN 0 \n", + "206771 Howayek NaN 0 \n", + "206776 Fountain_House_(self-help_program) NaN 0 \n", + "... ... ... ... \n", + "219496 Armed_Forces_Revolutionary_Council,_Ghana NaN 0 \n", + "219501 Jason_Beghe NaN 0 \n", + "219503 Tori_&_Dean:_Home_Sweet_Hollywood NaN 0 \n", + "219504 Mark_Klein_(singer) NaN 0 \n", + "219505 J._J._Johnson_(running_back) NaN 0 \n", + "219509 Isha_Sesay NaN 0 \n", + "219537 Chinaman_(term) NaN 0 \n", + "219548 Saint_Vincent's_Catholic_Medical_Center NaN 0 \n", + "219553 The_O2 NaN 0 \n", + "219555 San_Bernardo,_Chile NaN 0 \n", + "219562 Dry_powder_inhaler NaN 0 \n", + "219567 Calvin_Prasad NaN 0 \n", + "219575 Wireless_Application_Protocol NaN 0 \n", + "219621 Trevor_Blackwell NaN 0 \n", + "219623 Bill_Millin NaN 0 \n", + "219626 Oscar_Marzaroli NaN 0 \n", + "219627 Harsh_Mahajan NaN 0 \n", + "219630 Lindsay_Moran NaN 0 \n", + "219647 IndyGo NaN 0 \n", + "219654 Bobby_Reid_(American_football) NaN 0 \n", + "219660 Universidad_Veracruzana NaN 0 \n", + "219668 Jeff_Denham NaN 0 \n", + "219680 Salma_de_Nora NaN 0 \n", + "219685 Vinappris NaN 0 \n", + "219711 Syracuse_Orange_men's_basketball NaN 0 \n", + "219717 Adaptations_of_Little_Red_Riding_Hood NaN 0 \n", + "219720 Elizabeth_Knox NaN 0 \n", + "220106 Raleigh_Bicycle_Company NaN 0 \n", + "220108 Archaic_(comics) NaN 0 \n", + "220124 Nandigram_violence NaN 0 \n", + "\n", + " afl_patrolled_by afl_rev_id afl_log_id \n", + "206541 0 NaN NaN \n", + "206547 0 NaN NaN \n", + "206553 0 NaN NaN \n", + "206564 0 NaN NaN \n", + "206565 0 NaN NaN \n", + "206568 0 NaN NaN \n", + "206601 0 NaN NaN \n", + "206602 0 NaN NaN \n", + "206603 0 NaN NaN \n", + "206610 0 NaN NaN \n", + "206657 0 NaN NaN \n", + "206660 0 NaN NaN \n", + "206664 0 NaN NaN \n", + "206672 0 NaN NaN \n", + "206674 0 NaN NaN \n", + "206675 0 NaN NaN \n", + "206682 0 NaN NaN \n", + "206686 0 NaN NaN \n", + "206688 0 NaN NaN \n", + "206694 0 NaN NaN \n", + "206702 0 NaN NaN \n", + "206705 0 NaN NaN \n", + "206707 0 NaN NaN \n", + "206709 0 NaN NaN \n", + "206710 0 NaN NaN \n", + "206711 0 NaN NaN \n", + "206719 0 NaN NaN \n", + "206770 0 NaN NaN \n", + "206771 0 NaN NaN \n", + "206776 0 NaN NaN \n", + "... ... ... ... \n", + "219496 0 NaN NaN \n", + "219501 0 NaN NaN \n", + "219503 0 NaN NaN \n", + "219504 0 NaN NaN \n", + "219505 0 NaN NaN \n", + "219509 0 NaN NaN \n", + "219537 0 NaN NaN \n", + "219548 0 NaN NaN \n", + "219553 0 NaN NaN \n", + "219555 0 NaN NaN \n", + "219562 0 NaN NaN \n", + "219567 0 NaN NaN \n", + "219575 0 NaN NaN \n", + "219621 0 NaN NaN \n", + "219623 0 NaN NaN \n", + "219626 0 NaN NaN \n", + "219627 0 NaN NaN \n", + "219630 0 NaN NaN \n", + "219647 0 NaN NaN \n", + "219654 0 NaN NaN \n", + "219660 0 NaN NaN \n", + "219668 0 NaN NaN \n", + "219680 0 NaN NaN \n", + "219685 0 NaN NaN \n", + "219711 0 NaN NaN \n", + "219717 0 NaN NaN \n", + "219720 0 NaN NaN \n", + "220106 0 NaN NaN \n", + "220108 0 NaN NaN \n", + "220124 0 NaN NaN \n", + "\n", + "[1689 rows x 16 columns]" + ] + }, + "execution_count": 51, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# What were the very active IPs doing\n", + "df_jan2016[df_jan2016['afl_user_text'] == '10.68.16.39']" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Edit filter ID 80 is called \"link spam\". So this user appears to probably have entirely hit filter 80 the whole time." + ] + }, + { + "cell_type": "code", + "execution_count": 52, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>afl_id</th>\n", + " <th>afl_filter</th>\n", + " <th>afl_user</th>\n", + " <th>afl_user_text</th>\n", + " <th>afl_ip</th>\n", + " <th>afl_action</th>\n", + " <th>afl_actions</th>\n", + " <th>afl_var_dump</th>\n", + " <th>afl_timestamp</th>\n", + " <th>afl_namespace</th>\n", + " <th>afl_title</th>\n", + " <th>afl_wiki</th>\n", + " <th>afl_deleted</th>\n", + " <th>afl_patrolled_by</th>\n", + " <th>afl_rev_id</th>\n", + " <th>afl_log_id</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>50629</th>\n", + " <td>14208834</td>\n", + " <td>271</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704885530</td>\n", + " <td>20160106073655</td>\n", + " <td>11</td>\n", + " <td>Africa_topic</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>50630</th>\n", + " <td>14208835</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704885530</td>\n", + " <td>20160106073655</td>\n", + " <td>11</td>\n", + " <td>Africa_topic</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>50631</th>\n", + " <td>14208836</td>\n", + " <td>271</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704885531</td>\n", + " <td>20160106073656</td>\n", + " <td>11</td>\n", + " <td>Africa_topic</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>50632</th>\n", + " <td>14208837</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704885531</td>\n", + " <td>20160106073656</td>\n", + " <td>11</td>\n", + " <td>Africa_topic</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>50633</th>\n", + " <td>14208838</td>\n", + " <td>271</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704885534</td>\n", + " <td>20160106073657</td>\n", + " <td>11</td>\n", + " <td>Africa_topic</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>50634</th>\n", + " <td>14208839</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704885534</td>\n", + " <td>20160106073657</td>\n", + " <td>11</td>\n", + " <td>Africa_topic</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>50635</th>\n", + " <td>14208840</td>\n", + " <td>271</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704885535</td>\n", + " <td>20160106073657</td>\n", + " <td>11</td>\n", + " <td>Africa_topic</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>50636</th>\n", + " <td>14208841</td>\n", + " <td>279</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>tag</td>\n", + " <td>stored-text:704885535</td>\n", + " <td>20160106073657</td>\n", + " <td>11</td>\n", + " <td>Africa_topic</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>50637</th>\n", + " <td>14208842</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704885535</td>\n", + " <td>20160106073657</td>\n", + " <td>11</td>\n", + " <td>Africa_topic</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>50638</th>\n", + " <td>14208843</td>\n", + " <td>271</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704885536</td>\n", + " <td>20160106073657</td>\n", + " <td>11</td>\n", + " <td>Africa_topic</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>50639</th>\n", + " <td>14208844</td>\n", + " <td>279</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>tag</td>\n", + " <td>stored-text:704885536</td>\n", + " <td>20160106073657</td>\n", + " <td>11</td>\n", + " <td>Africa_topic</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>50640</th>\n", + " <td>14208845</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704885536</td>\n", + " <td>20160106073657</td>\n", + " <td>11</td>\n", + " <td>Africa_topic</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>50650</th>\n", + " <td>14208855</td>\n", + " <td>271</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704885765</td>\n", + " <td>20160106074015</td>\n", + " <td>7</td>\n", + " <td>Sclerotinia_sclerotiorum.jpg</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>50651</th>\n", + " <td>14208856</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704885765</td>\n", + " <td>20160106074015</td>\n", + " <td>7</td>\n", + " <td>Sclerotinia_sclerotiorum.jpg</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>50652</th>\n", + " <td>14208857</td>\n", + " <td>271</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704885779</td>\n", + " <td>20160106074032</td>\n", + " <td>11</td>\n", + " <td>Equine</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>50653</th>\n", + " <td>14208858</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704885779</td>\n", + " <td>20160106074032</td>\n", + " <td>11</td>\n", + " <td>Equine</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>50655</th>\n", + " <td>14208860</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704885809</td>\n", + " <td>20160106074055</td>\n", + " <td>3</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>50672</th>\n", + " <td>14208877</td>\n", + " <td>271</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704885976</td>\n", + " <td>20160106074319</td>\n", + " <td>11</td>\n", + " <td>Ancient_Greece_topics</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>50673</th>\n", + " <td>14208878</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704885976</td>\n", + " <td>20160106074319</td>\n", + " <td>11</td>\n", + " <td>Ancient_Greece_topics</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>50685</th>\n", + " <td>14208890</td>\n", + " <td>271</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704886146</td>\n", + " <td>20160106074537</td>\n", + " <td>11</td>\n", + " <td>Noticeboard_links</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>50686</th>\n", + " <td>14208891</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704886146</td>\n", + " <td>20160106074537</td>\n", + " <td>11</td>\n", + " <td>Noticeboard_links</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>50691</th>\n", + " <td>14208896</td>\n", + " <td>271</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704886188</td>\n", + " <td>20160106074619</td>\n", + " <td>5</td>\n", + " <td>WikiProject_Anthropology</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>50692</th>\n", + " <td>14208897</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704886188</td>\n", + " <td>20160106074619</td>\n", + " <td>5</td>\n", + " <td>WikiProject_Anthropology</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>50706</th>\n", + " <td>14208911</td>\n", + " <td>271</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704886515</td>\n", + " <td>20160106075047</td>\n", + " <td>11</td>\n", + " <td>WikiProject_India</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>50707</th>\n", + " <td>14208912</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704886515</td>\n", + " <td>20160106075047</td>\n", + " <td>11</td>\n", + " <td>WikiProject_India</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>50716</th>\n", + " <td>14208921</td>\n", + " <td>271</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704886707</td>\n", + " <td>20160106075306</td>\n", + " <td>5</td>\n", + " <td>WikiProject_Anglo-Saxon_Kingdoms</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>50717</th>\n", + " <td>14208922</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704886707</td>\n", + " <td>20160106075306</td>\n", + " <td>5</td>\n", + " <td>WikiProject_Anglo-Saxon_Kingdoms</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>50718</th>\n", + " <td>14208923</td>\n", + " <td>30</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704886730</td>\n", + " <td>20160106075321</td>\n", + " <td>0</td>\n", + " <td>Skateboard</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>50719</th>\n", + " <td>14208924</td>\n", + " <td>220</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704886730</td>\n", + " <td>20160106075321</td>\n", + " <td>0</td>\n", + " <td>Skateboard</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>50720</th>\n", + " <td>14208925</td>\n", + " <td>271</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704886730</td>\n", + " <td>20160106075321</td>\n", + " <td>0</td>\n", + " <td>Skateboard</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>...</th>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " </tr>\n", + " <tr>\n", + " <th>55395</th>\n", + " <td>14213601</td>\n", + " <td>220</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704929137</td>\n", + " <td>20160106150149</td>\n", + " <td>0</td>\n", + " <td>Billboard_(magazine)</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>55396</th>\n", + " <td>14213602</td>\n", + " <td>271</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704929137</td>\n", + " <td>20160106150149</td>\n", + " <td>0</td>\n", + " <td>Billboard_(magazine)</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>55397</th>\n", + " <td>14213603</td>\n", + " <td>30</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704929141</td>\n", + " <td>20160106150150</td>\n", + " <td>0</td>\n", + " <td>Snowboarding</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>55398</th>\n", + " <td>14213604</td>\n", + " <td>220</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704929141</td>\n", + " <td>20160106150150</td>\n", + " <td>0</td>\n", + " <td>Snowboarding</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>55399</th>\n", + " <td>14213605</td>\n", + " <td>271</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704929141</td>\n", + " <td>20160106150150</td>\n", + " <td>0</td>\n", + " <td>Snowboarding</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>55400</th>\n", + " <td>14213606</td>\n", + " <td>271</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704929158</td>\n", + " <td>20160106150157</td>\n", + " <td>5</td>\n", + " <td>WikiProject_Antarctica</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>55401</th>\n", + " <td>14213607</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704929158</td>\n", + " <td>20160106150157</td>\n", + " <td>5</td>\n", + " <td>WikiProject_Antarctica</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>55412</th>\n", + " <td>14213618</td>\n", + " <td>30</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704929332</td>\n", + " <td>20160106150317</td>\n", + " <td>0</td>\n", + " <td>Storyboard</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>55413</th>\n", + " <td>14213619</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704929332</td>\n", + " <td>20160106150317</td>\n", + " <td>0</td>\n", + " <td>Storyboard</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>55414</th>\n", + " <td>14213620</td>\n", + " <td>220</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704929332</td>\n", + " <td>20160106150317</td>\n", + " <td>0</td>\n", + " <td>Storyboard</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>55415</th>\n", + " <td>14213621</td>\n", + " <td>271</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704929332</td>\n", + " <td>20160106150317</td>\n", + " <td>0</td>\n", + " <td>Storyboard</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>55423</th>\n", + " <td>14213629</td>\n", + " <td>30</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704929414</td>\n", + " <td>20160106150410</td>\n", + " <td>0</td>\n", + " <td>Board_game</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>55424</th>\n", + " <td>14213630</td>\n", + " <td>220</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704929414</td>\n", + " <td>20160106150410</td>\n", + " <td>0</td>\n", + " <td>Board_game</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>55425</th>\n", + " <td>14213631</td>\n", + " <td>271</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704929414</td>\n", + " <td>20160106150410</td>\n", + " <td>0</td>\n", + " <td>Board_game</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>55434</th>\n", + " <td>14213640</td>\n", + " <td>30</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704929554</td>\n", + " <td>20160106150529</td>\n", + " <td>0</td>\n", + " <td>Discus_throw</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>55435</th>\n", + " <td>14213641</td>\n", + " <td>220</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704929554</td>\n", + " <td>20160106150529</td>\n", + " <td>0</td>\n", + " <td>Discus_throw</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>55436</th>\n", + " <td>14213642</td>\n", + " <td>271</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704929554</td>\n", + " <td>20160106150529</td>\n", + " <td>0</td>\n", + " <td>Discus_throw</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>55442</th>\n", + " <td>14213648</td>\n", + " <td>30</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704929662</td>\n", + " <td>20160106150620</td>\n", + " <td>0</td>\n", + " <td>Storyboard</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>55443</th>\n", + " <td>14213649</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704929662</td>\n", + " <td>20160106150620</td>\n", + " <td>0</td>\n", + " <td>Storyboard</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>55444</th>\n", + " <td>14213650</td>\n", + " <td>220</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704929662</td>\n", + " <td>20160106150620</td>\n", + " <td>0</td>\n", + " <td>Storyboard</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>55445</th>\n", + " <td>14213651</td>\n", + " <td>271</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704929662</td>\n", + " <td>20160106150620</td>\n", + " <td>0</td>\n", + " <td>Storyboard</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>55446</th>\n", + " <td>14213652</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704929665</td>\n", + " <td>20160106150622</td>\n", + " <td>2</td>\n", + " <td>Moudy83/conference_papers</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>55448</th>\n", + " <td>14213654</td>\n", + " <td>271</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704929677</td>\n", + " <td>20160106150626</td>\n", + " <td>15</td>\n", + " <td>Real_property_law</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>55453</th>\n", + " <td>14213659</td>\n", + " <td>271</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704929764</td>\n", + " <td>20160106150710</td>\n", + " <td>5</td>\n", + " <td>WikiProject_Disney</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>55454</th>\n", + " <td>14213660</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704929764</td>\n", + " <td>20160106150710</td>\n", + " <td>5</td>\n", + " <td>WikiProject_Disney</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>55458</th>\n", + " <td>14213664</td>\n", + " <td>271</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704929860</td>\n", + " <td>20160106150758</td>\n", + " <td>5</td>\n", + " <td>WikiProject_Ancient_Egypt</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>55459</th>\n", + " <td>14213665</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704929860</td>\n", + " <td>20160106150758</td>\n", + " <td>5</td>\n", + " <td>WikiProject_Ancient_Egypt</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>55472</th>\n", + " <td>14213678</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704930053</td>\n", + " <td>20160106150933</td>\n", + " <td>2</td>\n", + " <td>Rund_Van</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>55772</th>\n", + " <td>14213978</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704933955</td>\n", + " <td>20160106154313</td>\n", + " <td>3</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>56323</th>\n", + " <td>14214529</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:704941047</td>\n", + " <td>20160106163440</td>\n", + " <td>3</td>\n", + " <td>37.113.52.15</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "<p>1249 rows × 16 columns</p>\n", + "</div>" + ], + "text/plain": [ + " afl_id afl_filter afl_user afl_user_text afl_ip afl_action \\\n", + "50629 14208834 271 0 37.113.52.15 NaN edit \n", + "50630 14208835 466 0 37.113.52.15 NaN edit \n", + "50631 14208836 271 0 37.113.52.15 NaN edit \n", + "50632 14208837 466 0 37.113.52.15 NaN edit \n", + "50633 14208838 271 0 37.113.52.15 NaN edit \n", + "50634 14208839 466 0 37.113.52.15 NaN edit \n", + "50635 14208840 271 0 37.113.52.15 NaN edit \n", + "50636 14208841 279 0 37.113.52.15 NaN edit \n", + "50637 14208842 466 0 37.113.52.15 NaN edit \n", + "50638 14208843 271 0 37.113.52.15 NaN edit \n", + "50639 14208844 279 0 37.113.52.15 NaN edit \n", + "50640 14208845 466 0 37.113.52.15 NaN edit \n", + "50650 14208855 271 0 37.113.52.15 NaN edit \n", + "50651 14208856 466 0 37.113.52.15 NaN edit \n", + "50652 14208857 271 0 37.113.52.15 NaN edit \n", + "50653 14208858 466 0 37.113.52.15 NaN edit \n", + "50655 14208860 466 0 37.113.52.15 NaN edit \n", + "50672 14208877 271 0 37.113.52.15 NaN edit \n", + "50673 14208878 466 0 37.113.52.15 NaN edit \n", + "50685 14208890 271 0 37.113.52.15 NaN edit \n", + "50686 14208891 466 0 37.113.52.15 NaN edit \n", + "50691 14208896 271 0 37.113.52.15 NaN edit \n", + "50692 14208897 466 0 37.113.52.15 NaN edit \n", + "50706 14208911 271 0 37.113.52.15 NaN edit \n", + "50707 14208912 466 0 37.113.52.15 NaN edit \n", + "50716 14208921 271 0 37.113.52.15 NaN edit \n", + "50717 14208922 466 0 37.113.52.15 NaN edit \n", + "50718 14208923 30 0 37.113.52.15 NaN edit \n", + "50719 14208924 220 0 37.113.52.15 NaN edit \n", + "50720 14208925 271 0 37.113.52.15 NaN edit \n", + "... ... ... ... ... ... ... \n", + "55395 14213601 220 0 37.113.52.15 NaN edit \n", + "55396 14213602 271 0 37.113.52.15 NaN edit \n", + "55397 14213603 30 0 37.113.52.15 NaN edit \n", + "55398 14213604 220 0 37.113.52.15 NaN edit \n", + "55399 14213605 271 0 37.113.52.15 NaN edit \n", + "55400 14213606 271 0 37.113.52.15 NaN edit \n", + "55401 14213607 466 0 37.113.52.15 NaN edit \n", + "55412 14213618 30 0 37.113.52.15 NaN edit \n", + "55413 14213619 80 0 37.113.52.15 NaN edit \n", + "55414 14213620 220 0 37.113.52.15 NaN edit \n", + "55415 14213621 271 0 37.113.52.15 NaN edit \n", + "55423 14213629 30 0 37.113.52.15 NaN edit \n", + "55424 14213630 220 0 37.113.52.15 NaN edit \n", + "55425 14213631 271 0 37.113.52.15 NaN edit \n", + "55434 14213640 30 0 37.113.52.15 NaN edit \n", + "55435 14213641 220 0 37.113.52.15 NaN edit \n", + "55436 14213642 271 0 37.113.52.15 NaN edit \n", + "55442 14213648 30 0 37.113.52.15 NaN edit \n", + "55443 14213649 80 0 37.113.52.15 NaN edit \n", + "55444 14213650 220 0 37.113.52.15 NaN edit \n", + "55445 14213651 271 0 37.113.52.15 NaN edit \n", + "55446 14213652 466 0 37.113.52.15 NaN edit \n", + "55448 14213654 271 0 37.113.52.15 NaN edit \n", + "55453 14213659 271 0 37.113.52.15 NaN edit \n", + "55454 14213660 466 0 37.113.52.15 NaN edit \n", + "55458 14213664 271 0 37.113.52.15 NaN edit \n", + "55459 14213665 466 0 37.113.52.15 NaN edit \n", + "55472 14213678 466 0 37.113.52.15 NaN edit \n", + "55772 14213978 466 0 37.113.52.15 NaN edit \n", + "56323 14214529 466 0 37.113.52.15 NaN edit \n", + "\n", + " afl_actions afl_var_dump afl_timestamp afl_namespace \\\n", + "50629 warn stored-text:704885530 20160106073655 11 \n", + "50630 warn stored-text:704885530 20160106073655 11 \n", + "50631 warn stored-text:704885531 20160106073656 11 \n", + "50632 warn stored-text:704885531 20160106073656 11 \n", + "50633 warn stored-text:704885534 20160106073657 11 \n", + "50634 warn stored-text:704885534 20160106073657 11 \n", + "50635 warn stored-text:704885535 20160106073657 11 \n", + "50636 tag stored-text:704885535 20160106073657 11 \n", + "50637 warn stored-text:704885535 20160106073657 11 \n", + "50638 warn stored-text:704885536 20160106073657 11 \n", + "50639 tag stored-text:704885536 20160106073657 11 \n", + "50640 warn stored-text:704885536 20160106073657 11 \n", + "50650 warn stored-text:704885765 20160106074015 7 \n", + "50651 warn stored-text:704885765 20160106074015 7 \n", + "50652 warn stored-text:704885779 20160106074032 11 \n", + "50653 warn stored-text:704885779 20160106074032 11 \n", + "50655 warn stored-text:704885809 20160106074055 3 \n", + "50672 warn stored-text:704885976 20160106074319 11 \n", + "50673 warn stored-text:704885976 20160106074319 11 \n", + "50685 warn stored-text:704886146 20160106074537 11 \n", + "50686 warn stored-text:704886146 20160106074537 11 \n", + "50691 warn stored-text:704886188 20160106074619 5 \n", + "50692 warn stored-text:704886188 20160106074619 5 \n", + "50706 warn stored-text:704886515 20160106075047 11 \n", + "50707 warn stored-text:704886515 20160106075047 11 \n", + "50716 warn stored-text:704886707 20160106075306 5 \n", + "50717 warn stored-text:704886707 20160106075306 5 \n", + "50718 warn stored-text:704886730 20160106075321 0 \n", + "50719 warn stored-text:704886730 20160106075321 0 \n", + "50720 warn stored-text:704886730 20160106075321 0 \n", + "... ... ... ... ... \n", + "55395 warn stored-text:704929137 20160106150149 0 \n", + "55396 warn stored-text:704929137 20160106150149 0 \n", + "55397 warn stored-text:704929141 20160106150150 0 \n", + "55398 warn stored-text:704929141 20160106150150 0 \n", + "55399 warn stored-text:704929141 20160106150150 0 \n", + "55400 warn stored-text:704929158 20160106150157 5 \n", + "55401 warn stored-text:704929158 20160106150157 5 \n", + "55412 warn stored-text:704929332 20160106150317 0 \n", + "55413 warn stored-text:704929332 20160106150317 0 \n", + "55414 warn stored-text:704929332 20160106150317 0 \n", + "55415 warn stored-text:704929332 20160106150317 0 \n", + "55423 warn stored-text:704929414 20160106150410 0 \n", + "55424 warn stored-text:704929414 20160106150410 0 \n", + "55425 warn stored-text:704929414 20160106150410 0 \n", + "55434 warn stored-text:704929554 20160106150529 0 \n", + "55435 warn stored-text:704929554 20160106150529 0 \n", + "55436 warn stored-text:704929554 20160106150529 0 \n", + "55442 warn stored-text:704929662 20160106150620 0 \n", + "55443 warn stored-text:704929662 20160106150620 0 \n", + "55444 warn stored-text:704929662 20160106150620 0 \n", + "55445 warn stored-text:704929662 20160106150620 0 \n", + "55446 warn stored-text:704929665 20160106150622 2 \n", + "55448 warn stored-text:704929677 20160106150626 15 \n", + "55453 warn stored-text:704929764 20160106150710 5 \n", + "55454 warn stored-text:704929764 20160106150710 5 \n", + "55458 warn stored-text:704929860 20160106150758 5 \n", + "55459 warn stored-text:704929860 20160106150758 5 \n", + "55472 warn stored-text:704930053 20160106150933 2 \n", + "55772 warn stored-text:704933955 20160106154313 3 \n", + "56323 warn stored-text:704941047 20160106163440 3 \n", + "\n", + " afl_title afl_wiki afl_deleted \\\n", + "50629 Africa_topic NaN 0 \n", + "50630 Africa_topic NaN 0 \n", + "50631 Africa_topic NaN 0 \n", + "50632 Africa_topic NaN 0 \n", + "50633 Africa_topic NaN 0 \n", + "50634 Africa_topic NaN 0 \n", + "50635 Africa_topic NaN 0 \n", + "50636 Africa_topic NaN 0 \n", + "50637 Africa_topic NaN 0 \n", + "50638 Africa_topic NaN 0 \n", + "50639 Africa_topic NaN 0 \n", + "50640 Africa_topic NaN 0 \n", + "50650 Sclerotinia_sclerotiorum.jpg NaN 0 \n", + "50651 Sclerotinia_sclerotiorum.jpg NaN 0 \n", + "50652 Equine NaN 0 \n", + "50653 Equine NaN 0 \n", + "50655 37.113.52.15 NaN 0 \n", + "50672 Ancient_Greece_topics NaN 0 \n", + "50673 Ancient_Greece_topics NaN 0 \n", + "50685 Noticeboard_links NaN 0 \n", + "50686 Noticeboard_links NaN 0 \n", + "50691 WikiProject_Anthropology NaN 0 \n", + "50692 WikiProject_Anthropology NaN 0 \n", + "50706 WikiProject_India NaN 0 \n", + "50707 WikiProject_India NaN 0 \n", + "50716 WikiProject_Anglo-Saxon_Kingdoms NaN 0 \n", + "50717 WikiProject_Anglo-Saxon_Kingdoms NaN 0 \n", + "50718 Skateboard NaN 0 \n", + "50719 Skateboard NaN 0 \n", + "50720 Skateboard NaN 0 \n", + "... ... ... ... \n", + "55395 Billboard_(magazine) NaN 0 \n", + "55396 Billboard_(magazine) NaN 0 \n", + "55397 Snowboarding NaN 0 \n", + "55398 Snowboarding NaN 0 \n", + "55399 Snowboarding NaN 0 \n", + "55400 WikiProject_Antarctica NaN 0 \n", + "55401 WikiProject_Antarctica NaN 0 \n", + "55412 Storyboard NaN 0 \n", + "55413 Storyboard NaN 0 \n", + "55414 Storyboard NaN 0 \n", + "55415 Storyboard NaN 0 \n", + "55423 Board_game NaN 0 \n", + "55424 Board_game NaN 0 \n", + "55425 Board_game NaN 0 \n", + "55434 Discus_throw NaN 0 \n", + "55435 Discus_throw NaN 0 \n", + "55436 Discus_throw NaN 0 \n", + "55442 Storyboard NaN 0 \n", + "55443 Storyboard NaN 0 \n", + "55444 Storyboard NaN 0 \n", + "55445 Storyboard NaN 0 \n", + "55446 Moudy83/conference_papers NaN 0 \n", + "55448 Real_property_law NaN 0 \n", + "55453 WikiProject_Disney NaN 0 \n", + "55454 WikiProject_Disney NaN 0 \n", + "55458 WikiProject_Ancient_Egypt NaN 0 \n", + "55459 WikiProject_Ancient_Egypt NaN 0 \n", + "55472 Rund_Van NaN 0 \n", + "55772 37.113.52.15 NaN 0 \n", + "56323 37.113.52.15 NaN 0 \n", + "\n", + " afl_patrolled_by afl_rev_id afl_log_id \n", + "50629 0 NaN NaN \n", + "50630 0 NaN NaN \n", + "50631 0 NaN NaN \n", + "50632 0 NaN NaN \n", + "50633 0 NaN NaN \n", + "50634 0 NaN NaN \n", + "50635 0 NaN NaN \n", + "50636 0 NaN NaN \n", + "50637 0 NaN NaN \n", + "50638 0 NaN NaN \n", + "50639 0 NaN NaN \n", + "50640 0 NaN NaN \n", + "50650 0 NaN NaN \n", + "50651 0 NaN NaN \n", + "50652 0 NaN NaN \n", + "50653 0 NaN NaN \n", + "50655 0 NaN NaN \n", + "50672 0 NaN NaN \n", + "50673 0 NaN NaN \n", + "50685 0 NaN NaN \n", + "50686 0 NaN NaN \n", + "50691 0 NaN NaN \n", + "50692 0 NaN NaN \n", + "50706 0 NaN NaN \n", + "50707 0 NaN NaN \n", + "50716 0 NaN NaN \n", + "50717 0 NaN NaN \n", + "50718 0 NaN NaN \n", + "50719 0 NaN NaN \n", + "50720 0 NaN NaN \n", + "... ... ... ... \n", + "55395 0 NaN NaN \n", + "55396 0 NaN NaN \n", + "55397 0 NaN NaN \n", + "55398 0 NaN NaN \n", + "55399 0 NaN NaN \n", + "55400 0 NaN NaN \n", + "55401 0 NaN NaN \n", + "55412 0 NaN NaN \n", + "55413 0 NaN NaN \n", + "55414 0 NaN NaN \n", + "55415 0 NaN NaN \n", + "55423 0 NaN NaN \n", + "55424 0 NaN NaN \n", + "55425 0 NaN NaN \n", + "55434 0 NaN NaN \n", + "55435 0 NaN NaN \n", + "55436 0 NaN NaN \n", + "55442 0 NaN NaN \n", + "55443 0 NaN NaN \n", + "55444 0 NaN NaN \n", + "55445 0 NaN NaN \n", + "55446 0 NaN NaN \n", + "55448 0 NaN NaN \n", + "55453 0 NaN NaN \n", + "55454 0 NaN NaN \n", + "55458 0 NaN NaN \n", + "55459 0 NaN NaN \n", + "55472 0 NaN NaN \n", + "55772 0 NaN NaN \n", + "56323 0 NaN NaN \n", + "\n", + "[1249 rows x 16 columns]" + ] + }, + "execution_count": 52, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# What were the very active IPs doing\n", + "df_jan2016[df_jan2016['afl_user_text'] == '37.113.52.15']" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This one has triggered very frequently (at least from thead and tail) filters 271, 279 and 466, all hidden:\n", + "271 \"Possible spambot\"\n", + "279 \"Repeated attempts to vandalize\"\n", + "466 \"Userspace & talk page spamming\"" + ] + }, + { + "cell_type": "code", + "execution_count": 53, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "<div>\n", + "<style scoped>\n", + " .dataframe tbody tr th:only-of-type {\n", + " vertical-align: middle;\n", + " }\n", + "\n", + " .dataframe tbody tr th {\n", + " vertical-align: top;\n", + " }\n", + "\n", + " .dataframe thead th {\n", + " text-align: right;\n", + " }\n", + "</style>\n", + "<table border=\"1\" class=\"dataframe\">\n", + " <thead>\n", + " <tr style=\"text-align: right;\">\n", + " <th></th>\n", + " <th>afl_id</th>\n", + " <th>afl_filter</th>\n", + " <th>afl_user</th>\n", + " <th>afl_user_text</th>\n", + " <th>afl_ip</th>\n", + " <th>afl_action</th>\n", + " <th>afl_actions</th>\n", + " <th>afl_var_dump</th>\n", + " <th>afl_timestamp</th>\n", + " <th>afl_namespace</th>\n", + " <th>afl_title</th>\n", + " <th>afl_wiki</th>\n", + " <th>afl_deleted</th>\n", + " <th>afl_patrolled_by</th>\n", + " <th>afl_rev_id</th>\n", + " <th>afl_log_id</th>\n", + " </tr>\n", + " </thead>\n", + " <tbody>\n", + " <tr>\n", + " <th>252411</th>\n", + " <td>14410640</td>\n", + " <td>271</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707617359</td>\n", + " <td>20160122071743</td>\n", + " <td>11</td>\n", + " <td>WikiProject_Physics</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>252412</th>\n", + " <td>14410641</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707617359</td>\n", + " <td>20160122071743</td>\n", + " <td>11</td>\n", + " <td>WikiProject_Physics</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>252426</th>\n", + " <td>14410655</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707617417</td>\n", + " <td>20160122071827</td>\n", + " <td>1</td>\n", + " <td>Nirvana</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>252435</th>\n", + " <td>14410664</td>\n", + " <td>30</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707617482</td>\n", + " <td>20160122071906</td>\n", + " <td>0</td>\n", + " <td>District_health_board</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>252436</th>\n", + " <td>14410665</td>\n", + " <td>220</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707617482</td>\n", + " <td>20160122071906</td>\n", + " <td>0</td>\n", + " <td>District_health_board</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>252437</th>\n", + " <td>14410666</td>\n", + " <td>271</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707617482</td>\n", + " <td>20160122071906</td>\n", + " <td>0</td>\n", + " <td>District_health_board</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>252442</th>\n", + " <td>14410671</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707617536</td>\n", + " <td>20160122071939</td>\n", + " <td>1</td>\n", + " <td>Liberal_arts_education</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>252451</th>\n", + " <td>14410680</td>\n", + " <td>132</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707617701</td>\n", + " <td>20160122072124</td>\n", + " <td>0</td>\n", + " <td>Tamil_Nadu_Pollution_Control_Board</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>252452</th>\n", + " <td>14410681</td>\n", + " <td>220</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707617701</td>\n", + " <td>20160122072124</td>\n", + " <td>0</td>\n", + " <td>Tamil_Nadu_Pollution_Control_Board</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>252453</th>\n", + " <td>14410682</td>\n", + " <td>271</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707617701</td>\n", + " <td>20160122072124</td>\n", + " <td>0</td>\n", + " <td>Tamil_Nadu_Pollution_Control_Board</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>252468</th>\n", + " <td>14410697</td>\n", + " <td>220</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707618028</td>\n", + " <td>20160122072525</td>\n", + " <td>0</td>\n", + " <td>Joint-board</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>252469</th>\n", + " <td>14410698</td>\n", + " <td>271</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707618028</td>\n", + " <td>20160122072525</td>\n", + " <td>0</td>\n", + " <td>Joint-board</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>252471</th>\n", + " <td>14410700</td>\n", + " <td>271</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707618149</td>\n", + " <td>20160122072655</td>\n", + " <td>5</td>\n", + " <td>WikiProject_Technology</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>252472</th>\n", + " <td>14410701</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707618149</td>\n", + " <td>20160122072655</td>\n", + " <td>5</td>\n", + " <td>WikiProject_Technology</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>252475</th>\n", + " <td>14410704</td>\n", + " <td>271</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707618213</td>\n", + " <td>20160122072740</td>\n", + " <td>5</td>\n", + " <td>WikiProject_Microsoft</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>252476</th>\n", + " <td>14410705</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707618213</td>\n", + " <td>20160122072740</td>\n", + " <td>5</td>\n", + " <td>WikiProject_Microsoft</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>252481</th>\n", + " <td>14410710</td>\n", + " <td>271</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707618288</td>\n", + " <td>20160122072822</td>\n", + " <td>11</td>\n", + " <td>Black_Hole_Recordings</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>252482</th>\n", + " <td>14410711</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707618288</td>\n", + " <td>20160122072822</td>\n", + " <td>11</td>\n", + " <td>Black_Hole_Recordings</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>252483</th>\n", + " <td>14410712</td>\n", + " <td>271</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707618306</td>\n", + " <td>20160122072840</td>\n", + " <td>5</td>\n", + " <td>WikiProject_Pharmacology</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>252484</th>\n", + " <td>14410713</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707618306</td>\n", + " <td>20160122072840</td>\n", + " <td>5</td>\n", + " <td>WikiProject_Pharmacology</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>252485</th>\n", + " <td>14410714</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707618330</td>\n", + " <td>20160122072900</td>\n", + " <td>2</td>\n", + " <td>ChrisGualtieri/Backlog/1</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>252489</th>\n", + " <td>14410718</td>\n", + " <td>220</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707618417</td>\n", + " <td>20160122072954</td>\n", + " <td>0</td>\n", + " <td>Mladen_Vranic</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>252496</th>\n", + " <td>14410725</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707618504</td>\n", + " <td>20160122073048</td>\n", + " <td>2</td>\n", + " <td>Msr69er/Sandbox</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>252506</th>\n", + " <td>14410735</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707618641</td>\n", + " <td>20160122073219</td>\n", + " <td>3</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>252507</th>\n", + " <td>14410736</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707618642</td>\n", + " <td>20160122073219</td>\n", + " <td>3</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>252510</th>\n", + " <td>14410739</td>\n", + " <td>30</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707618663</td>\n", + " <td>20160122073230</td>\n", + " <td>0</td>\n", + " <td>The_Adventure_of_the_Cardboard_Box</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>252511</th>\n", + " <td>14410740</td>\n", + " <td>80</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707618663</td>\n", + " <td>20160122073230</td>\n", + " <td>0</td>\n", + " <td>The_Adventure_of_the_Cardboard_Box</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>252512</th>\n", + " <td>14410741</td>\n", + " <td>220</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707618663</td>\n", + " <td>20160122073230</td>\n", + " <td>0</td>\n", + " <td>The_Adventure_of_the_Cardboard_Box</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>252513</th>\n", + " <td>14410742</td>\n", + " <td>271</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707618663</td>\n", + " <td>20160122073230</td>\n", + " <td>0</td>\n", + " <td>The_Adventure_of_the_Cardboard_Box</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>252520</th>\n", + " <td>14410749</td>\n", + " <td>271</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707618705</td>\n", + " <td>20160122073309</td>\n", + " <td>5</td>\n", + " <td>WikiProject_Ancient_Egypt</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>...</th>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " <td>...</td>\n", + " </tr>\n", + " <tr>\n", + " <th>273921</th>\n", + " <td>14432150</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707956130</td>\n", + " <td>20160124064846</td>\n", + " <td>3</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>273929</th>\n", + " <td>14432158</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707956462</td>\n", + " <td>20160124065248</td>\n", + " <td>3</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>273949</th>\n", + " <td>14432178</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707956787</td>\n", + " <td>20160124065635</td>\n", + " <td>3</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>273963</th>\n", + " <td>14432192</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707957098</td>\n", + " <td>20160124070024</td>\n", + " <td>3</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>274041</th>\n", + " <td>14432270</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707957765</td>\n", + " <td>20160124070849</td>\n", + " <td>3</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>274156</th>\n", + " <td>14432385</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707959421</td>\n", + " <td>20160124072643</td>\n", + " <td>3</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>274183</th>\n", + " <td>14432412</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707959738</td>\n", + " <td>20160124072936</td>\n", + " <td>3</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>274188</th>\n", + " <td>14432417</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707959944</td>\n", + " <td>20160124073147</td>\n", + " <td>3</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>274205</th>\n", + " <td>14432434</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707960204</td>\n", + " <td>20160124073426</td>\n", + " <td>3</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>274250</th>\n", + " <td>14432479</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707960979</td>\n", + " <td>20160124074243</td>\n", + " <td>3</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>274291</th>\n", + " <td>14432520</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707962056</td>\n", + " <td>20160124075332</td>\n", + " <td>3</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>274303</th>\n", + " <td>14432532</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707962246</td>\n", + " <td>20160124075550</td>\n", + " <td>3</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>274497</th>\n", + " <td>14432726</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707964684</td>\n", + " <td>20160124082915</td>\n", + " <td>3</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>274498</th>\n", + " <td>14432727</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707964722</td>\n", + " <td>20160124082943</td>\n", + " <td>3</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>274499</th>\n", + " <td>14432728</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707964723</td>\n", + " <td>20160124082943</td>\n", + " <td>3</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>274504</th>\n", + " <td>14432733</td>\n", + " <td>279</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>tag</td>\n", + " <td>stored-text:707964952</td>\n", + " <td>20160124083226</td>\n", + " <td>3</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>274505</th>\n", + " <td>14432734</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707964952</td>\n", + " <td>20160124083226</td>\n", + " <td>3</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>274547</th>\n", + " <td>14432776</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707965928</td>\n", + " <td>20160124084432</td>\n", + " <td>3</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>274568</th>\n", + " <td>14432797</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707966386</td>\n", + " <td>20160124085058</td>\n", + " <td>3</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>274570</th>\n", + " <td>14432799</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707966449</td>\n", + " <td>20160124085145</td>\n", + " <td>3</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>274587</th>\n", + " <td>14432816</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707966668</td>\n", + " <td>20160124085503</td>\n", + " <td>3</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>274638</th>\n", + " <td>14432867</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707967538</td>\n", + " <td>20160124090650</td>\n", + " <td>3</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>274645</th>\n", + " <td>14432874</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707968145</td>\n", + " <td>20160124091037</td>\n", + " <td>3</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>274682</th>\n", + " <td>14432911</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707968578</td>\n", + " <td>20160124091630</td>\n", + " <td>3</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>274694</th>\n", + " <td>14432923</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707968842</td>\n", + " <td>20160124092017</td>\n", + " <td>3</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>274701</th>\n", + " <td>14432930</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707968943</td>\n", + " <td>20160124092151</td>\n", + " <td>3</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>274743</th>\n", + " <td>14432972</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707969914</td>\n", + " <td>20160124093307</td>\n", + " <td>3</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>274977</th>\n", + " <td>14433206</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707973247</td>\n", + " <td>20160124101413</td>\n", + " <td>3</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>275175</th>\n", + " <td>14433404</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707976610</td>\n", + " <td>20160124105155</td>\n", + " <td>3</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " <tr>\n", + " <th>275208</th>\n", + " <td>14433437</td>\n", + " <td>466</td>\n", + " <td>0</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>edit</td>\n", + " <td>warn</td>\n", + " <td>stored-text:707977190</td>\n", + " <td>20160124105840</td>\n", + " <td>3</td>\n", + " <td>95.152.44.52</td>\n", + " <td>NaN</td>\n", + " <td>0</td>\n", + " <td>0</td>\n", + " <td>NaN</td>\n", + " <td>NaN</td>\n", + " </tr>\n", + " </tbody>\n", + "</table>\n", + "<p>1133 rows × 16 columns</p>\n", + "</div>" + ], + "text/plain": [ + " afl_id afl_filter afl_user afl_user_text afl_ip afl_action \\\n", + "252411 14410640 271 0 95.152.44.52 NaN edit \n", + "252412 14410641 466 0 95.152.44.52 NaN edit \n", + "252426 14410655 466 0 95.152.44.52 NaN edit \n", + "252435 14410664 30 0 95.152.44.52 NaN edit \n", + "252436 14410665 220 0 95.152.44.52 NaN edit \n", + "252437 14410666 271 0 95.152.44.52 NaN edit \n", + "252442 14410671 466 0 95.152.44.52 NaN edit \n", + "252451 14410680 132 0 95.152.44.52 NaN edit \n", + "252452 14410681 220 0 95.152.44.52 NaN edit \n", + "252453 14410682 271 0 95.152.44.52 NaN edit \n", + "252468 14410697 220 0 95.152.44.52 NaN edit \n", + "252469 14410698 271 0 95.152.44.52 NaN edit \n", + "252471 14410700 271 0 95.152.44.52 NaN edit \n", + "252472 14410701 466 0 95.152.44.52 NaN edit \n", + "252475 14410704 271 0 95.152.44.52 NaN edit \n", + "252476 14410705 466 0 95.152.44.52 NaN edit \n", + "252481 14410710 271 0 95.152.44.52 NaN edit \n", + "252482 14410711 466 0 95.152.44.52 NaN edit \n", + "252483 14410712 271 0 95.152.44.52 NaN edit \n", + "252484 14410713 466 0 95.152.44.52 NaN edit \n", + "252485 14410714 466 0 95.152.44.52 NaN edit \n", + "252489 14410718 220 0 95.152.44.52 NaN edit \n", + "252496 14410725 466 0 95.152.44.52 NaN edit \n", + "252506 14410735 466 0 95.152.44.52 NaN edit \n", + "252507 14410736 466 0 95.152.44.52 NaN edit \n", + "252510 14410739 30 0 95.152.44.52 NaN edit \n", + "252511 14410740 80 0 95.152.44.52 NaN edit \n", + "252512 14410741 220 0 95.152.44.52 NaN edit \n", + "252513 14410742 271 0 95.152.44.52 NaN edit \n", + "252520 14410749 271 0 95.152.44.52 NaN edit \n", + "... ... ... ... ... ... ... \n", + "273921 14432150 466 0 95.152.44.52 NaN edit \n", + "273929 14432158 466 0 95.152.44.52 NaN edit \n", + "273949 14432178 466 0 95.152.44.52 NaN edit \n", + "273963 14432192 466 0 95.152.44.52 NaN edit \n", + "274041 14432270 466 0 95.152.44.52 NaN edit \n", + "274156 14432385 466 0 95.152.44.52 NaN edit \n", + "274183 14432412 466 0 95.152.44.52 NaN edit \n", + "274188 14432417 466 0 95.152.44.52 NaN edit \n", + "274205 14432434 466 0 95.152.44.52 NaN edit \n", + "274250 14432479 466 0 95.152.44.52 NaN edit \n", + "274291 14432520 466 0 95.152.44.52 NaN edit \n", + "274303 14432532 466 0 95.152.44.52 NaN edit \n", + "274497 14432726 466 0 95.152.44.52 NaN edit \n", + "274498 14432727 466 0 95.152.44.52 NaN edit \n", + "274499 14432728 466 0 95.152.44.52 NaN edit \n", + "274504 14432733 279 0 95.152.44.52 NaN edit \n", + "274505 14432734 466 0 95.152.44.52 NaN edit \n", + "274547 14432776 466 0 95.152.44.52 NaN edit \n", + "274568 14432797 466 0 95.152.44.52 NaN edit \n", + "274570 14432799 466 0 95.152.44.52 NaN edit \n", + "274587 14432816 466 0 95.152.44.52 NaN edit \n", + "274638 14432867 466 0 95.152.44.52 NaN edit \n", + "274645 14432874 466 0 95.152.44.52 NaN edit \n", + "274682 14432911 466 0 95.152.44.52 NaN edit \n", + "274694 14432923 466 0 95.152.44.52 NaN edit \n", + "274701 14432930 466 0 95.152.44.52 NaN edit \n", + "274743 14432972 466 0 95.152.44.52 NaN edit \n", + "274977 14433206 466 0 95.152.44.52 NaN edit \n", + "275175 14433404 466 0 95.152.44.52 NaN edit \n", + "275208 14433437 466 0 95.152.44.52 NaN edit \n", + "\n", + " afl_actions afl_var_dump afl_timestamp afl_namespace \\\n", + "252411 warn stored-text:707617359 20160122071743 11 \n", + "252412 warn stored-text:707617359 20160122071743 11 \n", + "252426 warn stored-text:707617417 20160122071827 1 \n", + "252435 warn stored-text:707617482 20160122071906 0 \n", + "252436 warn stored-text:707617482 20160122071906 0 \n", + "252437 warn stored-text:707617482 20160122071906 0 \n", + "252442 warn stored-text:707617536 20160122071939 1 \n", + "252451 warn stored-text:707617701 20160122072124 0 \n", + "252452 warn stored-text:707617701 20160122072124 0 \n", + "252453 warn stored-text:707617701 20160122072124 0 \n", + "252468 warn stored-text:707618028 20160122072525 0 \n", + "252469 warn stored-text:707618028 20160122072525 0 \n", + "252471 warn stored-text:707618149 20160122072655 5 \n", + "252472 warn stored-text:707618149 20160122072655 5 \n", + "252475 warn stored-text:707618213 20160122072740 5 \n", + "252476 warn stored-text:707618213 20160122072740 5 \n", + "252481 warn stored-text:707618288 20160122072822 11 \n", + "252482 warn stored-text:707618288 20160122072822 11 \n", + "252483 warn stored-text:707618306 20160122072840 5 \n", + "252484 warn stored-text:707618306 20160122072840 5 \n", + "252485 warn stored-text:707618330 20160122072900 2 \n", + "252489 warn stored-text:707618417 20160122072954 0 \n", + "252496 warn stored-text:707618504 20160122073048 2 \n", + "252506 warn stored-text:707618641 20160122073219 3 \n", + "252507 warn stored-text:707618642 20160122073219 3 \n", + "252510 warn stored-text:707618663 20160122073230 0 \n", + "252511 warn stored-text:707618663 20160122073230 0 \n", + "252512 warn stored-text:707618663 20160122073230 0 \n", + "252513 warn stored-text:707618663 20160122073230 0 \n", + "252520 warn stored-text:707618705 20160122073309 5 \n", + "... ... ... ... ... \n", + "273921 warn stored-text:707956130 20160124064846 3 \n", + "273929 warn stored-text:707956462 20160124065248 3 \n", + "273949 warn stored-text:707956787 20160124065635 3 \n", + "273963 warn stored-text:707957098 20160124070024 3 \n", + "274041 warn stored-text:707957765 20160124070849 3 \n", + "274156 warn stored-text:707959421 20160124072643 3 \n", + "274183 warn stored-text:707959738 20160124072936 3 \n", + "274188 warn stored-text:707959944 20160124073147 3 \n", + "274205 warn stored-text:707960204 20160124073426 3 \n", + "274250 warn stored-text:707960979 20160124074243 3 \n", + "274291 warn stored-text:707962056 20160124075332 3 \n", + "274303 warn stored-text:707962246 20160124075550 3 \n", + "274497 warn stored-text:707964684 20160124082915 3 \n", + "274498 warn stored-text:707964722 20160124082943 3 \n", + "274499 warn stored-text:707964723 20160124082943 3 \n", + "274504 tag stored-text:707964952 20160124083226 3 \n", + "274505 warn stored-text:707964952 20160124083226 3 \n", + "274547 warn stored-text:707965928 20160124084432 3 \n", + "274568 warn stored-text:707966386 20160124085058 3 \n", + "274570 warn stored-text:707966449 20160124085145 3 \n", + "274587 warn stored-text:707966668 20160124085503 3 \n", + "274638 warn stored-text:707967538 20160124090650 3 \n", + "274645 warn stored-text:707968145 20160124091037 3 \n", + "274682 warn stored-text:707968578 20160124091630 3 \n", + "274694 warn stored-text:707968842 20160124092017 3 \n", + "274701 warn stored-text:707968943 20160124092151 3 \n", + "274743 warn stored-text:707969914 20160124093307 3 \n", + "274977 warn stored-text:707973247 20160124101413 3 \n", + "275175 warn stored-text:707976610 20160124105155 3 \n", + "275208 warn stored-text:707977190 20160124105840 3 \n", + "\n", + " afl_title afl_wiki afl_deleted \\\n", + "252411 WikiProject_Physics NaN 0 \n", + "252412 WikiProject_Physics NaN 0 \n", + "252426 Nirvana NaN 0 \n", + "252435 District_health_board NaN 0 \n", + "252436 District_health_board NaN 0 \n", + "252437 District_health_board NaN 0 \n", + "252442 Liberal_arts_education NaN 0 \n", + "252451 Tamil_Nadu_Pollution_Control_Board NaN 0 \n", + "252452 Tamil_Nadu_Pollution_Control_Board NaN 0 \n", + "252453 Tamil_Nadu_Pollution_Control_Board NaN 0 \n", + "252468 Joint-board NaN 0 \n", + "252469 Joint-board NaN 0 \n", + "252471 WikiProject_Technology NaN 0 \n", + "252472 WikiProject_Technology NaN 0 \n", + "252475 WikiProject_Microsoft NaN 0 \n", + "252476 WikiProject_Microsoft NaN 0 \n", + "252481 Black_Hole_Recordings NaN 0 \n", + "252482 Black_Hole_Recordings NaN 0 \n", + "252483 WikiProject_Pharmacology NaN 0 \n", + "252484 WikiProject_Pharmacology NaN 0 \n", + "252485 ChrisGualtieri/Backlog/1 NaN 0 \n", + "252489 Mladen_Vranic NaN 0 \n", + "252496 Msr69er/Sandbox NaN 0 \n", + "252506 95.152.44.52 NaN 0 \n", + "252507 95.152.44.52 NaN 0 \n", + "252510 The_Adventure_of_the_Cardboard_Box NaN 0 \n", + "252511 The_Adventure_of_the_Cardboard_Box NaN 0 \n", + "252512 The_Adventure_of_the_Cardboard_Box NaN 0 \n", + "252513 The_Adventure_of_the_Cardboard_Box NaN 0 \n", + "252520 WikiProject_Ancient_Egypt NaN 0 \n", + "... ... ... ... \n", + "273921 95.152.44.52 NaN 0 \n", + "273929 95.152.44.52 NaN 0 \n", + "273949 95.152.44.52 NaN 0 \n", + "273963 95.152.44.52 NaN 0 \n", + "274041 95.152.44.52 NaN 0 \n", + "274156 95.152.44.52 NaN 0 \n", + "274183 95.152.44.52 NaN 0 \n", + "274188 95.152.44.52 NaN 0 \n", + "274205 95.152.44.52 NaN 0 \n", + "274250 95.152.44.52 NaN 0 \n", + "274291 95.152.44.52 NaN 0 \n", + "274303 95.152.44.52 NaN 0 \n", + "274497 95.152.44.52 NaN 0 \n", + "274498 95.152.44.52 NaN 0 \n", + "274499 95.152.44.52 NaN 0 \n", + "274504 95.152.44.52 NaN 0 \n", + "274505 95.152.44.52 NaN 0 \n", + "274547 95.152.44.52 NaN 0 \n", + "274568 95.152.44.52 NaN 0 \n", + "274570 95.152.44.52 NaN 0 \n", + "274587 95.152.44.52 NaN 0 \n", + "274638 95.152.44.52 NaN 0 \n", + "274645 95.152.44.52 NaN 0 \n", + "274682 95.152.44.52 NaN 0 \n", + "274694 95.152.44.52 NaN 0 \n", + "274701 95.152.44.52 NaN 0 \n", + "274743 95.152.44.52 NaN 0 \n", + "274977 95.152.44.52 NaN 0 \n", + "275175 95.152.44.52 NaN 0 \n", + "275208 95.152.44.52 NaN 0 \n", + "\n", + " afl_patrolled_by afl_rev_id afl_log_id \n", + "252411 0 NaN NaN \n", + "252412 0 NaN NaN \n", + "252426 0 NaN NaN \n", + "252435 0 NaN NaN \n", + "252436 0 NaN NaN \n", + "252437 0 NaN NaN \n", + "252442 0 NaN NaN \n", + "252451 0 NaN NaN \n", + "252452 0 NaN NaN \n", + "252453 0 NaN NaN \n", + "252468 0 NaN NaN \n", + "252469 0 NaN NaN \n", + "252471 0 NaN NaN \n", + "252472 0 NaN NaN \n", + "252475 0 NaN NaN \n", + "252476 0 NaN NaN \n", + "252481 0 NaN NaN \n", + "252482 0 NaN NaN \n", + "252483 0 NaN NaN \n", + "252484 0 NaN NaN \n", + "252485 0 NaN NaN \n", + "252489 0 NaN NaN \n", + "252496 0 NaN NaN \n", + "252506 0 NaN NaN \n", + "252507 0 NaN NaN \n", + "252510 0 NaN NaN \n", + "252511 0 NaN NaN \n", + "252512 0 NaN NaN \n", + "252513 0 NaN NaN \n", + "252520 0 NaN NaN \n", + "... ... ... ... \n", + "273921 0 NaN NaN \n", + "273929 0 NaN NaN \n", + "273949 0 NaN NaN \n", + "273963 0 NaN NaN \n", + "274041 0 NaN NaN \n", + "274156 0 NaN NaN \n", + "274183 0 NaN NaN \n", + "274188 0 NaN NaN \n", + "274205 0 NaN NaN \n", + "274250 0 NaN NaN \n", + "274291 0 NaN NaN \n", + "274303 0 NaN NaN \n", + "274497 0 NaN NaN \n", + "274498 0 NaN NaN \n", + "274499 0 NaN NaN \n", + "274504 0 NaN NaN \n", + "274505 0 NaN NaN \n", + "274547 0 NaN NaN \n", + "274568 0 NaN NaN \n", + "274570 0 NaN NaN \n", + "274587 0 NaN NaN \n", + "274638 0 NaN NaN \n", + "274645 0 NaN NaN \n", + "274682 0 NaN NaN \n", + "274694 0 NaN NaN \n", + "274701 0 NaN NaN \n", + "274743 0 NaN NaN \n", + "274977 0 NaN NaN \n", + "275175 0 NaN NaN \n", + "275208 0 NaN NaN \n", + "\n", + "[1133 rows x 16 columns]" + ] + }, + "execution_count": 53, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# What were the very active IPs doing\n", + "df_jan2016[df_jan2016['afl_user_text'] == '95.152.44.52']" + ] + }, + { + "cell_type": "code", + "execution_count": 43, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "edit 300781\n", + "createaccount 71902\n", + "move 193\n", + "autocreateaccount 18\n", + "gatheredit 9\n", + "delete 4\n", + "Name: afl_action, dtype: int64" + ] + }, + "execution_count": 43, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Number of hits per editor's actions\n", + "df_jan2016['afl_action'].value_counts()" + ] + }, + { + "cell_type": "code", + "execution_count": 44, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "527 71853\n", + "61 27072\n", + "650 24264\n", + "633 21099\n", + "279 18460\n", + "636 17279\n", + "384 15080\n", + "135 10028\n", + "30 7829\n", + "172 7471\n", + "271 7192\n", + "380 6554\n", + "80 6530\n", + "364 6238\n", + "686 6089\n", + "712 5597\n", + "466 5555\n", + "432 5398\n", + "220 5385\n", + "550 5215\n", + "189 4730\n", + "3 4656\n", + "148 4470\n", + "260 4148\n", + "614 4120\n", + "231 3398\n", + "631 3349\n", + "225 3245\n", + "46 3174\n", + "680 3134\n", + " ... \n", + "242 19\n", + "706 19\n", + "16 19\n", + "734 18\n", + "264 18\n", + "710 17\n", + "666 15\n", + "722 14\n", + "167 13\n", + "294 10\n", + "624 9\n", + "727 8\n", + "651 8\n", + "637 8\n", + "745 6\n", + "52 6\n", + "674 6\n", + "748 5\n", + "690 5\n", + "2 5\n", + "597 4\n", + "579 4\n", + "709 4\n", + "68 4\n", + "554 3\n", + "749 3\n", + "596 1\n", + "718 1\n", + "459 1\n", + "694 1\n", + "Name: afl_filter, Length: 138, dtype: int64" + ] + }, + "execution_count": 44, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Number of hits per filter\n", + "df_jan2016['afl_filter'].value_counts()" + ] + }, + { + "cell_type": "code", + "execution_count": 45, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "UserLogin 71920\n", + "Skateboard 660\n", + "Conchobar_Lads_Tomlinson 584\n", + "Billboard_(magazine) 536\n", + "Chris_Stark 467\n", + "Tyler_Joseph 431\n", + "Bulletin_board_system 339\n", + "Hailey_Baldwin 328\n", + "Flickr_-_Official_U.S._Navy_Imagery_-_Sailors_play_board_games_with_children_at_the_Cameron_Community_Ministries_during_Rochester_Navy_Week.jpg 322\n", + "Ryback 287\n", + "Aditya_Pratap 247\n", + "95.152.44.52 232\n", + "WikiProject_Film 232\n", + "British_Board_of_Film_Classification 224\n", + "10_Cloverfield_Lane 219\n", + "Keyboard_instrument 217\n", + "Board_game 203\n", + "176.97.116.140 202\n", + "93.124.46.78 198\n", + "AbhiJahazi 186\n", + "Board 184\n", + "Entertainment_Software_Rating_Board 178\n", + "Battle_of_the_Alamo 169\n", + "Computer_keyboard 161\n", + "Cultural_history_of_the_buttocks 155\n", + "Conchobar_Tomlinson 155\n", + "History_of_the_internal_combustion_engine 154\n", + "Skateboarder_(magazine) 146\n", + "WikiProject_Video_games 140\n", + "Cian_Mitchell 140\n", + " ... \n", + "Surfix 1\n", + "British_Colonial_Research_Committee 1\n", + "Nassau_County_Police_Department 1\n", + "Institute_of_Health_Sciences_Bhubaneswar 1\n", + "Underwater_Pompeii 1\n", + "El_Valle_de_Antón 1\n", + "Make_My_Journeys 1\n", + "Ten_Fold_Engineering 1\n", + "LNER_Class_A3_4472_Flying_Scotsman 1\n", + "North_Eastern_College 1\n", + "Zillow 1\n", + "Ww57614wW 1\n", + "Junkyard_Dog 1\n", + "John_Steptoe 1\n", + "Financial_doctor 1\n", + "Music_of_Portugal 1\n", + "Northwoods_Mall_(North_Charleston,_South_Carolina) 1\n", + "Niuman_Romero 1\n", + "Chaudhry_Faisal_Mushtaq 1\n", + "Big_Island_(Bay_of_Quinte) 1\n", + "Venus_of_Willendorf 1\n", + "Alexis_Argüello 1\n", + "Pdfpdf/Images_of_Adelaide 1\n", + "Chickasaw_State_Park_(Alabama) 1\n", + "Torin's_Passage 1\n", + "Gulshanthakurbohani 1\n", + "WPCH-TV 1\n", + "List_of_countries_with_IKEA_stores 1\n", + "Phelps,_New_York 1\n", + "Micheál_Quirke 1\n", + "Name: afl_title, Length: 91387, dtype: int64" + ] + }, + "execution_count": 45, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Number of hits per intended edit page\n", + "df_jan2016['afl_title'].value_counts()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "To be fair, I don't see any particularly interesting or conspicious pattern, beside the 71920 attempts at account creations. Neither the pages edited are extraordinary, nor are there particular pages with extra-orbitant hits; users are not particularly interesting either and it's mostly the most active filters that got triggered anyway.\n", + "\n", + "But maybe it's exactly them that make the 71920 hits difference to all the \"standard\" numbers. I'm comparing this with September 2016 (238406 hits) for reference." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Filter hits in September 2016" + ] + }, + { + "cell_type": "code", + "execution_count": 47, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "edit 213279\n", + "createaccount 24824\n", + "move 196\n", + "autocreateaccount 88\n", + "delete 19\n", + "Name: afl_action, dtype: int64" + ] + }, + "execution_count": 47, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df_sep2016 = pd.read_csv(\"quarry-37496-abuselog-entries-en-wiki-in-september-2016-run389243.csv\", sep=',')\n", + "\n", + "# Number of hits per editor's actions\n", + "df_sep2016['afl_action'].value_counts()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Mh. The comparison is not really insightful. It's just a proportionally smaller numbers of all actions." + ] + }, + { + "cell_type": "code", + "execution_count": 48, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "89.178.207.116 495\n", + "98.206.72.9 207\n", + "Erwewer7 182\n", + "209.93.158.179 154\n", + "PCSO Bethany Slaughter 136\n", + "GoldRingChip 110\n", + "191.176.114.155 95\n", + "2001:56A:F655:EE00:D04F:9F13:A37A:E2A 93\n", + "DY3o! 92\n", + "84.236.56.77 91\n", + "Sdfghuykiujhgf 87\n", + "Safdfhgjusasssss 87\n", + "184.184.116.211 86\n", + "Asdfghjkjhgfdsdfgh 85\n", + "Junior5a is Queer 82\n", + "Werldwayd 81\n", + "PanchoS 80\n", + "107.77.219.67 78\n", + "192.43.223.44 76\n", + "DIo.cixia 76\n", + "24.130.207.26 75\n", + "2604:2D80:C029:EA1A:71CB:BB4E:3103:A9E3 74\n", + "2604:5500:5:19FF:B156:28C6:E959:32CC 74\n", + "Serena bella02 73\n", + "Madi.f.n 69\n", + "BOBMARLEY2009 66\n", + "104.180.173.218 65\n", + "Rahulsharma15456 63\n", + "98.215.193.216 63\n", + "104.192.9.9 63\n", + " ... \n", + "138.75.232.218 1\n", + "Vikas gurubani 1\n", + "98.175.57.5 1\n", + "Borewell 1\n", + "Lazykitty56 1\n", + "66.213.114.164 1\n", + "Dokis42 1\n", + "Jazz.72610 1\n", + "2A02:C7F:701D:D400:D073:8013:DD18:C67F 1\n", + "2601:2C1:8501:1D40:ACD0:8E11:CB10:9123 1\n", + "Whythe7 1\n", + "Haniakaranvirbohra288 1\n", + "24.185.136.136 1\n", + "Darkxtuik 1\n", + "Tjdecker56 1\n", + "73.200.112.132 1\n", + "173.167.213.181 1\n", + "213.205.251.187 1\n", + "2602:30A:C088:C780:81E9:6A8C:69CC:6762 1\n", + "2607:FB90:2444:8144:35A1:1D8:4D99:13B2 1\n", + "Bumblebumble31 1\n", + "99.227.188.25 1\n", + "103.41.42.229 1\n", + "Aksingh745 1\n", + "2600:1009:B000:28FB:3160:9AFC:8D37:C86B 1\n", + "Sir Brayne 1\n", + "152.208.0.130 1\n", + "2603:3004:709:6D00:34A3:8628:FB0D:D983 1\n", + "179.255.223.23 1\n", + "2605:E000:4E4D:2400:8C60:FA32:AB8C:C4DB 1\n", + "Name: afl_user_text, Length: 100862, dtype: int64" + ] + }, + "execution_count": 48, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Number of hits per editor\n", + "df_sep2016['afl_user_text'].value_counts() #TODO intersect users with actions/pages" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The comparison of number of edits per user reveals that in January there were a couple of particularly active IPs. It would be interesting to know what they were trying to do." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Actions over the years" + ] + }, { "cell_type": "code", "execution_count": 6, -- GitLab