需要过滤数据超过特定月份的数据行

时间:2019-06-01 20:20:01

标签: python pandas

需要查看日期列仅是4月的行。但是我的数据在YYYY-MM-DD

我该如何写条件以确保month = 4(四月)

2 个答案:

答案 0 :(得分:2)

假设字符串格式的日期存储在date_str列中,而df是Pandas数据框。

# Convert string date to datetime
df['date'] = pd.to_datetime(df['date_str'], format='%Y-%m-%d')

# Select rows for April
df.loc[df['date'].dt.month == 4]

答案 1 :(得分:2)

假设这是您的起点:

localhost/test/some_method

...您可以轻松做到:

df = pd.DataFrame({
    "x": np.random.rand(13),
    "date": pd.date_range("2019-03-01", "2019-05-31", freq="W")
})

#            x       date
# 0   0.493852 2019-03-03
# 1   0.335280 2019-03-10
# 2   0.892476 2019-03-17
# 3   0.612119 2019-03-24
# 4   0.446722 2019-03-31
# 5   0.236843 2019-04-07
# 6   0.413819 2019-04-14
# 7   0.228923 2019-04-21
# 8   0.401895 2019-04-28
# 9   0.183924 2019-05-05
# 10  0.457840 2019-05-12
# 11  0.490073 2019-05-19
# 12  0.224978 2019-05-26