{
  "cells": [
    {
      "cell_type": "markdown",
      "metadata": {},
      "source": [
        "#"
      ],
      "id": "3d3b5a7f-2b4b-4787-a055-94f751220717"
    },
    {
      "cell_type": "code",
      "execution_count": 2,
      "metadata": {},
      "outputs": [],
      "source": [
        "import numpy as np\n",
        "import matplotlib.pyplot as plt"
      ],
      "id": "72f9cd74-7efb-44b0-8b89-dc3c52437d39"
    },
    {
      "cell_type": "code",
      "execution_count": 3,
      "metadata": {},
      "outputs": [
        {
          "output_type": "display_data",
          "metadata": {},
          "data": {
            "text/plain": [
              "array([0., 0., 0.])"
            ]
          }
        }
      ],
      "source": [
        "x = np.zeros(3)\n",
        "x"
      ],
      "id": "d3efc718-d1c8-4f1f-8853-986cbc78f1bf"
    },
    {
      "cell_type": "code",
      "execution_count": 4,
      "metadata": {},
      "outputs": [
        {
          "output_type": "display_data",
          "metadata": {},
          "data": {
            "text/plain": [
              "array([5., 5., 5.])"
            ]
          }
        }
      ],
      "source": [
        "x = (x + 10) / 2\n",
        "x"
      ],
      "id": "8e4f0a17-0381-42fe-bce1-a2f24786dd75"
    },
    {
      "cell_type": "code",
      "execution_count": 5,
      "metadata": {},
      "outputs": [
        {
          "output_type": "display_data",
          "metadata": {},
          "data": {
            "text/plain": [
              "array([[12., 12., 12., 12., 12.],\n",
              "       [12., 12., 12., 12., 12.],\n",
              "       [12., 12., 12., 12., 12.]])"
            ]
          }
        }
      ],
      "source": [
        "a = np.ones((3, 5)) + 11\n",
        "a"
      ],
      "id": "e69a22bb-8fe9-492b-ac12-d72f842f2a2a"
    },
    {
      "cell_type": "code",
      "execution_count": 6,
      "metadata": {},
      "outputs": [
        {
          "output_type": "display_data",
          "metadata": {},
          "data": {
            "text/plain": [
              "(2, 3, 4)"
            ]
          }
        }
      ],
      "source": [
        "rng = np.random.default_rng(37)\n",
        "z = rng.normal(size = (2, 3, 4))\n",
        "z.shape"
      ],
      "id": "df76956e-1145-45f9-9624-99322aac0e3e"
    },
    {
      "cell_type": "code",
      "execution_count": 7,
      "metadata": {},
      "outputs": [
        {
          "output_type": "display_data",
          "metadata": {},
          "data": {
            "text/plain": [
              "(4,)"
            ]
          }
        }
      ],
      "source": [
        "t = (0, 1)\n",
        "np.shape(np.mean(z, axis = t))"
      ],
      "id": "9463c91d-d2cc-425b-900d-3525325f4c3a"
    },
    {
      "cell_type": "code",
      "execution_count": 8,
      "metadata": {},
      "outputs": [
        {
          "output_type": "display_data",
          "metadata": {},
          "data": {
            "text/plain": [
              "array([ 0.52065158,  0.37233466, -0.99693327, -0.09792453])"
            ]
          }
        }
      ],
      "source": [
        "np.mean(z, axis = t)"
      ],
      "id": "41e13ce3-8961-4ca3-b4f7-114a19425813"
    },
    {
      "cell_type": "code",
      "execution_count": 9,
      "metadata": {},
      "outputs": [
        {
          "output_type": "display_data",
          "metadata": {},
          "data": {
            "text/plain": [
              "array([[ 2.46895966,  1.56062171, -5.36693704,  0.09368193],\n",
              "       [ 0.6549498 ,  0.67338627, -0.61466258, -0.68122913]])"
            ]
          }
        }
      ],
      "source": [
        "z.sum(axis = 1)"
      ],
      "id": "8cd92606-d7e6-455f-a125-b9f20979afe9"
    },
    {
      "cell_type": "code",
      "execution_count": 22,
      "metadata": {},
      "outputs": [],
      "source": [
        "N = 10100\n",
        "p = 0.7\n",
        "x = rng.binomial(1, p, size = N)"
      ],
      "id": "885930e7-7b5d-4126-87e8-e448d0cfb01d"
    },
    {
      "cell_type": "code",
      "execution_count": 23,
      "metadata": {},
      "outputs": [
        {
          "output_type": "display_data",
          "metadata": {},
          "data": {
            "text/plain": [
              "0.7118811881188118"
            ]
          }
        }
      ],
      "source": [
        "# np.mean(rng.binomial(1, 0.5, size = 10000000001))\n",
        "np.mean(rng.binomial(1, p, size = N))"
      ],
      "id": "b2838440-f065-45a1-b9c3-97207b277c43"
    },