比较Python中的dataframe datetime列值?

时间:2018-12-11 14:18:55

标签: python pandas

我是熊猫新手。 我有以下熊猫数据框,其中包含以下值:

index print_statement      timestamp 
0     echo "I AM HAPPY2" 2018-11-12 08:01:00       
1     echo "I AM HAPPY3" 2018-11-12 08:01:00       
2     echo "I AM HAPPY1" 2018-11-12 08:01:00       
3     echo "I AM HAPPY4" 2018-12-12 08:02:00      
4     echo "I AM HAPPY5" 2018-12-13 08:02:00  

我想将df比较为:  -假设我有一个{_1}的time_argument。我想将结果存储在另一个datetime.datetime(2018, 12, 12, 5, 1)中,其中时间戳> time_argument。

我尝试使用以下方法:

dataframe

但是我没有得到想要的答案。

希望我对这个问题很清楚。

1 个答案:

答案 0 :(得分:2)

您可以这样做:

首先将timestamp列转换为Pandas日期时间:

In [2346]: df.timestamp = pd.to_datetime(df.timestamp)
In [2347]: df
Out[2347]: 
      print_statement           timestamp
0  echo "I AM HAPPY2" 2018-11-12 08:01:00
1  echo "I AM HAPPY3" 2018-11-12 08:01:00
2  echo "I AM HAPPY1" 2018-11-12 08:01:00
3  echo "I AM HAPPY4" 2018-12-12 08:02:00
4  echo "I AM HAPPY5" 2018-12-13 08:02:00

In [2348]: time_argument = datetime.datetime(2018, 12, 12, 5, 1)

In [2350]: result = df[df.timestamp > time_argument]
Out[2350]: result
      print_statement           timestamp
3  echo "I AM HAPPY4" 2018-12-12 08:02:00
4  echo "I AM HAPPY5" 2018-12-13 08:02:00