[英]Cannot filter dates at pandas dataframe
我有一個 .csv 文件,其中包含多個列,其中一個稱為Date
並且具有 2018 的日期值,如下所示:
此列的 .csv 格式為Date
。
我將在我的源代碼中執行以下操作:
import pandas as pd
# Load data
data_daily = pd.read_csv('Desktop/data_daily.csv', keep_default_na=True)
# Filter data_daily down to only October
data_daily = data_daily[(data_daily['Date'] > '01/10/2018') & (data_daily['Date'] < '31/10/2018')]
# Save as a new .csv file
data_daily.to_csv('Desktop/final.csv', index=False)
但是,最終的 .csv 文件包含所有日期,而不僅僅是我想要的日期。
我不知道這是否有區別,但請記住,有多條線路具有相同的日期。
我怎樣才能解決這個問題?
首先在read_csv
添加參數parse_dates
來解析列到日期時間:
data_daily = pd.read_csv('Desktop/data_daily.csv',
keep_default_na=True,
parse_dates=['Date'],
dayfirst=True)
然后使用您的解決方案或替代用between
用字符串轉換為Timestamp
:
s = pd.Timestamp('2018-10-01')
e = pd.Timestamp('2018-10-31')
data_daily = data_daily[data_daily['Date'].between(s, e, inclusive=False)]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.