选择两个日期之间的Pandas数据框架行
Pandas是一个建立在NumPy库之上的开源库。它是一个Python包,提供各种数据结构和操作,用于处理数字数据和时间序列。它主要因导入和分析数据更容易而流行。Pandas速度快,对用户来说,它具有高性能和生产力。
这篇文章的重点是在两个日期之间获得选定的pandas数据框行。我们可以通过使用一个过滤器来实现。
日期最初可以用几种方式表示。
- string
- np.datetime64
- datetime.datetime
为了在pandas中操作日期,我们使用pd.to_datetime()函数在pandas中把不同的日期表示法转换成datetime64[ns]格式。
语法:
pandas.to_datetime(arg, errors='raising', dayfirst=False, yearfirst=False, utc=None, box=True, format=None, exact=True, unit=None, infer_datetime_format=False, origin='unix', cache=False)
参数:
- arg: 一个整数、字符串、浮点数、列表或dict对象,用于转换为Date时间对象。
- dayfirst: 布尔值,如果为真,则将日期放在首位。
- yearfirst: 布尔值,如果为真,将年份放在前面。
- utc:布尔值,如果为真,则返回UTC的时间。
- format:字符串输入,告诉日、月、年的位置。
步骤
- Import module
- 创建或加载数据
- Create dataframe
- 将日期列转换为datetime64[ns]数据类型
- 定义一个开始日期和结束日期。
- 使用一个过滤器来显示更新的数据框架并存储它。
- Display dataframe
例子:原始数据框架
import pandas as pd
data = {'Name': ['Tani', 'Saumya',
'Ganesh', 'Kirti'],
'Articles': [5, 3, 4, 3],
'Location': ['Kanpur', 'Kolkata',
'Kolkata', 'Bombay'],
'Dates': ['2020-08-04', '2020-08-07', '2020-08-08', '2020-06-08']}
# Create DataFrame
df = pd.DataFrame(data)
display(df)
输出:
例子:在两行之间选择数据框的行数
import pandas as pd
data = {'Name': ['Tani', 'Saumya',
'Ganesh', 'Kirti'],
'Articles': [5, 3, 4, 3],
'Location': ['Kanpur', 'Kolkata',
'Kolkata', 'Bombay'],
'Dates': ['2020-08-04', '2020-08-07', '2020-08-08', '2020-06-08']}
# Create DataFrame
df = pd.DataFrame(data)
start_date = '2020-08-05'
end_date = '2020-08-08'
mask = (df['Dates'] > start_date) & (df['Dates'] <= end_date)
df = df.loc[mask]
display(df)
输出: