2016-03-29 84 views
0

下面的D型是DASK陣列的Python:更改DASK陣列

>>> import dask.array as da 
>>> x = da.random.normal(5,2,size=(3,3),chunks=(1,1)) 
>>> x 
dask.array<da.rand..., shape=(3, 3), dtype=float64, chunksize=(1, 1)> 

我想D型更改爲x float96。怎麼做?

回答

1

通常,您可以使用.astype(...)方法更改NumPy或Dask數組的dtype。

x = x.astype(...) 

然而,不幸的是NumPy的也不Dask.array既不支持float96

In [1]: import numpy as np 

In [2]: np.float 
np.float  np.float16 np.float64 np.floating 
np.float128 np.float32 np.float_  

In [2]: np.array(1, dtype='float96') 
--------------------------------------------------------------------------- 
TypeError         Traceback (most recent call last) 
<ipython-input-2-50670c2e1bb5> in <module>() 
----> 1 np.array(1, dtype='float96') 

TypeError: data type "float96" not understood 
+0

感謝。但'浮動'支持依賴於機器。正如你所看到的「np.float」你的機器不支持float96,float128將在你的機器上工作。 – Kavan

+0

啊哈,我糾正了。在那種情況下,'.astype' – MRocklin