我正在使用from_pandas()函数从pandas数据帧创建一个dask数据帧。当我尝试使用方括号[[]]从dask数据框中选择两列时,出现了KeyError。
根据dask文档,dask数据框支持方括号列选择,例如pandas数据框。
# data is a pandas dataframe
dask_df = ddf.from_pandas(data, 30)
data = data[dask_df[['length', 'country']].apply(
lambda x: myfunc(x, countries),
meta=('Boolean'),
axis=1).compute()].reset_index(drop=True)
# This is the error I am getting:
KeyError: "None of [Index(['length', 'country'], dtype='object')] are in the [columns]"
我当时想这可能与为应用提供正确的元数据有关,但是从错误看来,dask数据框无法选择两列,而这应该在应用之前发生。
如果在应用行中将“ dask_df”替换为“ data”(pandas df),则此方法非常适用。
在执行from_pandas时是否不保留索引?
答案 0 :(得分:-1)
错误状态:列['length', 'country']
在dask_df
中不存在。
首先创建它们,然后再运行功能。