我正在尝试使用swifter.apply
加速标准 pandas lambda 函数,否则该函数工作正常,但添加 swifter 会导致函数停止。深入研究代码,似乎卡在了这一行:
timed = timeit.timeit(wrapped, number=N_REPEATS)
我假设这是函数的 3 次标准迭代,以确定并行化是否比标准应用程序更快。
这是我用来应用该功能的代码:
df['start_time'] = pd.to_datetime(df['file'].swifter.apply(lambda x: start_time(x)))
这是函数(读取文本文件的一部分):
def start_time(file_in):
fp = open(file_in)
for i, line in enumerate(fp):
if i == 2:
break
fp.close()
return line.replace('\n', '').split(',')[1]