为了账号安全,请及时绑定邮箱和手机立即绑定

Python Pandas (Excel) 数据表代码问题

Python Pandas (Excel) 数据表代码问题

千万里不及你 2023-03-16 09:54:17
我已经将一个 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])


查看完整回答
反对 回复 2023-03-16
?
慕侠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


查看完整回答
反对 回复 2023-03-16
?
小怪兽爱吃肉

TA贡献1852条经验 获得超1个赞

您可以做的是以正确的格式将当前日期作为数据集,如下所示:


today=date.today()

compare=today.strftime("%d-%m-%y")

然后在数据帧上执行 .loc 命令


df.loc[df['Date'] == compare]


查看完整回答
反对 回复 2023-03-16
  • 3 回答
  • 0 关注
  • 77 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信