Created
August 4, 2021 18:15
-
-
Save beckermr/7b87afcfe2af5d6ea2500232753299ff to your computer and use it in GitHub Desktop.
boolean_masks.ipynb
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"cells": [ | |
{ | |
"metadata": { | |
"trusted": true | |
}, | |
"cell_type": "code", | |
"source": "v = True\nw = False", | |
"execution_count": 1, | |
"outputs": [] | |
}, | |
{ | |
"metadata": { | |
"trusted": true | |
}, | |
"cell_type": "code", | |
"source": "v and v", | |
"execution_count": 2, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"execution_count": 2, | |
"data": { | |
"text/plain": "True" | |
}, | |
"metadata": {} | |
} | |
] | |
}, | |
{ | |
"metadata": { | |
"trusted": true | |
}, | |
"cell_type": "code", | |
"source": "v and w", | |
"execution_count": 3, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"execution_count": 3, | |
"data": { | |
"text/plain": "False" | |
}, | |
"metadata": {} | |
} | |
] | |
}, | |
{ | |
"metadata": { | |
"trusted": true | |
}, | |
"cell_type": "code", | |
"source": "v or v", | |
"execution_count": 4, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"execution_count": 4, | |
"data": { | |
"text/plain": "True" | |
}, | |
"metadata": {} | |
} | |
] | |
}, | |
{ | |
"metadata": { | |
"trusted": true | |
}, | |
"cell_type": "code", | |
"source": "v or w", | |
"execution_count": 5, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"execution_count": 5, | |
"data": { | |
"text/plain": "True" | |
}, | |
"metadata": {} | |
} | |
] | |
}, | |
{ | |
"metadata": { | |
"trusted": true | |
}, | |
"cell_type": "code", | |
"source": "import numpy as np", | |
"execution_count": 6, | |
"outputs": [] | |
}, | |
{ | |
"metadata": { | |
"trusted": true | |
}, | |
"cell_type": "code", | |
"source": "x = np.arange(10)", | |
"execution_count": 7, | |
"outputs": [] | |
}, | |
{ | |
"metadata": { | |
"trusted": true | |
}, | |
"cell_type": "code", | |
"source": "x", | |
"execution_count": 8, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"execution_count": 8, | |
"data": { | |
"text/plain": "array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])" | |
}, | |
"metadata": {} | |
} | |
] | |
}, | |
{ | |
"metadata": { | |
"trusted": true | |
}, | |
"cell_type": "code", | |
"source": "msk = (x < 5)", | |
"execution_count": 9, | |
"outputs": [] | |
}, | |
{ | |
"metadata": { | |
"trusted": true | |
}, | |
"cell_type": "code", | |
"source": "msk", | |
"execution_count": 10, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"execution_count": 10, | |
"data": { | |
"text/plain": "array([ True, True, True, True, True, False, False, False, False,\n False])" | |
}, | |
"metadata": {} | |
} | |
] | |
}, | |
{ | |
"metadata": { | |
"trusted": true | |
}, | |
"cell_type": "code", | |
"source": "msk.dtype", | |
"execution_count": 11, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"execution_count": 11, | |
"data": { | |
"text/plain": "dtype('bool')" | |
}, | |
"metadata": {} | |
} | |
] | |
}, | |
{ | |
"metadata": { | |
"trusted": true | |
}, | |
"cell_type": "code", | |
"source": "x[msk]", | |
"execution_count": 12, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"execution_count": 12, | |
"data": { | |
"text/plain": "array([0, 1, 2, 3, 4])" | |
}, | |
"metadata": {} | |
} | |
] | |
}, | |
{ | |
"metadata": { | |
"trusted": true | |
}, | |
"cell_type": "code", | |
"source": "msk = (x > 1) | (x < 5)", | |
"execution_count": 15, | |
"outputs": [] | |
}, | |
{ | |
"metadata": { | |
"trusted": true | |
}, | |
"cell_type": "code", | |
"source": "msk", | |
"execution_count": 16, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"execution_count": 16, | |
"data": { | |
"text/plain": "array([ True, True, True, True, True, True, True, True, True,\n True])" | |
}, | |
"metadata": {} | |
} | |
] | |
}, | |
{ | |
"metadata": { | |
"trusted": true | |
}, | |
"cell_type": "code", | |
"source": "x = np.arange(20).reshape(4, 5)", | |
"execution_count": 18, | |
"outputs": [] | |
}, | |
{ | |
"metadata": { | |
"trusted": true | |
}, | |
"cell_type": "code", | |
"source": "msk = (x > 5)", | |
"execution_count": 20, | |
"outputs": [] | |
}, | |
{ | |
"metadata": { | |
"trusted": true | |
}, | |
"cell_type": "code", | |
"source": "msk", | |
"execution_count": 21, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"execution_count": 21, | |
"data": { | |
"text/plain": "array([[False, False, False, False, False],\n [False, True, True, True, True],\n [ True, True, True, True, True],\n [ True, True, True, True, True]])" | |
}, | |
"metadata": {} | |
} | |
] | |
}, | |
{ | |
"metadata": { | |
"trusted": true | |
}, | |
"cell_type": "code", | |
"source": "x[msk]", | |
"execution_count": 22, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"execution_count": 22, | |
"data": { | |
"text/plain": "array([ 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19])" | |
}, | |
"metadata": {} | |
} | |
] | |
}, | |
{ | |
"metadata": { | |
"trusted": true | |
}, | |
"cell_type": "code", | |
"source": "msk = (\n (x > 5)\n & (x < 10)\n)", | |
"execution_count": 23, | |
"outputs": [] | |
}, | |
{ | |
"metadata": { | |
"trusted": true | |
}, | |
"cell_type": "code", | |
"source": "msk", | |
"execution_count": 24, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"execution_count": 24, | |
"data": { | |
"text/plain": "array([[False, False, False, False, False],\n [False, True, True, True, True],\n [False, False, False, False, False],\n [False, False, False, False, False]])" | |
}, | |
"metadata": {} | |
} | |
] | |
}, | |
{ | |
"metadata": { | |
"trusted": true | |
}, | |
"cell_type": "code", | |
"source": "y = np.arange(20).reshape(4, 5) + 10", | |
"execution_count": 25, | |
"outputs": [] | |
}, | |
{ | |
"metadata": { | |
"trusted": true | |
}, | |
"cell_type": "code", | |
"source": "y", | |
"execution_count": 26, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"execution_count": 26, | |
"data": { | |
"text/plain": "array([[10, 11, 12, 13, 14],\n [15, 16, 17, 18, 19],\n [20, 21, 22, 23, 24],\n [25, 26, 27, 28, 29]])" | |
}, | |
"metadata": {} | |
} | |
] | |
}, | |
{ | |
"metadata": { | |
"trusted": true | |
}, | |
"cell_type": "code", | |
"source": "msk_y = (y > 10)", | |
"execution_count": 27, | |
"outputs": [] | |
}, | |
{ | |
"metadata": { | |
"trusted": true | |
}, | |
"cell_type": "code", | |
"source": "msk_combined = msk & msk_y", | |
"execution_count": 28, | |
"outputs": [] | |
}, | |
{ | |
"metadata": { | |
"trusted": true | |
}, | |
"cell_type": "code", | |
"source": "msk_y", | |
"execution_count": 29, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"execution_count": 29, | |
"data": { | |
"text/plain": "array([[False, True, True, True, True],\n [ True, True, True, True, True],\n [ True, True, True, True, True],\n [ True, True, True, True, True]])" | |
}, | |
"metadata": {} | |
} | |
] | |
}, | |
{ | |
"metadata": { | |
"trusted": true | |
}, | |
"cell_type": "code", | |
"source": "msk_combined", | |
"execution_count": 30, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"execution_count": 30, | |
"data": { | |
"text/plain": "array([[False, False, False, False, False],\n [False, True, True, True, True],\n [False, False, False, False, False],\n [False, False, False, False, False]])" | |
}, | |
"metadata": {} | |
} | |
] | |
}, | |
{ | |
"metadata": { | |
"trusted": true | |
}, | |
"cell_type": "code", | |
"source": "msk_combined.astype(np.int32)", | |
"execution_count": 31, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"execution_count": 31, | |
"data": { | |
"text/plain": "array([[0, 0, 0, 0, 0],\n [0, 1, 1, 1, 1],\n [0, 0, 0, 0, 0],\n [0, 0, 0, 0, 0]], dtype=int32)" | |
}, | |
"metadata": {} | |
} | |
] | |
}, | |
{ | |
"metadata": { | |
"trusted": true | |
}, | |
"cell_type": "code", | |
"source": "import matplotlib.pyplot as plt", | |
"execution_count": 32, | |
"outputs": [] | |
}, | |
{ | |
"metadata": { | |
"trusted": true | |
}, | |
"cell_type": "code", | |
"source": "plt.figure()\nplt.pcolormesh(msk_combined)", | |
"execution_count": 34, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"execution_count": 34, | |
"data": { | |
"text/plain": "<matplotlib.collections.QuadMesh at 0x138b6a550>" | |
}, | |
"metadata": {} | |
}, | |
{ | |
"output_type": "display_data", | |
"data": { | |
"text/plain": "<Figure size 432x288 with 1 Axes>", | |
"image/png": "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\n" | |
}, | |
"metadata": { | |
"needs_background": "light" | |
} | |
} | |
] | |
}, | |
{ | |
"metadata": { | |
"trusted": true | |
}, | |
"cell_type": "code", | |
"source": "", | |
"execution_count": null, | |
"outputs": [] | |
} | |
], | |
"metadata": { | |
"kernelspec": { | |
"name": "conda-env-anl-py", | |
"display_name": "Python [conda env:anl] *", | |
"language": "python" | |
}, | |
"language_info": { | |
"name": "python", | |
"version": "3.8.10", | |
"mimetype": "text/x-python", | |
"codemirror_mode": { | |
"name": "ipython", | |
"version": 3 | |
}, | |
"pygments_lexer": "ipython3", | |
"nbconvert_exporter": "python", | |
"file_extension": ".py" | |
}, | |
"gist": { | |
"id": "", | |
"data": { | |
"description": "boolean_masks.ipynb", | |
"public": true | |
} | |
} | |
}, | |
"nbformat": 4, | |
"nbformat_minor": 5 | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment