删除日期时间是特定时间之间特定日期的行

时间:2018-08-06 13:51:02

标签: python python-3.x pandas datetime dataframe

我正在使用此数据集:

https://gist.github.com/JafferWilson/2c468679fa66c04c08a0ca624ca92d8f

我想要实现的是:

  1. 检查日期是星期一还是星期五
  2. 如果是这样,请从熊猫的数据框中删除星期一的前2小时值和星期五的最后2小时值

我尝试使用pandas数据框从CSV加载值:

import pandas as pd
df = pd.read_csv("EURM1.csv")

但是我不知道如何以我想要的方式对数据进行排序。我尝试使用startdateenddate,但是它们对我没有用。

请帮助我以所需的形式获取数据。

1 个答案:

答案 0 :(得分:3)

将列转换为日期时间后,就可以按照逻辑轻松对其执行条件操作:

df["date"] = pd.to_datetime(df["date"], format="%Y.%m.%d %H:%M:%S")

df = df.loc[~((df["date"].dt.weekday_name == "Monday") # Excludes Mondays before 2am
            & (df["date"].dt.hour < 2)) 

          & ~((df["date"].dt.weekday_name == "Friday") # Excludes Fridays after 10pm
            & (df["date"].dt.hour >= 22))]