2017-05-31 20 views
3

私はPythonにはかなり新しく、daskを使用するようになっていましたが、RuntimeWarningを取得し続けています。いくつかの洞察はいいだろう。arccosでdask/pythonの値が無効になっています

コード:

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

これは常に私に与える:

C:\ ProgramsPhD \アナコンダ\ libには\サイト・パッケージをDASKの\列\ \ core.py:457:RuntimeWarning:無効な値が検出アークスで o = func(* args、** kwargs)

答えて

2

この警告は無害です。 Dask.arrayは出力配列のdtypeを決定する必要がありますが、遅延であるため、まだデータにアクセスできません。これを解決するには、ほんの少しのデータでnp.arccosを呼び出します。場合によっては、この小さなデータがゼロでNumPy警告が発生することがあります。

これは迷惑で、修正する必要がありますが、実際の計算には影響しません。

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]) 
関連する問題