我试图将两个变量(一个ID和一个DateTime变量)为MultiIndexed的熊猫数据帧转换为dask数据帧,但是我得到了以下错误; "NotImplementedError: Dask does not support MultiIndex Dataframes" 我正在使用下面的代码 import pandas as pd
import dask.dataframe as dd
dask_df = dd.from_pandas(pandas_df) 实际上,我有700多个熊猫数据帧(每个超过100MB),我计划将每个熊猫数据帧转换为dask,然后将它们全部附加到一
当我尝试通过读取pickle文件来创建dask数据帧时,我得到了一个错误
import dask.dataframe as dd
ds_df = dd.read_pickle("D:\test.pickle")
AttributeError: 'module' object has no attribute 'read_pickle'
but it works fine with read_csv
在大熊猫身上,它一如既往地成功了。
所以,如果我在这里或者在dask中做错了什么,请纠正我,我们根本不能通过读取一个pickle文件来创建数据帧
我想转换包含Avro对象的javaRDD (例如。对象( MyAvroClsass)到java中的数据帧。我的错误越来越少
Cannot have circular references in bean class, but got the circular reference of class class org.apache.avro.Schema
代码:
JavaRDD测试;数据集outputDF = sparksession.createDataFrame(test.rdd(),.class);
我正在寻找最好的方法来计算存储在数据帧中的许多dask delayed指令。我不确定是否应该将pandas数据帧转换为包含delayed对象的dask数据帧,或者是否应该对pandas数据帧的所有值调用compute调用。
我非常感谢大家的建议,因为我在通过嵌套的for循环传递delayed对象的逻辑上遇到了问题。
import numpy as np
import pandas as pd
from scipy.stats import hypergeom
from dask import delayed, compute
steps = 5
sample = [int(x) for x
大家好,我刚开始接触dusk Ml,我一直在尝试使用dask ml训练一个逻辑回归模型来预测tweet的情绪。我已经将pandas数据帧转换为dask数据帧。在那之后,我执行了列车测试拆分。在那之后,我在X_train和X_test上使用了散列向量器。我执行了Train_X_vect.compute().shape行来检查形状,它返回(180224, 7000),否则y_train.compute().shape会在我尝试的时候返回(180224,),为了将它们拟合到逻辑回归模型中,我得到了一个错误,说"cannot add intercept to array with unknow
我正在dask中构建一个非常大的DAG,以提交给分布式调度器,在分布式调度器中,节点操作数据帧,而数据帧本身可能非常大。一种模式是,我有大约50-60个函数,用于加载数据和构造pandas数据帧,每个数据帧大小为几百MB (并且逻辑上表示单个表的分区)。我想将这些连接到图中下游节点的单个dask数据帧中,同时最小化数据移动。我像这样链接任务:
dfs = [dask.delayed(load_pandas)(i) for i in disjoint_set_of_dfs]
dfs = [dask.delayed(pandas_to_dask)(df) for df in dfs]
return
我有这个dask数据帧,它有两列,其中一列包含元组(或数组)。我想要的是有一个新的数据帧,每一行中的元组的每个元素都有一行。
示例数据帧可以像这样构造:
import pandas as pd
import dask.dataframe as dd
tmp = pd.DataFrame({'name': range(10), 'content': [range(i) for i in range(10)]})
ddf = dd.from_pandas(tmp, npartitions=1)
它的形状如下:
ddf: name content
我正在尝试读取一个大型.parquet作为dask数据帧,并对其进行采样:
ddf = dd.read_parquet("big_data.parquet")
sample_ddf = ddf.sample(frac=0.03)
这会产生以下错误:
ValueError: Arrays chunk sizes are unknown: (nan,)
A possible solution: https://docs.dask.org/en/latest/array-chunks.html#unknown-chunks
Summary: to compute chunks si
根据 answer的说法,如果Dask知道数据帧的索引已排序,则Dask数据帧可以执行智能索引。
如何让Dask知道索引是否已排序?
在我的特定情况下,我这样做:
for source is sources:
# This df has a datetimeindex that I know to be sorted
pd = load_pandas_df_from_some_source(source)
dd = dask.dataframe.from_pandas(pd, chunksize=foo)
dd.to_hdf(some_unique_filename, '
我试图使用dask聚合一个包含多行坏数据的大型(66 of )数据库。
由于dask没有删除坏行的功能,所以我第一次将所有数据作为熊猫数据读取,并删除坏行。然后,我将此转换为dask数据帧。我的代码如下:
导入dask.dataframe作为dd从dask.distributed导入客户端导入熊猫
#Groups the average Thresholds by NEATGeneration and finds the mean, standard deviation, minimum and maximum of the data
def group(df):
res = df.g
我想知道如何在调用map_partitions而不是pd.Dataframe时返回dask Dataframe,以避免内存问题。
输入数据帧
id | name | pet_id
---------------------
1 Charlie pet_1
2 Max pet_2
3 Buddy pet_3
4 Oscar pet_4
map_partitions的预期输出
pet_id | name | date | is_healty
------------------------------------------
我正在尝试使用Dask,并希望向所有工作节点发送一个查找pandas.DataFrame。不幸的是,它失败了,原因是: TypeError: ("'Future' object is not subscriptable", 'occurred at index 0') 当使用lookup.result()['foo'].iloc[2]代替lookup['baz'].iloc[2]时,它工作得很好,但是:对于较大的输入数据帧实例,它似乎一次又一次地卡在from_pandas上。此外,看起来很奇怪的是,未来需要手动阻
我使用dask dataframe.groupby().apply(),并将dask系列作为返回值。我是每个组的一个列表三胞胎,如(a,b,1),然后希望把所有的三胞胎变成一个单dask数据帧。
在映射函数的末尾,我使用这段代码将三胞胎作为df返回。
#assume here that trips is a generator for tripletes such as you would produce from itertools.product([l1,l2,l3])
trip = list(itertools.chain.from_iterable(trip))
df = pd.Dat
我有以下python脚本,其中我使用现有的pandas数据帧创建了一个dask数据帧。我使用的是多进程调度器,因为我的函数使用纯python。调度器创建8个进程(每个分区一个),但它们是按顺序运行的,一次一个。
dask_data = ddf.from_pandas(data, npartitions=8)
dask_data = dask_data.assign(
images_array_1=dask_data.images_array_1.apply(lambda x: [] if x == "" else [int(el) for el in x.split(