【发布时间】:2018-10-04 17:55:37
【问题描述】:
我有一些数据正在尝试对其应用 multiprocessing.pool,因为我有一台配备 16 个处理器的机器。 我在这里生成一些伪数据:
y = pd.Series(np.random.randint(400, high=600, size=1250))
date_today = datetime.now()
x = pd.date_range(date_today, date_today + timedelta(1250), freq='D')
data = pd.DataFrame(columns=['Date','Price'])
data['Date'] = x
data['Price'] = y
d={name: group for name, group in data.groupby(np.arange(len(data)) // (len(data)))}
我真正想要的是在 for 循环参数中应用 pool 。所以每个常量使用一个处理器:
parameters = range(300,550,50)
portfolio = pd.DataFrame(columns=['Parameter','Date','Price','Calculation'])
for key, value in sorted(d.items()):
for constante in parameters:
print('Constante:',constante)
# HERE I WANT TO USE MP.POOL()
在代码中,我使用某种移动窗口来执行计算。这是最简单的代码版本。所以我想在写入 DF 时为参数中的每个常量分配一个进程。如何实现这一目标?
【问题讨论】:
标签: python multiprocessing pool