gpt4 book ai didi

python - 在Python中有效比较两列中的每对日期

转载 作者:行者123 更新时间:2023-11-30 22:55:09 24 4
gpt4 key购买 nike

我有一个数据框,其中包含一列开始日期和一列结束日期。我想通过确保开始日期早于结束日期(即 start_date < end_date)来检查日期的完整性。我有超过 14,000 个观察结果需要运行。

我有以下形式的数据:

    Start       End
0 2008-10-01 2008-10-31
1 2006-07-01 2006-12-31
2 2000-05-01 2002-12-31
3 1971-08-01 1973-12-31
4 1969-01-01 1969-12-31

我添加了一个列来写入结果,尽管我只是想突出显示是否有不正确的列,以便我可以删除它们:

dates['Correct'] = " "

并开始使用以下内容检查每个日期对,其中我的数据框称为日期:

for index, row in dates.iterrows():
if dates.Start[index] < dates.End[index]:
dates.Correct[index] = "correct"
elif dates.Start[index] == dates.End[index]:
dates.Correct[index] = "same"
elif dates.Start[index] > dates.End[index]:
dates.Correct[index] = "incorrect"

这有效,只是需要非常非常长的时间(大约超过 15 分钟)。我需要更有效地运行代码 - 我是否做错了什么或可以改进?

最佳答案

为什么不直接以矢量化的方式来做:

is_correct = dates['Start'] < dates['End']
is_incorrect = dates['Start'] > dates['End']
is_same = ~is_correct & ~is_incorrect

关于python - 在Python中有效比较两列中的每对日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37498071/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com