python - 如何使 pandas 的 read_excel 参数“nrows”动态化
问题描述
我有一个 excel 文件,其中包含来自两个区域的每周应用程序登录报告。它有间隔(03-13-2021 00:00 - 03-19-2021 22:00)等列,平均登录时间。
通常,此报告对于 AMR 区域有 167 行,对于 EME 区域有 167 行。这两个都放在同一张纸上。两个区域数据之间有 23 行的差距。
我正在使用它来提取数据
AMR_Data = pd.read_excel(element, skiprows=38, nrows=167)
EME_Data = pd.read_excel(element, skiprows=228, nrows=167)
有时由于维护活动,数据丢失。因此,这nrows=167
不是每次都恒定的。我如何定义 nrows 属性以根据数据进行自我调整。
解决方案
我可以在这里想到两种解决方案:
询问用户输入,说明每个部分中有多少行。这可能是最容易编码的,但需要用户交互。
读取 Excel 数据并检测行数。这有点困难。而且由于您是手动读取数据,因此您可能不应该使用
pandas.read_excel()
. 我在这里要记住的是,您一次阅读每一行,直到到达空白行。然后你知道下一组数据开始了。您可以openpyxl
在这里使用类似的库来提供帮助。
推荐阅读
- javascript - 获取对象中某个键的级别
- postgresql - 使用 to_jsonb(NEW) 并执行
- android - 为什么 onCreate 中的视图高度为零
- c# - 在自上而下的 2d 游戏中沿玩家 Y 轴的鼠标位置跟踪十字准线?
- angular - 是否可以在高图中显示范围
- sql-server - SQL Server 更新列名 XML 节点
- python - Python 3.x 中的日志记录错误:TypeError: a bytes-like object is required, not 'str'
- docker - CVAT 安装问题
- regex - Fluentd 匹配标签通配符模式匹配下面的模式呢?
- azure - 如何获取 Azure 应用服务审核日志(不使用应用洞察)