
    {
      "cell_type": "code",
      "execution_count": 24,
      "metadata": {},
      "outputs": [],
      "source": [
        "ndx = np.arange(N) + 1\n",
        "cx = np.cumsum(x)\n",
        "cm = cx / ndx"
      ],
      "id": "f9f68920-16e7-4e80-8342-fffc5c639cfb"
    },
    {
      "cell_type": "code",
      "execution_count": 25,
      "metadata": {},
      "outputs": [
        {
          "output_type": "display_data",
          "metadata": {},
          "data": {
            "image/png": "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\neuSRRzzL6OOGcfjwYX37299Wy5YtFRYWpt69e2vjxo2e9cYYzZgxQ23atFFYWJhSUlK0d+9er33k\n5eVp5MiRioiIUFRUlL73ve/p5MmTXjWffvqpbrjhBoWGhio+Pl7PPffcJXl9trlcLk2fPl2JiYkK\nCwtTp06d9POf/9zr3iT0sW8++OAD3XHHHWrbtq0cDofeeustr/WXsj9ff/11devWTaGhoerdu7dW\nrlzZMC/S+KklS5aYkJAQs2jRIrN9+3YzduxYExUVZXJycmw37bKTmppqXn31VZORkWG2bt1qhg8f\nbtq3b29OnjzpqRk3bpyJj483aWlpZuPGjeb66683gwcP9qyvqqoyvXr1MikpKWbLli1m5cqVJjo6\n2kydOtVTs3//fhMeHm4mT55sduzYYV544QUTGBhoVq1adUlfr23p6ekmISHB9OnTx0yaNMmznD7+\n8vLy8kyHDh3Md77zHbNhwwazf/9+8+6775p9+/Z5aubMmWMiIyPNW2+9ZT755BNz5513msTERFNa\nWuqp+epXv2r69u1rPvroI/Pf//7XdO7c2TzwwAOe9QUFBSYmJsaMHDnSZGRkmL/97W8mLCzM/Pa3\nv72kr9eGZ5991rRs2dK888475sCBA+b11183TZs2Nc8//7ynhj72zcqVK82TTz5pli9fbiSZN998\n02v9perP//3vfyYwMNA899xzZseOHWbatGkmODjYbNu27Uu/Rr8NI4MGDTITJkzw/OxyuUzbtm3N\n7NmzLbbqypCbm2skmffff98YY0x+fr4JDg42r7/+uqdm586dRpJZv369MebUH1NAQIDJzs721Lz8\n8ssmIiLClJeXG2OMefzxx03Pnj29nuv+++83qampjf2SLhtFRUWmS5cuZvXq1ebGG2/0hBH6uGH8\n7Gc/M0OHDq11vdvtNrGxseaXv/ylZ1l+fr5xOp3mb3/7mzHGmB07dhhJ5uOPP/bU/Otf/zIOh8Mc\nPnzYGGPMSy+9ZJo3b+7p99PPfc011zT0S7rsjBgxwnz3u9/1Wvb1r3/djBw50hhDH39Z54aRS9mf\n3/zmN82IESO82pOUlGR+8IMffOnX5ZeHaSoqKrRp0yalpKR4lgUEBCglJUXr16+32LIrQ0FBgSSp\nRYsWkqRNmzapsrLSqz+7deum9u3be/pz/fr16t27t2JiYjw1qampKiws1Pbt2z01Z+/jdI0//T+Z\nMGGCRowYcV4/0McN4+2339bAgQP1jW98Q61bt1b//v31+9//3rP+wIEDys7O9uqjyMhIJSUlefVz\nVFSUBg4c6KlJSUlRQECANmzY4Kn5yle+opCQEE9Namqqdu/erRMnTjT2y7Rq8ODBSktL0549eyRJ\nn3zyidatW6dhw4ZJoo8b2qXsz8Z8//DLMHL8+HG5XC6vN21JiomJUXZ2tqVWXRncbrceeeQRDRky\nRL169ZIkZWdnKyQkRFFRUV61Z/dndnZ2jf19el1dNYWFhSotLW2Ml3NZWbJkiTZv3qzZs2eft44+\nbhj79+/Xyy+/rC5duujdd9/V+PHj9eMf/1h//OMfJZ3pp7reG7Kzs9W6dWuv9UFBQWrRooVP/y+u\nVlOmTNG3vvUtdevWTcHBwerfv78eeeQRjRw5UhJ93NAuZX/WVtMQ/X1F3LUXl48JEyYoIyND69at\ns92Uq0pWVpYmTZqk1atXKzQ01HZzrlput1sDBw7UrFmzJEn9+/dXRkaGFi5cqNGjR1tu3dVh2bJl\n+stf/qK//vWv6tmzp7Zu3apHHnlEbdu2pY9RK78cGYmOjlZgYOB5VyLk5OQoNjbWUqsufxMnTtQ7\n77yjNWvWqF27dp7lsbGxqqioUH5+vlf92f0ZGxtbY3+fXldXTUREhMLCwhr65VxWNm3apNzcXF17\n7bUKCgpSUFCQ3n//ff3mN79RUFCQYmJi6OMG0KZNG/Xo0cNrWffu3ZWZmSnpTD/V9d4QGxur3Nxc\nr/VVVVXKy8vz6f/F1eqxxx7zjI707t1bDz30kB599FHPiB993LAuZX/WVtMQ/e2XYSQkJEQDBgxQ\nWlqaZ5nb7VZaWpqSk5MttuzyZIzRxIkT9eabb+q9995TYmKi1/oBAwYoODjYqz93796tzMxMT38m\nJydr27ZtXn8Qq1evVkREhOfDITk52Wsfp2v84f/Jrbfeqm3btmnr1q2ex8CBAzVy5EjPv+njL2/I\nkCHnXZa+Z88edejQQZKUmJio2NhYrz4qLCzUhg0bvPo5Pz9fmzZt8tS89957crvdSkpK8tR88MEH\nqqys9NSsXr1a11xzjZo3b95or+9yUFJSooAA74+WwMBAud1uSfRxQ7uU/dmo7x9f+hTYK9SSJUuM\n0+k0ixcvNjt27DDf//73TVRUlNeVCDhl/PjxJjIy0qxdu9YcPXrU8ygpKfHUjBs3zrRv39689957\nZuPGjSY5OdkkJyd71p++7PT22283W7duNatWrTKtWrWq8bLTxx57zOzcudMsWLDAry47PdfZV9MY\nQx83hPT0dBMUFGSeffZZs3fvXvOXv/zFhIeHmz//+c+emjlz5pioqCjzj3/8w3z66afmrrvuqvEy\nyf79+5sNGzaYdevWmS5dunhdJpmfn29iYmLMQw89ZDIyMsySJUtMeHj4VXnZ6blGjx5t4uLiPJf2\nLl++3ERHR5vHH3/cU0Mf+6aoqMhs2bLFbNmyxUgy8+bNM1u2bDGHDh0yxly6/vzf//5ngoKCzK9+\n9Suzc+dOM3PmTC7tbQgvvPCCad++vQkJCTGDBg0yH330ke0mXZYk1fh49dVXPTWlpaXmhz/8oWne\nvLkJDw8399xzjzl69KjXfg4ePGiGDRtmwsLCTHR0tPnJT35iKisrvWrWrFlj+vXrZ0JCQkzHjh29\nnsPfnBtG6OOG8c9//tP06tXLOJ1O061bN/O73/3Oa73b7TbTp083MTExxul0mltvvdXs3r3bq+aL\nL74wDzzwgGnatKmJiIgwY8aMMUVFRV41n3zyiRk6dKhxOp0mLi7OzJkzp9Ff2+WgsLDQTJo0ybRv\n396Ehoaajh07mieffNLrklH62Ddr1qyp8T149OjRxphL25/Lli0zXbt2NSEhIaZnz55mxYoVDfIa\nHcacNS0eAADAJeaX54wAAIDLB2EEAABYRRgBAABWEUYAAIBVhBEAAGAVYQQAAFhFGAEAAFYRRgAA\ngFWEEQAAYBVhBAAAWEUYAQAAVhFGAACAVf8PajqFjkNuOukAAAAASUVORK5CYII=\n"
          }
        }
      ],
      "source": [
        "plt.plot(ndx, cm)\n",
        "plt.axhline(p, color = \"black\", linestyle = \"--\")"
      ],
      "id": "0afcde48-59f7-4a4c-a12c-dde633761c58"
    }
  ],
  "nbformat": 4,
  "nbformat_minor": 5,
  "metadata": {
    "kernelspec": {
      "name": "python3",
      "display_name": "Python 3 (ipykernel)",
      "language": "python"
    },
    "language_info": {
      "name": "python",
      "codemirror_mode": {
        "name": "ipython",
        "version": "3"
      },
      "file_extension": ".py",
      "mimetype": "text/x-python",
      "nbconvert_exporter": "python",
      "pygments_lexer": "ipython3",
      "version": "3.12.12"
    }
  }
}