Skip to content

Instantly share code, notes, and snippets.

@Midnighter
Created August 12, 2014 09:52
Show Gist options
  • Save Midnighter/316247eafa08d00eee17 to your computer and use it in GitHub Desktop.
Save Midnighter/316247eafa08d00eee17 to your computer and use it in GitHub Desktop.
Effects of NaN-elements on bottleneck sum.
{
"metadata": {
"name": "",
"signature": "sha256:4ccdc8580536b8596c3f61f406528a085be45e6ed17a3775b5fda9d7b310f6cd"
},
"nbformat": 3,
"nbformat_minor": 0,
"worksheets": [
{
"cells": [
{
"cell_type": "code",
"collapsed": false,
"input": [
"import numpy as np\n",
"import bottleneck as bn"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 1
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"arr = np.random.rand(3000, 3200)"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 2
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%timeit bn.nansum(arr, axis=1)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"10 loops, best of 3: 24 ms per loop\n"
]
}
],
"prompt_number": 3
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"miss_10 = arr.copy()\n",
"miss_10[miss_10 < 0.1] = np.nan"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 4
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%timeit bn.nansum(miss_10, axis=1)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"10 loops, best of 3: 32.7 ms per loop\n"
]
}
],
"prompt_number": 5
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"miss_30 = arr.copy()\n",
"miss_30[miss_30 < 0.1] = np.nan"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 6
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%timeit bn.nansum(miss_30, axis=1)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"10 loops, best of 3: 32.8 ms per loop\n"
]
}
],
"prompt_number": 7
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"miss_50 = arr.copy()\n",
"miss_50[miss_50 < 0.1] = np.nan"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 8
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%timeit bn.nansum(miss_50, axis=1)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"10 loops, best of 3: 32.7 ms per loop\n"
]
}
],
"prompt_number": 9
}
],
"metadata": {}
}
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment