【问题标题】:Comparing two Timestamps from a Dataframe比较数据框中的两个时间戳
【发布时间】:2021-01-22 11:44:39
【问题描述】:

我有一个 .csv 格式的大数据框,它会随着时间的推移而更新。

我获取此数据帧的最后 7 行并搜索起点和终点。为了确保我使用的起点早于这个缩短的数据帧中的终点,我想比较这两个时间戳。 问题是,我只能将它们作为一个系列对象,我无法通过<> 进行比较

有没有可能比较这两个值?

import pandas as pd
import datetime

df = pd.read_csv(r'\Dataframe.csv')
df_tail = df.tail(10)
Start = df_tail.loc[(df['node']=='ns=4;i=560') & (df['Value;']==3)]['Timestamp']
Stop = df_tail.loc[df['node']=='ns=2;s=DistanceAbs']['Timestamp']
Start_df = (Start.to_frame()).reset_index(drop=True)
Stop_df = (Stop.to_frame()).reset_index(drop=True)
Start = Start_df["Timestamp"]

if Start_df["Timestamp"] < Stop_df["Timestamp"]:
    print('yes')

缩短的数据框如下所示:

    Timestamp                   node                Value;
63  2020-12-16 12:03:07.831569  ns=4;i=560          1.0
64  2020-12-16 12:03:10.567988  ns=2;s=DistanceAbs  0.8871407871551859
65  2020-12-16 12:03:12.832312  ns=4;i=562          440.0
66  2020-12-16 12:03:13.831145  ns=4;i=560          2.0
67  2020-12-16 12:03:20.331216  ns=4;i=560          3.0
68  2020-12-16 12:03:27.330800  ns=4;i=560          0.0
69  2020-12-16 12:03:32.833464  ns=4;i=560          1.0

【问题讨论】:

    标签: python pandas dataframe timestamp


    【解决方案1】:

    可以通过item()方法获取Series的第一项的值:

    Start = df_tail.loc[(df['node']=='ns=4;i=560') & (df['Value;']==3)]['Timestamp'].item()
    Stop = df_tail.loc[df['node']=='ns=2;s=DistanceAbs']['Timestamp'].item()
    

    然后您可以检查您的状况:

    if Start < Stop:
        print('yes')
    

    【讨论】:

      猜你喜欢
      • 2012-02-04
      • 1970-01-01
      • 1970-01-01
      • 2015-01-02
      • 2019-02-27
      • 2017-07-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多