Skip to content

Instantly share code, notes, and snippets.

@aflaxman
Created February 4, 2026 16:00
Show Gist options
  • Select an option

  • Save aflaxman/65659878cdac12cb3991fc91b686671d to your computer and use it in GitHub Desktop.

Select an option

Save aflaxman/65659878cdac12cb3991fc91b686671d to your computer and use it in GitHub Desktop.
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"id": "eb7e18ca",
"metadata": {},
"outputs": [],
"source": [
"import numpy as np, pandas as pd, matplotlib.pyplot as plt\n",
"import tqdm.notebook"
]
},
{
"cell_type": "code",
"execution_count": 2,
"id": "722d1489",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"False"
]
},
"execution_count": 2,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"def simulate_election(n_votes, p):\n",
" \"\"\"\n",
" Simulate an election and report whether there is a tie for first place.\n",
"\n",
" Parameters\n",
" ----------\n",
" n_votes : int\n",
" Number of independent votes to draw.\n",
" p : array-like of float\n",
" Voting probabilities for each candidate. Must be 1-D, nonnegative,\n",
" sum to 1, and have length >= 2.\n",
"\n",
" Returns\n",
" -------\n",
" bool\n",
" True if at least two candidates are tied for the highest vote total;\n",
" False otherwise.\n",
"\n",
" Notes\n",
" -----\n",
" Votes are sampled i.i.d. from a categorical distribution with probabilities\n",
" `p`. This checks for a tie *at the top* (first place), not ties for lower\n",
" ranks.\n",
" \"\"\"\n",
"\n",
" votes = np.random.choice(range(len(p)), p=p, size=n_votes)\n",
" \n",
" vote_tallys = pd.Series(votes).value_counts()\n",
" \n",
" if vote_tallys.iloc[0] == vote_tallys.iloc[1]:\n",
" return True\n",
" else:\n",
" return False\n",
" \n",
"simulate_election(2_000, np.ones(10)/10)"
]
},
{
"cell_type": "code",
"execution_count": 3,
"id": "09fd8432",
"metadata": {},
"outputs": [
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "d158f17e027b4eb997bc2177f6fdd944",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
" 0%| | 0/100000 [00:00<?, ?it/s]"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/plain": [
"0.01419"
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"n_replications = 100_000\n",
"n_votes = 2_000\n",
"probabilities = [.2, .2, .1, .1, .1, .1, .05, .05, .05, .05]\n",
"assert np.allclose(sum(probabilities), 1)\n",
"n_ties = 0\n",
"for _ in tqdm.notebook.tqdm(range(n_replications)):\n",
" n_ties += simulate_election(n_votes, probabilities)\n",
"n_ties / n_replications"
]
},
{
"cell_type": "code",
"execution_count": 4,
"id": "9714a669",
"metadata": {},
"outputs": [
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "65c9ece2a0e749b3b1eb71b8b069fd31",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
" 0%| | 0/100000 [00:00<?, ?it/s]"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/plain": [
"0.05277"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"n_replications = 100_000\n",
"n_votes = 2_000\n",
"probabilities = [.1, .1, .1, .1, .1, .1, .1, .1, .1, .1]\n",
"assert np.allclose(sum(probabilities), 1)\n",
"n_ties = 0\n",
"for _ in tqdm.notebook.tqdm(range(n_replications)):\n",
" n_ties += simulate_election(n_votes, probabilities)\n",
"n_ties / n_replications"
]
},
{
"cell_type": "code",
"execution_count": 5,
"id": "6e2cabcc",
"metadata": {},
"outputs": [
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "b7e41e2a9837448fa691eb65aff97d8d",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
" 0%| | 0/100000 [00:00<?, ?it/s]"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/plain": [
"0.0183"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"n_replications = 100_000\n",
"n_votes = 2_000\n",
"probabilities = [.5, .5, .0, .0, .0, .0, .0, .0, .0, .0]\n",
"assert np.allclose(sum(probabilities), 1)\n",
"n_ties = 0\n",
"for _ in tqdm.notebook.tqdm(range(n_replications)):\n",
" n_ties += simulate_election(n_votes, probabilities)\n",
"n_ties / n_replications"
]
},
{
"cell_type": "code",
"execution_count": 6,
"id": "58a86c3d",
"metadata": {},
"outputs": [
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "47ccf28611514cbcb17dc3f75e65cec1",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
" 0%| | 0/6 [00:00<?, ?it/s]"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
" 0%| | 0/100000 [00:00<?, ?it/s]"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
" 0%| | 0/100000 [00:00<?, ?it/s]"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
" 0%| | 0/100000 [00:00<?, ?it/s]"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
" 0%| | 0/100000 [00:00<?, ?it/s]"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
" 0%| | 0/100000 [00:00<?, ?it/s]"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
" 0%| | 0/100000 [00:00<?, ?it/s]"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/plain": [
"500 0.09857\n",
"1000 0.07045\n",
"2000 0.05128\n",
"3000 0.04173\n",
"4000 0.03609\n",
"5000 0.03298\n",
"dtype: float64"
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"n_replications = 100_000\n",
"vote_sizes = [500, 1_000, 2_000, 3_000, 4_000, 5_000]\n",
"probabilities = [.1, .1, .1, .1, .1, .1, .1, .1, .1, .1]\n",
"assert np.allclose(sum(probabilities), 1)\n",
"\n",
"pr_tie = {}\n",
"for n_votes in tqdm.notebook.tqdm(vote_sizes, position=0):\n",
" n_ties = 0\n",
" for _ in tqdm.notebook.tqdm(range(n_replications), position=1, leave=False):\n",
" n_ties += simulate_election(n_votes, probabilities)\n",
" pr_tie[n_votes] = n_ties / n_replications\n",
"\n",
"pr_tie = pd.Series(pr_tie)\n",
"pr_tie"
]
},
{
"cell_type": "code",
"execution_count": 7,
"id": "32327b7b",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.legend.Legend at 0x7faae9ec2e90>"
]
},
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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2tSqovAAT53OzNGSuONmxwEAAACcXpELUWxsrMaOHatu3bqpTp06Cg8PV9OmTTV06FDNmjVLWVlZpZETheDiYtH1Tf85bI6LtAIAAACXVOhC9Oeff6p79+5q0aKFVqxYobZt22rMmDF64YUXdOutt8owDD3zzDOKiIjQpEmTKEYm6dcsUpK0MPaY0rNyTE4DAAAAODe3wu74n//8R4899pi+/vprBQYGXnC/1atX6+2339brr7+up59+uiQyoggaR/qrdrCP9iala8GOY7qhRaTZkQAAAACnVehCtGvXLlmt1kvu1759e7Vv3142m+2ygqF4LBaL+jaL0DsL4/XD5sMUIgAAAOAiCn3IXGHK0OXsj5JzbrW55fFJOpWebXIaAAAAwHld1ipzCQkJuvnmmxUSEqIqVaqob9+++vvvv0sqG4opOtRXDcP9lWM39Ov2BLPjAAAAAE7rsgrRsGHD1LhxYy1dulSLFi1SWFiYBg8eXFLZcBn6NT87S8RFWgEAAIALK1IhGj16tNLT0x23d+/erSeeeEINGzZU8+bNNXr0aMXFxZV4SBRd338Om1u376SOpmSanAYAAABwTkUqRNWrV1erVq30448/SpIGDBigtm3b6sknn9Qjjzyifv36aciQIaUSFEUTGeil1jWDZBjSz1uZJQIAAAAKUqRC9Nhjj+m3337TlClTdNNNN+m+++7TSy+9JJvNptzcXE2ePFnvvvtuaWVFETkOm+MirQAAAECBCr3s9jm1a9fWb7/9pi+++EKdO3fW6NGj9dprr8lisZRGPlyG3k3CNf6nHdp6KEV7k9JVO9jH7EgAAACAUynWogonTpzQkCFDtH79em3atEnt27fX1q1bSzobLlOwr4c61KkqSfqJWSIAAAAgnyIVooULFyosLEwhISGqXr26du7cqc8++0yvvPKKBg0apMcff1xnzpwprawohnPXJPpxyxEZhmFyGgAAAMC5FKkQjRw5Uo8//rgyMjL03nvvacyYMZKkrl276s8//5TValXz5s1LISaKq1fjanJ3c9HuxDTFJpw2Ow4AAADgVIpUiBISEtSnTx95enrq2muv1fHjxx33eXh46KWXXtK3335b4iFRfP6eVnWLCZXE4goAAADAvxWpEPXr108333yznn76afXs2VO9e/fOt0+jRo1KLBxKxrnV5n7isDkAAAAgjyIV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b9QzzzyjmTNnKjs7W7/++muefV5//XW98MILevrpp/X111/rvvvuU+fOnRUTc/YKx35+fpo+fboiIiK0bds2jRgxQn5+fnr88ccdz7Fnzx59//33+vnnn3Xq1CndcsstmjhxoqP0PPXUU/r444/15ptvqlOnTkpISNDOnTslnV1GuVevXmrfvr2WL18uNzc3vfjii7r22mu1devWfDM4UVFRSkhIUExMjCZMmKABAwYoICBAhw8fVu/evXXHHXdo5syZ2rlzp0aMGCFPT0+NGzfO8fgZM2bovvvu08qVKy/4uZ0+fVpDhw7Vu+++K8Mw9Prrr6t3796Kj4+Xn5/fBR93MbfffrtWr16td955R82aNdPevXuVlHT2kFi73a7q1avrq6++UtWqVbVq1SrdfffdCg8P1y233OJ4jsWLFys8PFyLFy/W7t27NWDAADVv3lwjRoyQdLY0HTlyRIsXL5bVatWoUaMcFzQtSFpamq6//nr16NFD//vf/7R3716NHj06zz6Xyvboo48qNjZWqampjlnTKlWqXHJcXVxcdMMNN2jEiBGaPXu2srOztW7duhL5PqQQAQBQybi6nF2trmZVH13TIO8y4UlpeQ+/O/ffhJRMJZ+xXeRZy94ZW64aPj+/RJ/z5g9XF2q/HRN6ydu98H+N+vnnn/Odt/L000/r6aef1h9//KGdO3dq/vz5ioiIkCS9/PLLuu666wofXFJkZKQeffRRx+0HH3xQ8+fP19y5cwtdiF566SUNHDhQ48ePd2xr1qxZnn169+6t+++/X9LZ2aA333xTixcvdhSiZ5991rFvrVq19Oijj2rOnDl5CpHdbtf06dMdZeG2227TwoUL9dJLL+n06dN6++239d5772no0KGSpDp16qhTp06SpC+//FJ2u12ffPKJ4y/D06ZNU2BgoJYsWaKePXvmyevq6qpq1arJYrEoICDAcQjYBx98oKioKL333nuyWCyqX7++jhw5oieeeELPP/+8XFzOHkhVt25dTZ48+aKfW7du3fLcnjp1qgIDA7V06VJdf/31F31sQXbt2qW5c+dqwYIF6t69uyTpiiuucNxvtVrzjFHt2rW1evVqzZ07N08hCgoK0nvvvSdXV1fVr19fffr00cKFCzVixAjt2rVLv/32m9atW6c2bdpIkj799FM1aNDggrlmzZolu92uTz/9VJ6enmrUqJEOHTqk++67r9DZfH195eXlpaysrDyH4/3vf/+76Li2bt1aKSkpuv7661WnTh1JumjWoqAQAQAASWcPjQnx81CIn4fa16ma5760rBwt+OuoHpq7xaR05VvXrl01ZcqUPNuqVKkiSYqNjVVUVJSjDElS+/bti/waubm5evnllzV37lwdPnxY2dnZysrKKtKFbDdv3uyYPbiQpk2bOv7fYrGoWrVqeWYVvvzyS73zzjvas2eP0tLSlJOTI3//vLOUtWrVyjNzEh4e7niO2NhYZWVl6Zprrinw9bds2aLdu3fnm3nJzMzUnj17CvdG/3md9u3b55lh6Nixo9LS0nTo0CHVqFFDktSqVatLPtexY8f07LPPasmSJUpMTFRubq4yMjJ04MCBQuc53+bNm+Xq6qrOnTtfcJ/3339fn332mQ4cOKAzZ84oOzs73ypvjRo1ynNR0vDwcG3btk3S2ffv5uaW5/3Vr19fgYGBF3zN2NhYNW3aVJ6eno5tBf1ZLUy2f7vUuPbs2VN33HGHevXqpR49eqh79+665ZZbFB4eftHnLQwKEQAAuCRfDzfVDSveoT+lxcvqqh0TCj6n4992HEkt1OzP1/e2z3eI4YVeuyh8fHwUHR1dpMec79xshWEYjm3nnwsiSa+++qrefvttvfXWW2rSpIl8fHw0ZswYZWcX/rwoL69LLyhhteY9dNJischuP3t+1urVqzVkyBCNHz9evXr1UkBAgObMmaPXX3+90M9xqQxpaWlq1apVgee7hISEFPCIy+Pj43PJfYYOHaoTJ07o7bffVs2aNeXh4aH27dsX6bM/36U+gzlz5ujRRx/V66+/rvbt28vPz0+vvvqq1q5dm2e/i33OpaWw2f6tMOM6bdo0jRo1SvPmzdOXX36pZ599VgsWLFC7du0uKzOFCAAAlEsWi6XQh61daOW8gvYryqFwJaFBgwY6ePCgEhISHP/avWbNmjz7nPsL4flLIG/evDnPPitXrlT//v116623Sjp7WNquXbvUsGHDQmdp2rSpFi5cqDvvvLNY72XVqlWqWbOmnnnmGce2op70XrduXXl5eWnhwoW666678t3fsmVLffnllwoNDc0381QUDRo00DfffCPDMByzRCtXrpSfn1+RV6JbuXKlPvjgA/Xu3VvS2cUBzp3vUxxNmjSR3W7X0qVLHYfM/fv1OnTo4Dh0UVKRZseks7NBOTk52rhxo+OQubi4uDwLd/xbgwYN9PnnnyszM9MxS/TvP6uFyebu7q7c3Lzn9RV2XFu0aKEWLVroqaeeUvv27TVr1qzLLkSsMgcAAFDKsrKydPTo0Txf5/7C3L17d9WrV09Dhw7Vli1btHz58jyFQpKio6MVFRWlcePGKT4+Xr/88ku+WZe6detqwYIFWrVqlWJjY3XPPffo2LFjRco5duxYzZ49W2PHjlVsbKy2bdumSZMmFfrxdevW1YEDBzRnzhzt2bNH77zzjr777rsiZfD09NQTTzyhxx9/XDNnztSePXu0Zs0axwprQ4YMUXBwsPr376/ly5dr7969WrJkiUaNGqVDhw4V+nXuv/9+HTx4UA8++KB27typH374QWPHjtXDDz/smJEryvv+/PPPFRsbq7Vr12rIkCGFmm27kFq1amno0KEaNmyYvv/+e8d7nDt3ruP1NmzYoPnz52vXrl167rnntH79+iK9RkxMjK699lrdc889Wrt2rTZu3Ki77rrrorkHDx4si8WiESNGaMeOHfr111/12muv5dmnMNlq1aqlrVu3Ki4uTklJSbLZbJcc17179+qpp57S6tWrtX//fv3++++Kj48vkfOIKEQAAKBQgnzc5eF28b86eLi5KMjH+a7TYnb2efPmKTw8PM/XuUUCXFxc9N133+nMmTO68sorddddd+VZYlo6e+jT7NmztXPnTjVt2lSTJk3Siy++mGefZ599Vi1btlSvXr3UpUsXVatWTTfccEORcnbp0kVfffWVfvzxRzVv3lzdunXTunXrCv34fv366aGHHtIDDzyg5s2ba9WqVXruueeKlEGSnnvuOT3yyCN6/vnn1aBBAw0YMMBxjpG3t7eWLVumGjVq6KabblKDBg00fPhwZWZmFmnGKDIyUr/++qvWrVunZs2a6d5779Xw4cPzLApRWJ9++qlOnTqlli1b6rbbbtOoUaMUGhpa5Oc535QpU3TzzTfr/vvvV/369TVixAilp6dLku655x7ddNNNGjBggNq2basTJ07kmZEprGnTpikiIkKdO3fWTTfdpLvvvvuiuX19ffXTTz9p27ZtatGihZ555pl8hbkw2UaMGKGYmBi1bt1aISEhWrly5SXH1dvbWzt37tR//vMf1atXT3fffbdGjhype+65p8jv+98sxvkHo1ZAqampCggIUEpKymVNq1ZkNptNv/76q3r37p3vWFOUPcbDuTAezoXxMN/h5DOOa/Xk5ORoxYoV6tSpk9zczh5mFuTjXiIXNi3o93dmZqb27t2r2rVr5zmpuzjZC1JS2UuKxWLRd999V+RSA6BoPy84hwgAABRaZKCXozTYbDbt95UaRfiXi4J6fnYAOIdD5gAAAABUWswQAQAAOKEKflYD4DSYIQIAAABQaVGIAABAucLMCYBLKcrPCQoRAAAoF84t3JCRkWFyEgDO7tzPicIs+OLU5xBNmTJFU6ZM0b59+yRJjRo10vPPP6/rrrvO3GAAAKDMubq6KjAwMM/1aCwWi8mpADgTwzCUkZGhxMREBQYGytXV9ZKPcepCVL16dU2cOFF169aVYRiaMWOG+vfvr02bNqlRo0ZmxwMAAGWsWrVqkuQoRQBQkMDAQMfPi0tx6kLUt2/fPLdfeuklTZkyRWvWrLlgIcrKylJWVpbjdmpqqqSz10qw2WylF7YcO/e58Pk4B8bDuTAezoXxcC6lOR4Xek6LxaLw8HCFhoby5wBAgaxWa6Fmhs6xGOXkzMTc3Fx99dVXGjp0qDZt2qSGDRsWuN+4ceM0fvz4fNtnzZolb2/v0o4JAABKQEZGhgYPHqyUlBT5+/ubHQdABeb0hWjbtm1q3769MjMz5evrq1mzZql3794X3P/fM0QpKSmqUaOG9u7dKz8/v7KIXO7YbDYtXrxYXbt2LRdXGq/oGA/nwng4F8bDuZTmeJw+fVq1a9dWcnKyAgICSvS5AeB8Tl+IsrOzdeDAAaWkpOjrr7/WJ598oqVLl15whujfDh06pKioqFJOCQAASsPBgwdVvXp1s2MAqMCcvhD9W/fu3VWnTh199NFHhdrfbrfryJEj8vPzYyWaC0hNTVVUVJQOHjzIYQlOgPFwLoyHc2E8nEtpjodhGDp9+rQiIiLk4sJVQgCUHqdeVKEgdrs9zyFxl+Li4sK/LBWSv78/f8FwIoyHc2E8nAvj4VxKazw4VA5AWXDqQvTUU0/puuuuU40aNXT69GnNmjVLS5Ys0fz5882OBgAAAKACcOpClJiYqNtvv10JCQkKCAhQ06ZNNX/+fPXo0cPsaAAAAAAqAKcuRJ9++qnZESoFDw8PjR07Vh4eHmZHgRgPZ8N4OBfGw7kwHgAqgnK3qAIAAAAAlBSWbQEAAABQaVGIAAAAAFRaFCIAAAAAlRaFCAAAAEClRSGqIJYtW6a+ffsqIiJCFotF33//fZ77DcPQ888/r/DwcHl5eal79+6Kj4/Ps8/Jkyc1ZMgQ+fv7KzAwUMOHD1daWlqefbZu3aqrrrpKnp6eioqK0uTJk0v7rZU7r7zyitq0aSM/Pz+FhobqhhtuUFxcXJ59MjMzNXLkSFWtWlW+vr76z3/+o2PHjuXZ58CBA+rTp4+8vb0VGhqqxx57TDk5OXn2WbJkiVq2bCkPDw9FR0dr+vTppf32yqUpU6aoadOmjotHtm/fXr/99pvjfsbDPBMnTpTFYtGYMWMc2xiPsjVu3DhZLJY8X/Xr13fcz3gAqPAMVAi//vqr8cwzzxjffvutIcn47rvv8tw/ceJEIyAgwPj++++NLVu2GP369TNq165tnDlzxrHPtddeazRr1sxYs2aNsXz5ciM6OtoYNGiQ4/6UlBQjLCzMGDJkiLF9+3Zj9uzZhpeXl/HRRx+V1dssF3r16mVMmzbN2L59u7F582ajd+/eRo0aNYy0tDTHPvfee68RFRVlLFy40NiwYYPRrl07o0OHDo77c3JyjMaNGxvdu3c3Nm3aZPz6669GcHCw8dRTTzn2+fvvvw1vb2/j4YcfNnbs2GG8++67hqurqzFv3rwyfb/lwY8//mj88ssvxq5du4y4uDjj6aefNqxWq7F9+3bDMBgPs6xbt86oVauW0bRpU2P06NGO7YxH2Ro7dqzRqFEjIyEhwfF1/Phxx/2MB4CKjkJUAf27ENntdqNatWrGq6++6tiWnJxseHh4GLNnzzYMwzB27NhhSDLWr1/v2Oe3334zLBaLcfjwYcMwDOODDz4wgoKCjKysLMc+TzzxhBETE1PK76h8S0xMNCQZS5cuNQzj7GdvtVqNr776yrFPbGysIclYvXq1YRhnC66Li4tx9OhRxz5Tpkwx/P39HZ//448/bjRq1CjPaw0YMMDo1atXab+lCiEoKMj45JNPGA+TnD592qhbt66xYMECo3Pnzo5CxHiUvbFjxxrNmjUr8D7GA0BlwCFzlcDevXt19OhRde/e3bEtICBAbdu21erVqyVJq1evVmBgoFq3bu3Yp3v37nJxcdHatWsd+1x99dVyd3d37NOrVy/FxcXp1KlTZfRuyp+UlBRJUpUqVSRJGzdulM1myzMe9evXV40aNfKMR5MmTRQWFubYp1evXkpNTdVff/3l2Of85zi3z7nnQMFyc3M1Z84cpaenq3379oyHSUaOHKk+ffrk+8wYD3PEx8crIiJCV1xxhYYMGaIDBw5IYjwAVA5uZgdA6Tt69Kgk5fllde72ufuOHj2q0NDQPPe7ubmpSpUqefapXbt2vuc4d19QUFCp5C/P7Ha7xowZo44dO6px48aSzn5W7u7uCgwMzLPvv8ejoPE6d9/F9klNTdWZM2fk5eVVGm+p3Nq2bZvat2+vzMxM+fr66rvvvlPDhg21efNmxqOMzZkzR3/++afWr1+f7z6+P8pe27ZtNX36dMXExCghIUHjx4/XVVddpe3btzMeACoFChFQikaOHKnt27drxYoVZkep9GJiYrR582alpKTo66+/1tChQ7V06VKzY1U6Bw8e1OjRo7VgwQJ5enqaHQeSrrvuOsf/N23aVG3btlXNmjU1d+5cigqASoFD5iqBatWqSVK+VYGOHTvmuK9atWpKTEzMc39OTo5OnjyZZ5+CnuP818D/e+CBB/Tzzz9r8eLFql69umN7tWrVlJ2dreTk5Dz7/3s8LvVZX2gff39//hJTAHd3d0VHR6tVq1Z65ZVX1KxZM7399tuMRxnbuHGjEhMT1bJlS7m5ucnNzU1Lly7VO++8Izc3N4WFhTEeJgsMDFS9evW0e/duvj8AVAoUokqgdu3aqlatmhYuXOjYlpqaqrVr16p9+/aSpPbt2ys5OVkbN2507LNo0SLZ7Xa1bdvWsc+yZctks9kc+yxYsEAxMTEcLncewzD0wAMP6LvvvtOiRYvyHWbYqlUrWa3WPOMRFxenAwcO5BmPbdu25SmpCxYskL+/vxo2bOjY5/znOLfPuefAxdntdmVlZTEeZeyaa67Rtm3btHnzZsdX69atNWTIEMf/Mx7mSktL0549exQeHs73B4DKwexVHVAyTp8+bWzatMnYtGmTIcl44403jE2bNhn79+83DOPsstuBgYHGDz/8YGzdutXo379/gctut2jRwli7dq2xYsUKo27dunmW3U5OTjbCwsKM2267zdi+fbsxZ84cw9vbm2W3/+W+++4zAgICjCVLluRZxjYjI8Oxz7333mvUqFHDWLRokbFhwwajffv2Rvv27R33n1vGtmfPnsbmzZuNefPmGSEhIQUuY/vYY48ZsbGxxvvvv88ythfw5JNPGkuXLjX27t1rbN261XjyyScNi8Vi/P7774ZhMB5mO3+VOcNgPMraI488YixZssTYu3evsXLlSqN79+5GcHCwkZiYaBgG4wGg4qMQVRCLFy82JOX7Gjp0qGEYZ5fefu6554ywsDDDw8PDuOaaa4y4uLg8z3HixAlj0KBBhq+vr+Hv72/ceeedxunTp/Pss2XLFqNTp06Gh4eHERkZaUycOLGs3mK5UdA4SDKmTZvm2OfMmTPG/fffbwQFBRne3t7GjTfeaCQkJOR5nn379hnXXXed4eXlZQQHBxuPPPKIYbPZ8uyzePFio3nz5oa7u7txxRVX5HkN/L9hw4YZNWvWNNzd3Y2QkBDjmmuucZQhw2A8zPbvQsR4lK0BAwYY4eHhhru7uxEZGWkMGDDA2L17t+N+xgNARWcxDMMwZ24KAAAAAMzFOUQAAAAAKi0KEQAAAIBKi0IEAAAAoNKiEAEAAACotChEAAAAACotChEAAACASotCBAAAAKDSohABAAAAqLQoRABKzb59+2SxWLR582azozjs3LlT7dq1k6enp5o3b252HAAAYDIKEVCB3XHHHbJYLJo4cWKe7d9//70sFotJqcw1duxY+fj4KC4uTgsXLsx3f9++fXXttdcW+Njly5fLYrFo69atl3ydWrVq6a233rrcuAAAoJRRiIAKztPTU5MmTdKpU6fMjlJisrOzi/3YPXv2qFOnTqpZs6aqVq2a7/7hw4drwYIFOnToUL77pk2bptatW6tp06bFfn0AAOBcKERABde9e3dVq1ZNr7zyygX3GTduXL7Dx9566y3VqlXLcfuOO+7QDTfcoJdffllhYWEKDAzUhAkTlJOTo8cee0xVqlRR9erVNW3atHzPv3PnTnXo0EGenp5q3Lixli5dmuf+7du367rrrpOvr6/CwsJ02223KSkpyXF/ly5d9MADD2jMmDEKDg5Wr169CnwfdrtdEyZMUPXq1eXh4aHmzZtr3rx5jvstFos2btyoCRMmyGKxaNy4cfme4/rrr1dISIimT5+eZ3taWpq++uorDR8+XJL0zTffqFGjRvLw8FCtWrX0+uuv58m7f/9+PfTQQ7JYLHlm41asWKGrrrpKXl5eioqK0qhRo5Senu64/4MPPlDdunXl6empsLAw3XzzzQW+VwAAUDIoREAF5+rqqpdfflnvvvtugbMeRbFo0SIdOXJEy5Yt0xtvvKGxY8fq+uuvV1BQkNauXat7771X99xzT77Xeeyxx/TII49o06ZNat++vfr27asTJ05IkpKTk9WtWze1aNFCGzZs0Lx583Ts2DHdcssteZ5jxowZcnd318qVK/Xhhx8WmO/tt9/W66+/rtdee01bt25Vr1691K9fP8XHx0uSEhIS1KhRIz3yyCNKSEjQo48+mu853NzcdPvtt2v69OkyDMOx/auvvlJubq4GDRqkjRs36pZbbtHAgQO1bds2jRs3Ts8995yjRH377beqXr26JkyYoISEBCUkJEg6Ozt17bXX6j//+Y+2bt2qL7/8UitWrNADDzwgSdqwYYNGjRqlCRMmKC4uTvPmzdPVV19djJECAACFZgCosIYOHWr079/fMAzDaNeunTFs2DDDMAzju+++M87/9h87dqzRrFmzPI998803jZo1a+Z5rpo1axq5ubmObTExMcZVV13luJ2Tk2P4+PgYs2fPNgzDMPbu3WtIMiZOnOjYx2azGdWrVzcmTZpkGIZhvPDCC0bPnj3zvPbBgwcNSUZcXJxhGIbRuXNno0WLFpd8vxEREcZLL72UZ1ubNm2M+++/33G7WbNmxtixYy/6PLGxsYYkY/HixY5tV111lXHrrbcahmEYgwcPNnr06JHnMY899pjRsGFDx+2aNWsab775Zp59hg8fbtx99915ti1fvtxwcXExzpw5Y3zzzTeGv7+/kZqaeqm3CgAASggzREAlMWnSJM2YMUOxsbHFfo5GjRrJxeX/f2yEhYWpSZMmjtuurq6qWrWqEhMT8zyuffv2jv93c3NT69atHTm2bNmixYsXy9fX1/FVv359SWdnVM5p1arVRbOlpqbqyJEj6tixY57tHTt2LPJ7rl+/vjp06KDPPvtMkrR7924tX77ccbhcbGxsga8THx+v3NzcCz7vli1bNH369DzvtVevXrLb7dq7d6969OihmjVr6oorrtBtt92mL774QhkZGUXKDgAAioZCBFQSV199tXr16qWnnnoq330uLi55Dg+TJJvNlm8/q9Wa57bFYilwm91uL3SutLQ09e3bV5s3b87zFR8fn+dwMR8fn0I/Z0kYPny4vvnmG50+fVrTpk1TnTp11Llz58t6zrS0NN1zzz153ueWLVsUHx+vOnXqyM/PT3/++admz56t8PBwPf/882rWrJmSk5NL5k0BAIB8KERAJTJx4kT99NNPWr16dZ7tISEhOnr0aJ5SVJLXDlqzZo3j/3NycrRx40Y1aNBAktSyZUv99ddfqlWrlqKjo/N8FaUE+fv7KyIiQitXrsyzfeXKlWrYsGGRM99yyy1ycXHRrFmzNHPmTA0bNsyxOEKDBg0KfJ169erJ1dVVkuTu7p5vtqhly5basWNHvvcZHR0td3d3SWdn0Lp3767Jkydr69at2rdvnxYtWlTk/AAAoHAoREAl0qRJEw0ZMkTvvPNOnu1dunTR8ePHNXnyZO3Zs0fvv/++fvvttxJ73ffff1/fffeddu7cqZEjR+rUqVMaNmyYJGnkyJE6efKkBg0apPXr12vPnj2aP3++7rzzzoseflaQxx57TJMmTdKXX36puLg4Pfnkk9q8ebNGjx5d5My+vr4aMGCAnnrqKSUkJOiOO+5w3PfII49o4cKFeuGFF7Rr1y7NmDFD7733Xp5FGmrVqqVly5bp8OHDjhXznnjiCa1atUoPPPCAYxbshx9+cCyq8PPPP+udd97R5s2btX//fs2cOVN2u10xMTFFzg8AAAqHQgRUMhMmTMh3SFuDBg30wQcf6P3331ezZs20bt26AldgK66JEydq4sSJatasmVasWKEff/xRwcHBkuSY1cnNzVXPnj3VpEkTjRkzRoGBgXnOVyqMUaNG6eGHH9YjjzyiJk2aaN68efrxxx9Vt27dYuUePny4Tp06pV69eikiIsKxvWXLlpo7d67mzJmjxo0b6/nnn9eECRPylKYJEyZo3759qlOnjkJCQiRJTZs21dKlS7Vr1y5dddVVatGihZ5//nnHcwcGBurbb79Vt27d1KBBA3344YeaPXu2GjVqVKz8AADg0izGv08cAAAAAIBKghkiAAAAAJUWhQgAAABApUUhAgAAAFBpUYgAAAAAVFoUIgAAAACVFoUIAAAAQKVFIQIAAABQaVGIAAAAAFRaFCIAAAAAlRaFCAAAAEClRSECAAAAUGn9Hxrj3UORhnw5AAAAAElFTkSuQmCC",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"(100*pr_tie).plot(marker='s', label='Equal chance for all candidates')\n",
"plt.grid()\n",
"plt.ylabel('Chance of Tie (%)')\n",
"plt.xlabel('Number of Votes')\n",
"plt.legend(loc=(1.01, .01))"
]
},
{
"cell_type": "code",
"execution_count": 8,
"id": "44be4a2d",
"metadata": {},
"outputs": [
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "140d613b9ea6474c861dcfe0e5f8755e",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
" 0%| | 0/3 [00:00<?, ?it/s]"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
" 0%| | 0/6 [00:00<?, ?it/s]"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
" 0%| | 0/100000 [00:00<?, ?it/s]"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
" 0%| | 0/100000 [00:00<?, ?it/s]"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
" 0%| | 0/100000 [00:00<?, ?it/s]"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
" 0%| | 0/100000 [00:00<?, ?it/s]"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
" 0%| | 0/100000 [00:00<?, ?it/s]"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
" 0%| | 0/100000 [00:00<?, ?it/s]"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
" 0%| | 0/6 [00:00<?, ?it/s]"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
" 0%| | 0/100000 [00:00<?, ?it/s]"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
" 0%| | 0/100000 [00:00<?, ?it/s]"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
" 0%| | 0/100000 [00:00<?, ?it/s]"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
" 0%| | 0/100000 [00:00<?, ?it/s]"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
" 0%| | 0/100000 [00:00<?, ?it/s]"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
" 0%| | 0/100000 [00:00<?, ?it/s]"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
" 0%| | 0/6 [00:00<?, ?it/s]"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
" 0%| | 0/100000 [00:00<?, ?it/s]"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
" 0%| | 0/100000 [00:00<?, ?it/s]"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
" 0%| | 0/100000 [00:00<?, ?it/s]"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
" 0%| | 0/100000 [00:00<?, ?it/s]"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
" 0%| | 0/100000 [00:00<?, ?it/s]"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
" 0%| | 0/100000 [00:00<?, ?it/s]"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"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>Equal chance for 10 candidates</th>\n",
" <th>Two main candidates tied</th>\n",
" <th>One candidate has a 10 point lead</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>500</th>\n",
" <td>0.09922</td>\n",
" <td>0.01804</td>\n",
" <td>0.00284</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1000</th>\n",
" <td>0.07102</td>\n",
" <td>0.01252</td>\n",
" <td>0.00019</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2000</th>\n",
" <td>0.05107</td>\n",
" <td>0.00881</td>\n",
" <td>0.00000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3000</th>\n",
" <td>0.04163</td>\n",
" <td>0.00734</td>\n",
" <td>0.00000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4000</th>\n",
" <td>0.03837</td>\n",
" <td>0.00658</td>\n",
" <td>0.00000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5000</th>\n",
" <td>0.03403</td>\n",
" <td>0.00585</td>\n",
" <td>0.00000</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Equal chance for 10 candidates Two main candidates tied \\\n",
"500 0.09922 0.01804 \n",
"1000 0.07102 0.01252 \n",
"2000 0.05107 0.00881 \n",
"3000 0.04163 0.00734 \n",
"4000 0.03837 0.00658 \n",
"5000 0.03403 0.00585 \n",
"\n",
" One candidate has a 10 point lead \n",
"500 0.00284 \n",
"1000 0.00019 \n",
"2000 0.00000 \n",
"3000 0.00000 \n",
"4000 0.00000 \n",
"5000 0.00000 "
]
},
"execution_count": 8,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"n_replications = 100_000\n",
"vote_sizes = [500, 1_000, 2_000, 3_000, 4_000, 5_000]\n",
"probability_scenarios = {\n",
" 'Equal chance for 10 candidates':\n",
" [.1, .1, .1, .1, .1, .1, .1, .1, .1, .1],\n",
" 'Two main candidates tied':\n",
" [.49, .49, .02],\n",
" 'One candidate has a 10 point lead':\n",
" [.55, .45],\n",
"}\n",
"\n",
"results = {}\n",
"for scenario, probabilities in tqdm.notebook.tqdm(list(probability_scenarios.items()), position=0):\n",
" assert np.allclose(sum(probabilities), 1)\n",
"\n",
" pr_tie = {}\n",
" for n_votes in tqdm.notebook.tqdm(vote_sizes, position=1, leave=False):\n",
" n_ties = 0\n",
" for _ in tqdm.notebook.tqdm(range(n_replications), position=2, leave=False):\n",
" n_ties += simulate_election(n_votes, probabilities)\n",
" pr_tie[n_votes] = n_ties / n_replications\n",
"\n",
" pr_tie = pd.Series(pr_tie)\n",
" results[scenario] = pr_tie\n",
" \n",
"results = pd.DataFrame(results)\n",
"results"
]
},
{
"cell_type": "code",
"execution_count": 9,
"id": "c7806a5b",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.legend.Legend at 0x7faae95e7a10>"
]
},
"execution_count": 9,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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IYvKx6uOJfr5OAMAlh0M13M1RERERES1E0NWDTOllwckYhECb8bj4r2n+i6HiIiIiKjWYciqYRram+GN1nUBAEv2h8OAb4NGRERERFQjMWTVQBN6uEMuFSM46ilORCTouxwiIiIiolqFIasGqmNljHfb1wcAfHuAo1lERERERFWJIauG+rhbI5jKJbgak4wD1+P0XQ4RERERUa3BkFVD2ZopMKpTAwDA0oO3kKfiaBYRERERUVVgyKrBPujSEFYmMkTGp2Hn5Rh9l0NEREREVCswZNVgFkYyjO3aCACw4tAtZOfm6bkiIiIiIqKajyGrhhvu5wYHcwVikjKx9fx9fZdDRERERFTjMWTVcMZyCT7p4Q4AWB0YiYycXD1XRERERERUszFk1QJD2riino0JEtKysen0XX2XQ0RERERUozFk1QJyqRiTe6lHs9YH3UZyplLPFRERERER1VwMWbXEq74u8HA0Q0pWLn44flvf5RARERER1VgMWbWERCzC1N5NAAAbTt7F49RsPVdERERERFQzMWTVIr2aOcLX1QqZyjx8dzRS3+UQEREREdVIDFm1iEgkwnR/9WjW5uBoPEjM0HNFREREREQ1D0NWLdOxsR06NrZFTp4Kqw5H6LscIiIiIqIaR6rvAqjqTe3dBKciT2P7xQd4uakDnC3kuJ8GXH+YAqlU/U/C2lQOFytjPVdKRERERFT9MGTVQg4WRhCLAJUAjP390rO1Uiy9elbTRiEV48jUbgxaRERERETlxNMFa6HE9ByohJLbZOeqkJieUzUFERERERHVIAxZREREREREOsSQRUREREREpEMMWURERERERDrEkEVERERERKRDDFlUrNw8lb5LICIiIiKqdhiyqFhTtoXiZlyKvssgIiIiIqpWGLJqIWtTORTS0rv+TkI6+q85ie+ORnJUi4iIiIiojHgz4lrIxcoYR6Z209wHKzc3FydPnkSnTp0glar/SagEAWuOROLQjUf49kA4Dl6Pw7I3fdHYwVyfpRMRERERGTyGrFrKxcoYLlbGAAClUol7ZoBXHQvIZDJNmx/ebY1dITGY/fd1hD5IRt/VJzG1twdGdWoIiVikr9KJiIiIiAwaTxekYolEIgxqWReHpnRF9yb2yMlV4eu9N/Hm/84gKiFd3+URERERERkkhiwqlaOFETa81xZLXvOBmUKKi/cS0WfV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giDA3d0d1tbWlVEfERERERFRtVLukJXP2toabdu21WUtRERERERE1V65pnAnIiIiIiKikjFkERERERER6RBDFhERERERkQ4xZBEREREREekQQxYREREREZEOMWQRERERERHpEEMWERERERGRDjFkERERERER6RBDFhERERERkQ4xZBEREREREekQQxYREREREZEOMWQRERERERHpEEMWERERERGRDjFkERERERER6RBDFhERERERkQ4xZBEREREREekQQxYREREREZEOMWQRERERERHpEEMWERERERGRDjFkERERERER6RBDFhERERERkQ4xZBEREREREekQQxYREREREZEOMWQRERERERHpEEMWERERERGRDjFkERERERER6RBDFhERERERkQ4xZBEREREREekQQxYREREREZEOMWQRERERERHpEEMWERERERGRDjFkERERERER6RBDFhERERERkQ4ZdMhatGgR2rZtC3Nzczg4OGDgwIEIDw/Xd1lERERERETFMuiQdezYMYwbNw5nz57FoUOHoFQq0bt3b6Snp+u7NCIiIiIioiJJ9V1ASfbv36/1eNOmTXBwcMDFixfRpUuXIp+TnZ2N7OxszeOUlBQAgFKphFKprLxiq7H894Xvj2FgfxgW9odhYX8YlsrsD/YxEVVnIkEQBH0XUVaRkZFwd3fH1atX4e3tXWSbOXPmYO7cuYXWb968GSYmJpVdIhEREelARkYG3n77bSQnJ8PCwkLf5RARlUu1CVkqlQqvvvoqkpKScPLkyWLbFTWS5erqioSEBP6QLoZSqcShQ4fQq1cvyGQyfZdT67E/DAv7w7CwPwxLZfZHSkoK7OzsGLKIqFoy6NMFCxo3bhyuXbtWYsACAIVCAYVCUWi9TCZ78V8ASfeBjCfFbzexBaxcX+wYeqST94h0hv1hWNgfhoX9YVgqoz/Yv0RUnVWLkDV+/Hjs2bMHx48fR926dfVTRNJ9YG1rIDe7+DZSBTD+YrUOWkRERERE9GIMenZBQRAwfvx47Ny5E0eOHEGDBg30V0zGk5IDFqDeXtJIFxERERER1XgGPZI1btw4bN68GX///TfMzc0RFxcHALC0tISxsbGeqyMiIiIiIirMoEey1q1bh+TkZHTr1g3Ozs6aZevWrfoujYiIiIiIqEgGPZJVTSY+1Bb2D2DTADCy1HclRERE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",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"(100*results).plot(marker='s')\n",
"plt.grid()\n",
"plt.ylabel('Chance of Tie (%)')\n",
"plt.xlabel('Number of Votes')\n",
"plt.legend(loc=(1.01, .01))"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "6efa5905",
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python (llm_env)",
"language": "python",
"name": "llm_env"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.11.13"
}
},
"nbformat": 4,
"nbformat_minor": 5
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment