gpt4 book ai didi

python - 当axis=0时, Pandas 并行应用

转载 作者:行者123 更新时间:2023-12-03 09:33:27 25 4
gpt4 key购买 nike

我想在所有 pandas 列上并行应用一些功能。例如,我想并行执行此操作:

def my_sum(x, a):
return x + a


df = pd.DataFrame({'num_legs': [2, 4, 8, 0],
'num_wings': [2, 0, 0, 0]})
df.apply(lambda x: my_sum(x, 2), axis=0)

我知道有一个 swifter包,但不支持 axis=0申请中:

NotImplementedError: Swifter cannot perform axis=0 applies on large datasets. Dask currently does not have an axis=0 apply implemented. More details at https://github.com/jmcarpenter2/swifter/issues/10



Dask 也不支持 axis=0 (根据 swifter 中的文档)。

我搜索了几个来源,但找不到简单的解决方案。

不敢相信这在 Pandas 中如此复杂。

最佳答案

Koalas提供了一种在数据帧上并行执行计算的方法。它接受与 pandas 相同的命令但在后台的 Apache Spark 引擎上执行它们。

请注意,您确实需要可用的并行基础架构才能正确使用它。

在他们的博客文章中,他们比较了以下代码块:

Pandas :

import pandas as pd
df = pd.DataFrame({'x': [1, 2], 'y': [3, 4], 'z': [5, 6]})
# Rename columns
df.columns = [‘x’, ‘y’, ‘z1’]
# Do some operations in place
df[‘x2’] = df.x * df.x

考拉:

import databricks.koalas as ks
df = ks.DataFrame({'x': [1, 2], 'y': [3, 4], 'z': [5, 6]})
# Rename columns
df.columns = [‘x’, ‘y’, ‘z1’]
# Do some operations in place
df[‘x2’] = df.x * df.x

关于python - 当axis=0时, Pandas 并行应用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60758984/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com