本文介绍了DASK FROM_ARRAY将类型转换为对象的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有以下代码,可以从一个数组创建一个DaskDataFrame。问题是所有类型都被转换为Object。我试图指定元数据,但找不到方法。如何在FROM_ARRAY中指定META?
b = np.array([(1.5, 2, 3, datetime(2000,1,1)), (4, 5, 6, datetime(2001, 2, 2))])
ddf = dd.from_array(b, columns=['col1', 'col2', 'col3', 'date1'], meta=['float', 'float', 'float', 'datetime'])
此操作引发AttributeError: 'list' object has no attribute '_constructor'
推荐答案
您可以将NumPy数组指定为结构化数组:
import numpy as np
import pandas as pd
import dask.dataframe as dd
from datetime import datetime
b = np.array([(1.5, 2, 3, np.datetime64(datetime(2000,1,1))), (4, 5, 6, np.datetime64(datetime(2001, 2, 2)))], dtype=([('col1','float32'),('col2','float32'), ('col3','float32'), ('date1','<M8[us]') ]))
ddf = dd.from_array(b, columns=['col1', 'col2', 'col3', 'date1'])
ddf.head()
这篇关于DASK FROM_ARRAY将类型转换为对象的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!