python - 字典到 dask 数据框
问题描述
我有一个字典列表delayed
。每个delayed
对象的计算值必须变成dask.Dataframe
.
dfs = []
for source_list in list_of_list:
values1 = {}
values2 = {}
for source in source_list:
intermediate = dask.delayed(myfunc)(source)
source_name = string_manipulation(source)
values1[source_name] = dask.delayed(myfunc1)(intermediate)
values2[source_name] = dask.delayed(myfunc2)(intermediate)
df1 = dd.from_delayed(values1) # TypeError: Expected Delayed object, got str
df2 = dd.from_delayed(values2)
df = dd.concat(df1, df2)
df = df.T # transpose function for dd?
dfs.append(df)
dfs = dd.concat(dfs)
dfs = dfs.compute()
通常pandas.DataFrame
将字典的键转换为列。这如何实现dask.DataFrame
?也许有更有效的方法。
我很欣赏你的评论。
解决方案
dd.from_delayed 需要一个延迟对象列表,每个对象都返回一个 pandas 数据帧。您正在提供延迟对象的字典,因此会出现错误。
您需要创建一个延迟对象列表,每个对象在计算时都会生成一个 pandas 数据帧。所有这些 pandas 数据框都应该具有相同的列和类型。
推荐阅读
- c++ - 如何加快编译多个模板类型定义?(macOS,Clang)
- django - Django 1.11 禁止直接分配到多对多集合的前端
- delay - RxJava2 延迟订阅现在做
- javascript - Onclick 使效果在 javascript 中工作
- java - 将java中的正则表达式转换为golang。纠正我
- javascript - 试图用对象构建矩阵
- join - Log Analytics - 是否可以将行合并为同一列 ID 上的单行
- c - 如何将枚举变量分配给数组索引的指针
- jquery - JQUERY 嵌套元素选择器/元素
- c - 不知道如何实现指向 char 指针数组的指针