首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在python中多核地处理具有迭代行的for循环

如何在python中多核地处理具有迭代行的for循环
EN

Stack Overflow用户
提问于 2022-03-10 18:12:32
回答 1查看 74关注 0票数 0

我有一个庞大的数据集,可以使用多核处理。我有一个数据帧,其中包含每一行的序列和块大小。

我编写了一个循环,该循环提取每一行的序列和块大小,并从名为localcider的包中计算一个函数的得分。

我不知道怎么并行运行。

有人能帮忙吗?

代码语言:javascript
运行
复制
omega = []
AA=list('FYW')
for i, row in df.iterrows():
    seq = df['IDRseq'][i]
    b = df['bsize'][i]
    bsize = [b-1,b]
    SeqOb = SequenceParameters(seq,blobsize=bsize)
    omega.append(SeqOb.get_kappa_X(AA))
    
s1 = pd.Series(omega, name='omega')
df = df.assign(omega=s1.values)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-03-11 11:26:43

在谷歌上搜索了很多之后,我遇到了混乱。

我认为这是做我想做的事最直观的方式。

我正在张贴的代码,供今后参考。

代码语言:javascript
运行
复制
from pandarallel import pandarallel

pandarallel.initialize(progress_bar=True, nb_workers = n)
# nb_workers = n ; I set the nb_workers fo CPU core - 1 so the system is more stable

def something(x):
 #do stuff
    return result

df['result'] = df.parallel_apply(something, axis=1)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71428885

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档