Issue
I really want to avoid these annoying numpy warnings since I have to deal with a lot of NaNs
. I know this is usually done with seterr, but for some reason here it does not work:
import numpy as np
data = np.random.random(100000).reshape(10, 100, 100) * np.nan
np.seterr(all="ignore")
np.nanmedian(data, axis=[1, 2])
It gives me a runtime warning even though I set numpy to ignore all errors...any help?
Edit (this is the warning that is recieved):
/opt/local/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/numpy/lib/nanfunctions.py:612: RuntimeWarning: All-NaN slice encountered warnings.warn("All-NaN slice encountered", RuntimeWarning)
Solution
Warnings can often be useful and in most cases I wouldn't advise this, but you can always make use of the Warnings
module to ignore all warnings with filterwarnings
:
warnings.filterwarnings('ignore')
Should you want to suppress uniquely your particular error, you could specify it with:
with warnings.catch_warnings():
warnings.filterwarnings('ignore', r'All-NaN (slice|axis) encountered')
Answered By - miradulo
0 comments:
Post a Comment
Note: Only a member of this blog may post a comment.