Dask: преобразовать dask.DataFrame в xarray.Dataset - PullRequest
0 голосов
/ 28 марта 2020

Это возможно в pandas.

Я хотел бы сделать это с помощью dask.

К вашему сведению, вы можете go из xarray.Dataset в Dask. DataFrame

Pandas решение с использованием .to_xarry :

import pandas as pd
import numpy as np

df = pd.DataFrame([('falcon', 'bird', 389.0, 2),
                   ('parrot', 'bird', 24.0, 2),
                   ('lion', 'mammal', 80.5, 4),
                   ('monkey', 'mammal', np.nan, 4)],
                  columns=['name', 'class', 'max_speed',
                           'num_legs'])

df.to_xarray()
<xarray.Dataset>
Dimensions:    (index: 4)
Coordinates:
  * index      (index) int64 0 1 2 3
Data variables:
    name       (index) object 'falcon' 'parrot' 'lion' 'monkey'
    class      (index) object 'bird' 'bird' 'mammal' 'mammal'
    max_speed  (index) float64 389.0 24.0 80.5 nan
    num_legs   (index) int64 2 2 4 4

Dask решение?

import dask.dataframe as dd

ddf = dd.from_pandas(df, 1)

?

Может выглядеть решение с использованием xarray, но я думаю, что он имеет только .from_dataframe .

import xarray as xr

ds = xr.Dataset()
ds.from_dataframe(ddf.compute())

1 Ответ

1 голос
/ 28 марта 2020

Этот метод в настоящее время не существует. Если вы считаете, что он должен существовать, тогда я призываю вас поднять проблему github в качестве запроса на добавление функции. Возможно, вы захотите пометить некоторых людей Xarray.

...