我已经将一个 excel (.xlsx) 电子表格导入到我的 python 代码中(使用 Pandas)并想从中提取数据,电子表格包含以下内容;DATE: Lecture1: Lecture2:16/07/2020 09:30 11:0017/07/2020 09:45 11:3018/07/2020 09:45 11:0019/07/2020 10:00 14:3020/07/2020 09:30 14:45我如何创建代码的一部分,以便如果“now = date.today()”,则“打印”那天我的讲座行......我有以下内容;import pandas as pddata = pd.read_excel(r'/home/timetable1.xlsx')data["Date"] = pd.to_datetime(data["Date"]).dt.strftime("%d-%m-%Y")df = pd.DataFrame(data)print (df)这将打印出整个时间表,如下所示(请注意格式略有变化); Date Lecture1 Lecture20 16-07-2020 09:30:00 11:00:001 17-07-2020 09:45:00 11:30:002 18-07-2020 09:45:00 11:00:003 19-07-2020 10:00:00 14:30:004 20-07-2020 09:30:00 14:45:00因此,我不确定代码的哪一部分将用于确定“今天”日期并仅显示“今天”的讲座时间,例如可能是这样的;now = date.today()now.strftime("%d-%m-%y")if ["Date" == now]: print ('timetable1.xlsx' index_col=now)我是编码新手,所以不太擅长。上面的代码是错误的我知道我想不出一种显示信息的方法。所以我想要的输出; Date Lecture1 Lecture218-07-2020 09:45:00 11:00:00非常感谢您的意见。
3 回答
蝴蝶刀刀
TA贡献1801条经验 获得超8个赞
检查这个:
data['Date'] = pd.to_datetime(data['Date']).dt.strftime("%d-%m-%Y")
now = pd.to_datetime('today').strftime("%d-%m-%Y")
print(data[data['Date'] == now])
慕侠2389804
TA贡献1719条经验 获得超6个赞
干得好:
from datetime import date
df['DATE'] = pd.to_datetime(df.DATE, format='%d/%m/%Y')
print(df[df.DATE == pd.to_datetime(date.today())])
输出(对我来说是第 19 个)
DATE Lecture1 Lecture2
3 2020-07-19 10:00 14:30
小怪兽爱吃肉
TA贡献1852条经验 获得超1个赞
您可以做的是以正确的格式将当前日期作为数据集,如下所示:
today=date.today()
compare=today.strftime("%d-%m-%y")
然后在数据帧上执行 .loc 命令
df.loc[df['Date'] == compare]
添加回答
举报
0/150
提交
取消