{ "cells": [ { "cell_type": "code", "execution_count": 382, "id": "israeli-perth", "metadata": {}, "outputs": [], "source": [ "import pandas as pd\n", "import numpy as np\n", "import seaborn as sns\n", "\n", "sns.set_theme(style=\"darkgrid\")" ] }, { "cell_type": "code", "execution_count": 378, "id": "brave-marsh", "metadata": {}, "outputs": [], "source": [ "static_keys = [\"סמל ועדה\", \"שם ישוב\", \"בזב\", \"מצביעים\", \"פסולים\", \"כשרים\"]\n", "\n", "def load_cities_data():\n", " vals = range(21, 25)\n", " indexes = [0,1,1,1] # first file has no סמל ועדה column\n", " dfs = [pd.read_csv(f\"cities/{e}.csv\", index_col=i, encoding=\"iso-8859-8\") for e, i in zip(vals, indexes)]\n", "\n", " # cleanup NaN columns\n", " del dfs[2][\"Unnamed: 37\"]\n", " del dfs[3][\"Unnamed: 46\"]\n", " return dfs" ] }, { "cell_type": "code", "execution_count": 374, "id": "ordered-executive", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Index(['סמל ועדה', 'סמל ישוב', 'בזב', 'מצביעים', 'פסולים', 'כשרים', 'אמת', 'ב',\n", " 'ג', 'ודעם', 'ז', 'זץ', 'ט', 'י', 'יז', 'ינ', 'יף', 'יק', 'יר', 'כ',\n", " 'כך', 'כן', 'ל', 'מחל', 'מרצ', 'נ', 'ני', 'נר', 'עם', 'פה', 'ףז', 'צי',\n", " 'צכ', 'צף', 'ץ', 'ק', 'קי', 'קך', 'קץ', 'ר', 'רנ', 'רף', 'רק', 'שס',\n", " 'ת'],\n", " dtype='object')\n" ] } ], "source": [ "dfs = load_cities_data()\n", "print(dfs[3].keys())" ] }, { "cell_type": "code", "execution_count": 296, "id": "soviet-finish", "metadata": {}, "outputs": [], "source": [ "df2 = dfs[2].sort_values(by=['בזב'], ascending=False)[:100]\n", "df3 = dfs[3].sort_values(by=['בזב'], ascending=False)[:100]" ] }, { "cell_type": "code", "execution_count": 395, "id": "smart-joseph", "metadata": {}, "outputs": [], "source": [ "def scatter_party(p):\n", " rate3 = df3[\"מצביעים\"] / df3[\"בזב\"]\n", " rate2 = df2[\"מצביעים\"] / df2[\"בזב\"]\n", " p3 = df3[p] / rate3\n", " p2 = df2[p] / rate2\n", " odf = pd.DataFrame({\n", " \"votes\": rate3 / rate2,\n", " \"party\": df2[p] / df2[\"מצביעים\"],\n", " \"name\": df3[p]\n", " })\n", " odf = odf[odf[\"party\"] > 0.05]\n", " \n", " return sns.regplot(x=\"party\", y=\"votes\", data=odf)" ] }, { "cell_type": "code", "execution_count": 396, "id": "simple-volunteer", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
| \n", " | מחל | \n", "שס | \n", "ודעם | \n", "פה | \n", "ל | \n", "ג | \n", "אמת | \n", "
|---|---|---|---|---|---|---|---|
| שם ישוב | \n", "\n", " | \n", " | \n", " | \n", " | \n", " | \n", " | \n", " |
| אום אלפחם | \n", "2.687500 | \n", "1.083333 | \n", "0.436388 | \n", "1.200000 | \n", "0.750000 | \n", "1.000000 | \n", "0.227273 | \n", "
| אופקים | \n", "0.761945 | \n", "0.932208 | \n", "0.333333 | \n", "0.488142 | \n", "0.743292 | \n", "1.028207 | \n", "0.654321 | \n", "
| אור יהודה | \n", "0.829278 | \n", "0.856481 | \n", "0.562500 | \n", "0.422553 | \n", "0.826331 | \n", "0.602041 | \n", "0.824373 | \n", "
| אור עקיבא | \n", "0.803556 | \n", "0.838681 | \n", "0.083333 | \n", "0.584626 | \n", "0.766290 | \n", "0.678832 | \n", "0.994872 | \n", "
| אילת | \n", "0.788089 | \n", "0.764416 | \n", "0.379747 | \n", "0.460652 | \n", "0.971963 | \n", "0.524324 | \n", "0.984724 | \n", "
| ... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "... | \n", "
| רעננה | \n", "0.734019 | \n", "0.875202 | \n", "0.369748 | \n", "0.519085 | \n", "1.070635 | \n", "0.661247 | \n", "1.062368 | \n", "
| שדרות | \n", "0.761988 | \n", "0.922330 | \n", "0.516129 | \n", "0.442543 | \n", "0.695527 | \n", "0.441441 | \n", "0.438687 | \n", "
| שוהם | \n", "0.748437 | \n", "0.893004 | \n", "0.666667 | \n", "0.518784 | \n", "1.081560 | \n", "0.566667 | \n", "1.092841 | \n", "
| שפרעם | \n", "2.181373 | \n", "1.058824 | \n", "0.450079 | \n", "0.379784 | \n", "0.957500 | \n", "0.500000 | \n", "0.991903 | \n", "
| תל אביב יפו | \n", "0.763720 | \n", "0.851865 | \n", "0.443705 | \n", "0.450189 | \n", "1.117818 | \n", "0.734832 | \n", "0.999278 | \n", "
101 rows × 7 columns
\n", "