У меня есть локальный фрейм данных, к которому ежедневно добавляются новые записи.Время от времени старая запись обновляется.Выдача - это набор столбцов, но отметка времени более поздняя.
С целью удаления старой записи и сохранения новой (обновленной) записи я добавляю новую запись, а затем "очищаю" кадр данных, просматривая строки и находя старую запись:
del_rows=[]
df2 = df.copy()
for index, row in df.iterrows():
for index2, row2 in df2.iterrows():
if row["crit1"]==row2["crit1"] and row["date"] > row2["date"]:
del_rows.append(index2)
df = df.drop(df.index[del_rows])
Будучи функциональным, я бы хотел узнать более "панд" способ этого процесса.Я знаю, что apply
и векторизация NumPy быстрее;однако я не могу придумать функцию, которая могла бы достичь этого, которую я мог бы отобразить apply
, или способ использования векторизации для различных типов данных.