Подскажите, каким способом или как переписать код для улучшения скорости работы с циклами для больших данных.
Цели задачи: из двух таблиц ALL (443863 rows × 8 columns) и UFC (33563 rows × 8 columns) создать сводный список rows_from_ALL с набором данных по условиям.
Вот такой код работает медленно, хотелось бы его оптимизировать в плане производительности:
rows_from_ALL = []
for i,row1 in enumerate(ALL.itertuples(index=True)):
for y,row2 in enumerate(UFC.itertuples(index=True)):
if row1.idDevice == row2.idDevice:
if (row1.tsEvent > row2.tsEvent) & (row1.tsEvent < (row2.tsEvent + 3600)):
if row1.RN > row2.RN:
rows_from_ALL.append(row1)
Цели задачи: из двух таблиц ALL (443863 rows × 8 columns) и UFC (33563 rows × 8 columns) создать сводный список rows_from_ALL с набором данных по условиям.
Вот такой код работает медленно, хотелось бы его оптимизировать в плане производительности:
rows_from_ALL = []
for i,row1 in enumerate(ALL.itertuples(index=True)):
for y,row2 in enumerate(UFC.itertuples(index=True)):
if row1.idDevice == row2.idDevice:
if (row1.tsEvent > row2.tsEvent) & (row1.tsEvent < (row2.tsEvent + 3600)):
if row1.RN > row2.RN:
rows_from_ALL.append(row1)