2017-05-31 2 views
3

Ich bin ziemlich neu zu Python und Tring, um dask zu verwenden, aber ich bekomme RuntimeWarning und nicht wirklich warum. Ein Einblick wäre schön.dask/python ungültiger Wert in arccos

Code:

x2 = da.random.uniform(0.01,0.1,size=1e6,chunks= 1e5) 
%time asd2 = da.arccos(x2) 

diese ständig gibt mir:

C: \ ProgramsPhD \ Anaconda \ lib \ site-packages \ dask \ Array \ core.py: 457: RuntimeWarning: ungültiger Wert angetroffen in arccos o = func (* args, ** kwargs)

Antwort

2

Diese Warnung ist harmlos. Dask.array muss den dtype des Ausgabearrays ermitteln, da es jedoch zu langsam ist, hat es noch keinen Zugriff auf die Daten. Um dies zu beheben, ruft es np.arccos auf ein winziges bisschen Daten. Manchmal ist dieses winzige Datenstück Null, was eine NumPy-Warnung auslöst.

Dies ist ärgerlich und sollte behoben werden, aber es hat keinen Einfluss auf Ihre tatsächliche Berechnung.

In [1]: import dask.array as da 

In [2]: x2 = da.random.uniform(0.01,0.1,size=1e6,chunks= 1e5) 
    ...: %time asd2 = da.arccos(x2) 
    ...: 
/home/mrocklin/workspace/dask/dask/array/core.py:476: RuntimeWarning: invalid value encountered in arccos 
    o = func(*args, **kwargs) 
CPU times: user 5.61 ms, sys: 108 µs, total: 5.72 ms 
Wall time: 9.66 ms 

In [3]: asd2 
Out[3]: dask.array<arccos, shape=(1000000,), dtype=float64, chunksize=(100000,)> 

In [4]: asd2.compute() 
Out[4]: 
array([ 1.48500108, 1.55036626, 1.50620869, ..., 1.52765354, 
     1.5051477 , 1.49203593]) 
Verwandte Themen