Python 3.x Python:在Pandas中按行计算

Python 3.x Python:在Pandas中按行计算,python-3.x,pandas,Python 3.x,Pandas,我试图从excel(.xls)文件中提取数据,我决定使用Pandas作为库,因为它在我的公司计算机上是允许的 我遇到的大多数描述熊猫的信息都是针对使用Jupyter或Anaconda生态系统的,我很难理解如何将其转换为传统的python脚本 这是我正在测试的一个表的示例: Date a b c 1 1-Jan-19 100 200 300 2 1-Feb-19 101 201 301 3 1-Mar-19 102 202 302 4

我试图从excel(.xls)文件中提取数据,我决定使用Pandas作为库,因为它在我的公司计算机上是允许的

我遇到的大多数描述熊猫的信息都是针对使用Jupyter或Anaconda生态系统的,我很难理解如何将其转换为传统的python脚本

这是我正在测试的一个表的示例:

        Date    a   b   c
1   1-Jan-19    100 200 300
2   1-Feb-19    101 201 301
3   1-Mar-19    102 202 302
4   1-Apr-19    103 203 303
5   1-May-19    104 204 304
6   1-Jun-19    105 205 305
7   1-Jul-19    106 206 306
8   1-Jul-19    107 207 307
9   1-Aug-19    108 208 308
10  1-Sep-19    109 209 309
我的目标是获取最长日期(即今天)的行,并将该行中的所有信息作为字典或JSON进行评估,如

{ 
Date: 1-Sep-19,
a: 109,
b: 209,
c: 309 
}
(我不关心索引列)

我一直在努力评估最后一行。这就是我到目前为止所做的:

import pandas as pd

xls = pd.ExcelFile(r'C:\Path\Excel Pandas Connector Test.xls')
df = pd.read_excel(xls, r'Sheet1')

today = df['Date'].max()     # returns the max value in the date column

print(today)
我已经找到了最大日期,但是我需要做什么才能使用该日期从该表中获取最新数据呢

就这么做吧

df[df.Date == date.Date.max()].to_dict(orient='records')[0]
这只是选择数据帧中
Date
列中具有最大值的行,然后将结果转换为dict列表,每一行对应一个dict

根据您的问题,我假设您只有一个条目具有最新日期,因此您可以选择列表中的第一个条目。只需小心重复日期,因为这将选择数据框中出现的第一个日期


希望对你有所帮助

你的意思是:df[df.Date==df['Date'].max()]to_dict(orient='records')[0]谢谢我做了上面评论的更改,并将其放入一个变量中打印出来,你的建议正是我需要的,比我所采用的路径更简洁。
df.Date
df['Date']
是选择列的两种等效方法。确定。Date在我的windows安装中引发了异常。