擅长:python、mysql、java
<p>我认为最快最简单的方法是使用<a href="https://docs.scipy.org/doc/numpy/reference/generated/numpy.searchsorted.html" rel="nofollow noreferrer">^{<cd1>}</a>。如果没有大于<code>df.exchTstamp+delta</code>的元素,那么<code>searchsorted</code>将返回数组的长度,即一个索引超出了数据帧索引的界限。因此,我们首先需要为本例插入一个<code>nan</code>/<code>NaT</code>sentinel行,然后删除它:</p>
<pre><code>import numpy as np, pandas as pd, datetime as dt
df = pd.read_csv('stack.csv', index_col=0, parse_dates=[1])
delta = dt.timedelta(seconds=0.01)
res = np.searchsorted(df.exchTstamp, df.exchTstamp+delta)
# add sentinel
df.append(pd.Series(), ignore_index=True)
df["testTime"] = df.loc[res,'exchTstamp'].values
# remove sentinel
df = df.drop(df.index[-1])
df.to_csv('stack-out.csv')
</code></pre>