Python 如何使此数据帧查找操作更快?

Python 如何使此数据帧查找操作更快?,python,pandas,numpy,dataframe,Python,Pandas,Numpy,Dataframe,我有两个熊猫数据帧。一个是testdata,另一个是refdata。两个数据帧都有一个名为“timestamp”的列。像这样: timestamp 197888.000, 197888.100, 197888.200, 197888.300, 197888.400, ... 我想从测试数据的每一行的refdata中找出合适的引用数据索引。对此,我使用“应用”方法 index = testdata.apply(lambda x: locate_refindex(x.timestamp, refd

我有两个熊猫数据帧。一个是testdata,另一个是refdata。两个数据帧都有一个名为“timestamp”的列。像这样:

timestamp
197888.000,
197888.100,
197888.200,
197888.300,
197888.400,
...
我想从测试数据的每一行的refdata中找出合适的引用数据索引。对此,我使用“应用”方法

index = testdata.apply(lambda x: locate_refindex(x.timestamp, refdata, threshold), axis=1) 
在函数locate_refindex中,最关键的算法是以下语句:

def locate_refindex(timestamp, refdata, threshold):
    ...
    slice_data = refdata[abs(refdata['timestamp'] - timestamp) <= threshold]
    ...
def locate\u refindex(时间戳、refdata、阈值):
...

slice_data=refdata[abs(refdata['timestamp']-timestamp)您能展示您的数据帧的示例和您期望的内容吗?根据我的经验,df中的行的
。iterrows()
是迭代整个数据帧的最快方法。但您应该测试它。另请参见此处: