假设我有一个 3D dask 数组,代表整个美国的温度时间序列,[Time, Lat, Lon]。我想要获取 100 个不同位置的表格时间序列。使用 numpy 的花哨索引,这看起来像[:, [lat1, lat2...], [lon1, lon2...]]. Dask 数组尚不允许这种索引。考虑到这种限制,完成这项任务的最佳方法是什么?
在 OSX 10.12.6 上运行 Dask 0.16.0 时,我无法将本地连接dask-worker到本地dask-scheduler. 我只是想遵循官方Dask 教程。重现步骤:
第 1 步:运行dask-scheduler
第 2 步:运行dask-worker 10.160.39.103:8786
该问题似乎与 dask 调度程序有关,而不是与工作人员有关,因为我什至无法通过其他方式访问该端口(例如nc -zv 10.160.39.103 8786)。
然而,该进程显然仍在机器上运行:
我试图在我的 dask 数据框中删除一些行:
df.drop(df[(df.A <= 3) | (df.A > 1000)].index)
Run Code Online (Sandbox Code Playgroud)
但是这个不起作用并返回 NotImplementedError: Drop currently only works for axis=1
我真的需要帮助
我有一个包含 500 万条记录的数据框。我试图通过利用 python 中的 dask 数据帧使用下面的代码来处理它
import dask.dataframe as dd
dask_df = dd.read_csv(fullPath)
............
for index , row in uniqueURLs.iterrows():
print(index);
results = dask_df[dask_df['URL'] == row['URL']]
count = results.size.compute();
Run Code Online (Sandbox Code Playgroud)
但我注意到 dask 在过滤数据帧方面非常有效,但不是在 .compute() 中。因此,如果我删除了计算结果大小的行,我的程序就会变得非常快。有人可以解释一下吗?我怎样才能让它更快?
我有以下问题。我有一个巨大的 csv 文件,想用多处理加载它。对于具有 500000 行和 130 个具有不同 dtype 的列的示例文件,Pandas 需要 19 秒。我尝试了 dask,因为我想多处理阅读。但这需要更长的时间,我想知道为什么。我有 32 个内核。并尝试了这个:
import dask.dataframe as dd
import dask.multiprocessing
dask.config.set(scheduler='processes')
df = dd.read_csv(filepath,
sep='\t',
blocksize=1000000,
)
df = df.compute(scheduler='processes') # convert to pandas
Run Code Online (Sandbox Code Playgroud) 我的 Jupyter Notebook 输出中出现 Dask 客户端垃圾邮件警告。有没有办法关闭 dask 警告?
警告文本如下所示:“distributed.worker - 警告 - 内存使用率很高,但工作人员没有数据可存储到磁盘。也许其他进程正在泄漏内存?进程内存:3.16 GB -- 工作人员内存限制:4.20 GB”
问题出现在这些代码之后:
import pandas as pd
from sqlalchemy import create_engine, MetaData
from sqlalchemy import select, insert, func
import dask.dataframe as dd
from dask.distributed import Client
client = Client(n_workers=4, threads_per_worker=4, processes=False)
engine = create_engine(uri)
meta_core = MetaData()
meta_core.reflect(bind=engine)
table = meta_core.tables['table']
dd_main = dd.read_sql_table(
table=table,
uri=uri,
index_col='id'
)
dd_main.head()
Run Code Online (Sandbox Code Playgroud)
执行上面的块后,我在每个 Jupyter 单元格中都会收到很多这样的警告,所以我什至找不到我的实际输出。
我尝试运行一个非常简单的 Dask 程序,如下所示:
# myfile.py
from dask.distributed import Client
client = Client()
Run Code Online (Sandbox Code Playgroud)
但是当我运行这个程序时,我得到了这个奇怪的错误
An attempt has been made to start a new process before the
current process has finished its bootstrapping phase.
This probably means that you are not using fork to start your
child processes and you have forgotten to use the proper idiom
in the main module:
if __name__ == '__main__':
freeze_support()
...
The "freeze_support()" line can be omitted if the program
is not going to be frozen …Run Code Online (Sandbox Code Playgroud) 我想使用 dask 2.14 扩展我在 Pandas 数据帧上执行的一些操作。例如,我想对数据框的列应用移位:
import dask.dataframe as dd
data = dd.read_csv('some_file.csv')
data.set_index('column_A')
data['column_B'] = data.groupby(['column_A'])['column_B'].shift(-1)
Run Code Online (Sandbox Code Playgroud)
但是我AttributeError: 'SeriesGroupBy' object has no attribute 'shift'
读了 dask 文档,发现没有这样的方法(而在熊猫中)
你能提出一些有效的替代方案吗?
谢谢
是否可以将多节点 Dask 集群用作PythonScriptStepAML 管道的计算?
我们有一个PythonScriptStep使用featuretools's 的深度特征合成 ( dfs) ( docs )。ft.dfs()有一个n_jobs允许并行化的参数。当我们在一台机器上运行时,这项工作需要三个小时,而在 Dask 上运行得更快。如何在 Azure ML 管道中实施此操作?
描述错误
当我尝试时,import dask_cudf出现以下错误:
---------------------------------------------------------------------------
ModuleNotFoundError Traceback (most recent call last)
<ipython-input-11-afb970ad91bb> in <module>()
8 from dask_cuda import LocalCUDACluster
9 import dask_xgboost
---> 10 import dask_cudf
11 import dask
12 from xgboost.dask import DaskDMatrix
ModuleNotFoundError: No module named 'dask_cudf'
---------------------------------------------------------------------------
NOTE: If your import is failing due to a missing package, you can
manually install dependencies using either !pip or !apt.
To view examples of installing some common dependencies, click the
"Open Examples" button below.
---------------------------------------------------------------------------
Run Code Online (Sandbox Code Playgroud)
我用 pip 安装了 …
dask ×10
python ×7
python-3.x ×3
arrays ×1
azure-machine-learning-service ×1
csv ×1
dataframe ×1
gpu ×1
numpy ×1
pandas ×1
performance ×1
rapids ×1