Skip to content

Instantly share code, notes, and snippets.

@jarutis
Created December 14, 2018 07:37
Show Gist options
  • Save jarutis/1fcf06709f8a41ad57f890c3d6c5e39a to your computer and use it in GitHub Desktop.
Save jarutis/1fcf06709f8a41ad57f890c3d6c5e39a to your computer and use it in GitHub Desktop.
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"metadata": {},
"cell_type": "markdown",
"source": "# Tests for epidemic alternatives"
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "import numpy as np\nfrom scipy import signal\nfrom matplotlib import pyplot as plt",
"execution_count": 34,
"outputs": []
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "noise = np.random.normal(0, 1, (40, 40))",
"execution_count": 87,
"outputs": []
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "plt.imshow(noise, interpolation='nearest')\nplt.gray()",
"execution_count": 88,
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": "<Figure size 432x288 with 1 Axes>",
"image/png": "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\n"
},
"metadata": {}
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "noise_central = noise - noise.mean()",
"execution_count": 89,
"outputs": []
},
{
"metadata": {},
"cell_type": "markdown",
"source": "$ R=\\frac{1}{n}\\max_{D}{\\sum_{i,j\\in{D}}{(X_{i,j} - \\overline{X}})}$,\nwhere $D$ - all squares over X. "
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "def statistic_per_size(data, size):\n _filter = np.ones((size,size))\n sums = convolve2d(noise_central, _filter, mode='valid')\n return np.abs(sums).max()/data.shape[0]\n\ndef statistic(data):\n return max([statistic_per_size(noise, x) for x in np.arange(noise.shape[0])])",
"execution_count": 91,
"outputs": []
},
{
"metadata": {},
"cell_type": "markdown",
"source": "## 5000 samples of statistic on 40x40 standard normal variables"
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "res = []\nfor i in range(5000):\n noise = np.random.normal(0, 1, (40, 40))\n noise_central = noise - noise.mean()\n res += [statistic(noise_central)]",
"execution_count": 102,
"outputs": []
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "plt.hist(res, bins=50)\nplt.show()",
"execution_count": 103,
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": "<Figure size 432x288 with 1 Axes>",
"image/png": "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\n"
},
"metadata": {}
}
]
},
{
"metadata": {},
"cell_type": "markdown",
"source": "## 500 samples of statistic on 100x100 standard normal variables"
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "res = []\nfor i in range(500):\n noise = np.random.normal(0, 1, (100, 100))\n noise_central = noise - noise.mean()\n res += [statistic(noise_central)]",
"execution_count": 106,
"outputs": []
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "plt.hist(res, bins=50)\nplt.show()",
"execution_count": 107,
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": "<Figure size 432x288 with 1 Axes>",
"image/png": "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\n"
},
"metadata": {}
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "patch",
"execution_count": 41,
"outputs": [
{
"data": {
"text/plain": "array([[ 5, 35],\n [ 0, 30]])"
},
"execution_count": 41,
"metadata": {},
"output_type": "execute_result"
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "",
"execution_count": null,
"outputs": []
}
],
"metadata": {
"kernelspec": {
"name": "python3",
"display_name": "Python 3",
"language": "python"
},
"language_info": {
"name": "python",
"version": "3.6.6",
"mimetype": "text/x-python",
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"pygments_lexer": "ipython3",
"nbconvert_exporter": "python",
"file_extension": ".py"
},
"toc": {
"base_numbering": 1,
"nav_menu": {},
"number_sections": false,
"sideBar": false,
"skip_h1_title": false,
"title_cell": "Table of Contents",
"title_sidebar": "Contents",
"toc_cell": false,
"toc_position": {},
"toc_section_display": false,
"toc_window_display": false
},
"widgets": {
"application/vnd.jupyter.widget-state+json": {
"version_major": 2,
"version_minor": 0,
"state": {}
}
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment