如何在python中减少此嵌套循环代码的时间复杂度

时间:2019-09-12 18:28:28

标签: python algorithm

请帮助我减少Python中嵌套循环的时间复杂度

df是一个具有3列的数据框,例如说出名称,城市和日期 rep数据框具有基于df的2列名称和城市的平均值/平均值。我需要将rep的平均值重新附加到df

for i in range(0,len(rep)):
    for j in range(k,len(df)):
        if df["X"][j] == rep["X"][i]:
           df["Mean"][j] =  rep["Mean"][i]
       else:
           k=j
           break

1 个答案:

答案 0 :(得分:0)

您想要的东西是这样的:

df.set_index('X').join(rep.set_index('X'))

将要进行连接的键设置为索引将使过程更快。完成连接后,可以过滤旧的均值(使用drop数据框方法)和不需要的值