【发布时间】:2020-02-02 02:11:41
【问题描述】:
我有大型 pandas 数据框(超过 1000000 行),我需要以最快的方式获取两行(n 和 n+1)之间的工作日数(不包括周末),其中每行包含一个列日期。每次,我都需要将持续时间(结果)存储在同一数据帧的第 n 行中的一个名为“持续时间”的列中。结果以秒为单位。
我正在使用以下代码以我所知道的最快方式进行计算(欢迎任何更好的方式;-))。
tmp_df['duration'] =
tmp_df['origin_tick_generation_time_stamp'].shift(-1) - tmp_df[
'origin_tick_generation_time_stamp']
我想在我的代码中计算没有周末的持续时间。我读到 np.busday_count(date1, date2) 会做到这一点。但不知道如何在我的情况下使用它。 有办法吗?
非常感谢
【问题讨论】:
-
你有 100 万个约会对象?
-
我还有更多。这些不仅仅是日期。每行都有一个操作日期,我正在计算两次操作之间的持续时间。操作是银行交易的活动。我需要以工作日为单位的持续时间。