我有一个名为 list1 的列表,其中包含 5 个数据帧。我想同时将这些数据帧传递给一个可以计算一些数学计算的函数。我正在为下面的代码而苦苦挣扎-import multiprocessing import pandas as pdtcn=[df1,df2,df3,df4,df5]def resampling(tick): data_k = tick['price'].resample('1Min').ohlc() return data_kif __name__ == '__main__': with multiprocessing.Pool(processes=len(tcn)) as p: results = p.starmap(resampling, tcn) 我收到一个错误“resampling() 需要 1 个位置参数,但给出了 14 个”基本上 14 是数据帧中的列数。
1 回答
呼唤远方
TA贡献1856条经验 获得超11个赞
starmap
之所以这样命名是因为它将子集合应用于函数而不是直接传递它们:
.starmap(f, coll) ~= .map(lambda sub: f(*sub), coll)
如果您希望子集合作为单个参数传递,请改用 plain map
。
添加回答
举报
0/150
提交
取消