【发布时间】:2017-02-21 15:34:14
【问题描述】:
我正在为不同的时间戳执行以下代码,每个代码将有接近一百万条记录。一个约会用了一个多小时,我总共有 35 个约会的数据。
有没有办法优化这段代码?
def median(a, b, c,d,e):
I=[a,b,c,d,e]
I.sort()
return I[2]
for i in range(2, len(df['num'])-2):
num_smooth= median(df['num'][i-1], df['num'][i-2], df['num'][i],
df['num'][i+1], df['num'][i+2])
df.set_value(i,'num_smooth',num_smooth)
df['num_smooth'].fillna(df['num'], inplace=True)
...........................................
Remaining code
【问题讨论】:
-
您是否尝试过分析您的代码?对于超过 1 亿条记录,您发布的代码中的任何内容都不应远程接近 1 小时。
-
代码还有一些其他的计算。在我包含这段代码之前很快
标签: python loops pandas for-loop optimization