数値の DataFrame を配列に簡単に変換する方法はありますか? values
pandas DataFrame と同様です。提供された API を使用してこれを行う方法を見つけることができないようですが、それは一般的な操作だと思います。
4347 次
3 に答える
9
編集:はい、これは簡単です
.values
物件をご利用いただけます
x = df.values
古い、今は間違った答え
現時点では、これを行う簡単な方法はありません。これは、dask.array がすべてのチャンクの長さを知る必要があり、dask.dataframe がこの長さを知らないためです。これは完全に怠惰な操作ではありません。
そうは言っても、次のようにdask.delayedを使用して実現できます。
import dask.array as da
from dask import compute
def to_dask_array(df):
partitions = df.to_delayed()
shapes = [part.values.shape for part in partitions]
dtype = partitions[0].dtype
results = compute(dtype, *shapes) # trigger computation to find shape
dtype, shapes = results[0], results[1:]
chunks = [da.from_delayed(part.values, shape, dtype)
for part, shape in zip(partitions, shapes)]
return da.concatenate(chunks, axis=0)
于 2016-05-26T01:17:38.473 に答える