У меня есть два DataFrames, каждый с несколькими столбцами, но с одним и тем же столбцом timestamp (временные метки различны в каждом DataFrame).Я хотел бы объединить их с условием, что строка с определенной отметкой времени в DataFrame1 будет соединена со строкой из DataFrame2 с максимальной отметкой времени, меньшей или равной отметке времени в строке из DataFrame1.Я хотел бы сделать это быстрее, чем это:
df1['ask'], df1['bid'] = zip(*df1['timestamp'].apply(mm.join_with_data, args=(df2,)))
где
def join_with_data(df1, df2):
temp = df2[df2.timestamp == max(df2.timestamp[df2.timestamp <= df1])]
return temp.values[0][0], temp.values[0][1]
Возможно ли сделать это более изощренным способом?Это довольно медленно для DataFrames с более чем 100 тыс. Строк.