Author: | Sebastian Berg |
---|---|
Contact: | [email protected] |
Date: | 2015-07-14 |
Status: | draft |
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
import numpy as np | |
def object_einsum(string, *arrays): | |
"""Simplified object einsum, not as much error checking | |
does not support "..." or list input and will see "...", etc. as three times | |
an axes identifier, tries normal einsum first! | |
NOTE: This is untested, and not fast, but object type is | |
never really fast anyway... |
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
import numpy as np | |
from numpy import asarray, add, rollaxis, sort, arange | |
def percentile(a, q, limit=None, interpolation='linear', axis=None, | |
out=None, overwrite_input=False): | |
""" | |
Compute the qth percentile of the data along the specified axis. | |
Returns the qth percentile of the array elements. |
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
def rolling_window(array, window=(0,), asteps=None, wsteps=None, axes=None, toend=True): | |
"""Create a view of `array` which for every point gives the n-dimensional | |
neighbourhood of size window. New dimensions are added at the end of | |
`array` or after the corresponding original dimension. | |
Parameters | |
---------- | |
array : array_like | |
Array to which the rolling window is applied. | |
window : int or tuple |
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
"""Impressive little thing how einsum + stride_tricks can beat numpys build in C functions | |
for correlate (for large data). (ok depending on the implementation of np.correlate, the | |
comparison is not fair, but still rather impressive that you can get comparable speeds) | |
""" | |
import numpy as np | |
import stride_tricks as st # stride_tricks.py gist | |
a = np.random.random((100,100,100)).ravel() | |
stamp = np.random.random((3,3,3)).ravel() |
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
import numpy as np | |
from collections import defaultdict as _dd | |
def rolling_window(array, window=(0,), asteps=None, wsteps=None, axes=None, toend=True): | |
"""Create a view of `array` which for every point gives the n-dimensional | |
neighbourhood of size window. New dimensions are added at the end of | |
`array` or after the corresponding original dimension. | |
Parameters | |
---------- |
NewerOlder