{ "cells": [ { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "85\n", "63\n", "51\n", "26\n", "30\n", "4\n", "7\n", "1\n", "17\n", "81\n" ] }, { "data": { "text/plain": [ "array([2, 2])" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import numpy as np\n", "\n", "np.random.randint(0.5, 3.5)\n", "p_remove = 0.9\n", "np.random.choice([True, False], p=[p_remove, 1-p_remove])\n", "rng = np.random.default_rng(0)\n", "for _ in range(10):\n", " print(rng.integers(0,100))\n", "np.random.choice([1, 2, 3], 2, p=[0.4, 0.4, 0.2])\n" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "2" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" } ], "source": [ "share = 0.8\n", "list_succ_firms = [1, 1]\n", "round(share * len(list_succ_firms)) if round(share * len(list_succ_firms)) > 0 else 1" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[0.17307692307692307, 0.19230769230769232, 0.20192307692307693, 0.21153846153846154, 0.22115384615384615]\n", "[0.14899116146026878, 0.1819782155490595, 0.20111703154812216, 0.22226869439668717, 0.24564489704586234]\n", "[0.10801741721030356, 0.16114305076975205, 0.19682056666851946, 0.2403971829915773, 0.29362178235984765]\n", "[0.07643198434626533, 0.13926815562848321, 0.18799234648997357, 0.25376312466637047, 0.34254438886890737]\n" ] } ], "source": [ "import math\n", "size = [18,20,21,22,23]\n", "p = [s / sum(size) for s in size]\n", "print(p)\n", "for beta in [0.1, 0.2, 0.3]:\n", " damp_size = [math.exp(beta*s) for s in size]\n", " print([s / sum(damp_size) for s in damp_size])\n" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[0.16666666666666666, 0.5, 0.6666666666666666, 0.8333333333333334, 1.0]\n", "[0.8359588020779368, 0.9330329915368074, 0.960264500792218, 0.9819330445619127, 1.0]\n", "[0.408248290463863, 0.7071067811865476, 0.816496580927726, 0.9128709291752769, 1.0]\n", "[0.23849484685087588, 0.5743491774985174, 0.7229811807984657, 0.8642810744472068, 1.0]\n" ] } ], "source": [ "import math\n", "size = [18,20,21,22,23]\n", "p = [(s - min(size) + 1)/(max(size)-min(size)+1) for s in size]\n", "print(p)\n", "for beta in [0.1, 0.5, 0.8]:\n", " p = [((s - min(size) + 1)/(max(size)-min(size)+1))**beta for s in size]\n", " print(p)" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "32\n" ] } ], "source": [ "import multiprocess as mp\n", "\n", "print(mp.cpu_count())" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "71\n" ] } ], "source": [ "from orm import engine\n", "import pandas as pd\n", "import pickle\n", "str_sql = \"select e_id, count, max_max_ts, dct_lst_init_remove_firm_prod from iiabmdb.without_exp_experiment as a \" \\\n", "\"inner join \" \\\n", "\"(select e_id, count(id) as count, max(max_ts) as max_max_ts from iiabmdb.without_exp_sample as a \" \\\n", "\"inner join (select s_id, max(ts) as max_ts from iiabmdb.without_exp_result where ts > 0 group by s_id) as b \" \\\n", "\"on a.id = b.s_id \" \\\n", "\"group by e_id) as b \" \\\n", "\"on a.id = b.e_id \" \\\n", "\"order by count desc;\"\n", "result = pd.read_sql(sql=str_sql, con=engine)\n", "result['dct_lst_init_remove_firm_prod'] = result['dct_lst_init_remove_firm_prod'].apply(lambda x: pickle.loads(x))\n", "# print(result)\n", "list_dct = result.loc[result['count']>=9, 'dct_lst_init_remove_firm_prod'].to_list()\n", "print(len(list_dct))" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "ename": "ValueError", "evalue": "probabilities do not sum to 1", "output_type": "error", "traceback": [ "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[1;31mValueError\u001b[0m Traceback (most recent call last)", "Cell \u001b[1;32mIn[2], line 3\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[39mimport\u001b[39;00m \u001b[39mnumpy\u001b[39;00m \u001b[39mas\u001b[39;00m \u001b[39mnp\u001b[39;00m\n\u001b[1;32m----> 3\u001b[0m np\u001b[39m.\u001b[39;49mrandom\u001b[39m.\u001b[39;49mchoice([\u001b[39m1\u001b[39;49m], p\u001b[39m=\u001b[39;49m[\u001b[39m0.9\u001b[39;49m])\n", "File \u001b[1;32mmtrand.pyx:933\u001b[0m, in \u001b[0;36mnumpy.random.mtrand.RandomState.choice\u001b[1;34m()\u001b[0m\n", "\u001b[1;31mValueError\u001b[0m: probabilities do not sum to 1" ] } ], "source": [ "import numpy as np\n", "\n", "np.random.choice([1], p=[0.9])" ] }, { "cell_type": "code", "execution_count": 46, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.004495606232695251" ] }, "execution_count": 46, "metadata": {}, "output_type": "execute_result" } ], "source": [ "prob_remove = 0\n", "prob_remove = np.random.uniform(\n", " prob_remove - 0.1, prob_remove + 0.1)\n", "prob_remove = 1 if prob_remove > 1 else prob_remove\n", "prob_remove = 0 if prob_remove < 0 else prob_remove\n", "prob_remove" ] }, { "cell_type": "code", "execution_count": 66, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[8]\n" ] } ], "source": [ "nprandom = np.random.default_rng(0)\n", "lst_choose_firm = nprandom.choice(range(10),\n", " 1,\n", " replace=False\n", " )\n", "print(lst_choose_firm)" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "ename": "ValueError", "evalue": "Cannot take a larger sample than population when replace is False", "output_type": "error", "traceback": [ "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[1;31mValueError\u001b[0m Traceback (most recent call last)", "Cell \u001b[1;32mIn[9], line 2\u001b[0m\n\u001b[0;32m 1\u001b[0m nprandom \u001b[39m=\u001b[39m np\u001b[39m.\u001b[39mrandom\u001b[39m.\u001b[39mdefault_rng(\u001b[39m0\u001b[39m)\n\u001b[1;32m----> 2\u001b[0m lst_choose_firm \u001b[39m=\u001b[39m nprandom\u001b[39m.\u001b[39;49mchoice([\u001b[39m1\u001b[39;49m,\u001b[39m2\u001b[39;49m],\n\u001b[0;32m 3\u001b[0m \u001b[39m3\u001b[39;49m,\n\u001b[0;32m 4\u001b[0m replace\u001b[39m=\u001b[39;49m\u001b[39mFalse\u001b[39;49;00m\n\u001b[0;32m 5\u001b[0m )\n\u001b[0;32m 6\u001b[0m lst_choose_firm\n", "File \u001b[1;32m_generator.pyx:753\u001b[0m, in \u001b[0;36mnumpy.random._generator.Generator.choice\u001b[1;34m()\u001b[0m\n", "\u001b[1;31mValueError\u001b[0m: Cannot take a larger sample than population when replace is False" ] } ], "source": [ "nprandom = np.random.default_rng(0)\n", "lst_choose_firm = nprandom.choice([1,2],\n", " 3,\n", " replace=False\n", " )\n", "lst_choose_firm" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0 0\n", "0 1\n", "0 2\n", "1 0\n", "1 1\n", "break\n" ] } ], "source": [ "\n", "for j in range(3):\n", " for k in range(3):\n", " print(j, k)\n", " if j == k == 1:\n", " print('break')\n", " break\n", " else:\n", " continue\n", " break\n", "\n" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "2.25\n", "2.25\n" ] } ], "source": [ "print(27 / (4 * 3))\n", "print(27 / 4 / 3)" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "for i in range(1,1):\n", " print(i)" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]\n" ] }, { "data": { "text/plain": [ "[6, 7, 8, 9, 10]" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "lst = list(range(1,11))\n", "print(lst)\n", "\n", "lst[-5:]" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
e_idn_disrupt_sampletotal_n_disrupt_firm_prod_experimentdct_lst_init_disrupt_firm_prod
038350300.0b'\\x80\\x05\\x95\\x17\\x00\\x00\\x00\\x00\\x00\\x00\\x00...
122750250.0b'\\x80\\x05\\x95\\x16\\x00\\x00\\x00\\x00\\x00\\x00\\x00...
28350200.0b'\\x80\\x05\\x95\\x16\\x00\\x00\\x00\\x00\\x00\\x00\\x00...
313550200.0b'\\x80\\x05\\x95\\x16\\x00\\x00\\x00\\x00\\x00\\x00\\x00...
417950200.0b'\\x80\\x05\\x95\\x16\\x00\\x00\\x00\\x00\\x00\\x00\\x00...
...............
90762456.0b'\\x80\\x05\\x95\\x14\\x00\\x00\\x00\\x00\\x00\\x00\\x00...
91892454.0b'\\x80\\x05\\x95\\x16\\x00\\x00\\x00\\x00\\x00\\x00\\x00...
92902454.0b'\\x80\\x05\\x95\\x16\\x00\\x00\\x00\\x00\\x00\\x00\\x00...
933352454.0b'\\x80\\x05\\x95\\x17\\x00\\x00\\x00\\x00\\x00\\x00\\x00...
944492453.0b'\\x80\\x05\\x95\\x15\\x00\\x00\\x00\\x00\\x00\\x00\\x00...
\n", "

95 rows × 4 columns

\n", "
" ], "text/plain": [ " e_id n_disrupt_sample total_n_disrupt_firm_prod_experiment \\\n", "0 383 50 300.0 \n", "1 227 50 250.0 \n", "2 83 50 200.0 \n", "3 135 50 200.0 \n", "4 179 50 200.0 \n", ".. ... ... ... \n", "90 76 24 56.0 \n", "91 89 24 54.0 \n", "92 90 24 54.0 \n", "93 335 24 54.0 \n", "94 449 24 53.0 \n", "\n", " dct_lst_init_disrupt_firm_prod \n", "0 b'\\x80\\x05\\x95\\x17\\x00\\x00\\x00\\x00\\x00\\x00\\x00... \n", "1 b'\\x80\\x05\\x95\\x16\\x00\\x00\\x00\\x00\\x00\\x00\\x00... \n", "2 b'\\x80\\x05\\x95\\x16\\x00\\x00\\x00\\x00\\x00\\x00\\x00... \n", "3 b'\\x80\\x05\\x95\\x16\\x00\\x00\\x00\\x00\\x00\\x00\\x00... \n", "4 b'\\x80\\x05\\x95\\x16\\x00\\x00\\x00\\x00\\x00\\x00\\x00... \n", ".. ... \n", "90 b'\\x80\\x05\\x95\\x14\\x00\\x00\\x00\\x00\\x00\\x00\\x00... \n", "91 b'\\x80\\x05\\x95\\x16\\x00\\x00\\x00\\x00\\x00\\x00\\x00... \n", "92 b'\\x80\\x05\\x95\\x16\\x00\\x00\\x00\\x00\\x00\\x00\\x00... \n", "93 b'\\x80\\x05\\x95\\x17\\x00\\x00\\x00\\x00\\x00\\x00\\x00... \n", "94 b'\\x80\\x05\\x95\\x15\\x00\\x00\\x00\\x00\\x00\\x00\\x00... \n", "\n", "[95 rows x 4 columns]" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "with open('SQL_export_high_risk_setting.sql', 'r') as f:\n", " contents = f.read()\n", "\n", "import pandas as pd\n", "from orm import engine\n", "result = pd.read_sql(sql=contents, con=engine)\n", "result" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "False" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import networkx as nx\n", "\n", "G = nx.MultiDiGraph()\n", "G.add_edge(1, 2)\n", "nx.draw(G)\n", "G.has_edge(1, 2, 1)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "base", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.8.8" }, "orig_nbformat": 4, "vscode": { "interpreter": { "hash": "bcdafc093860683ffb58d6956591562b7f8ed5d58147d17d71a5d4d6605a08df" } } }, "nbformat": 4, "nbformat_minor": 2 }