python - Pandas read_excel 返回 PendingDeprecationWarning
问题描述
我一直在使用该read_excel
函数将 Excel 文件作为 Pandas 数据框导入,到目前为止没有明显问题。但是,我刚刚意识到,在最近的一些更新之后,我收到了以下警告:
/usr/local/lib/python3.7/site-packages/xlrd/xlsx.py:266:PendingDeprecationWarning:此方法将在未来版本中删除。请改用“tree.iter()”或“list(tree.iter())”。
对于 self.tree.iter() 中的 elem if Element_has_iter else self.tree.getiterator(): /usr/local/lib/python3.7/site-packages/xlrd/xlsx.py:312: PendingDeprecationWarning: 这个方法将是在以后的版本中删除。请改用“tree.iter()”或“list(tree.iter())”。
对于 self.tree.iter() 中的 elem if Element_has_iter else self.tree.getiterator():
上网查了一下,好像xlrd
被openpyxl
. 现在我的问题是:
- 这个警告是什么意思,我该怎么办?
- 此时我的数据导入安全吗?我是否必须担心某些东西无法正常工作?
- 那些
tree.iter()
或list(tree.iter())
方法是什么?他们正在取代什么? - 是否有另一种方法可以将 Excel 文件作为 pandas 数据框导入而不会收到此警告?
- 我应该在某处报告错误或问题吗?在哪里?
我的环境是:
- macOS 莫哈韦 10.14.6
- Python 3.7.6
- 熊猫 1.0.0
- xlrd 1.2.0
解决方案
您的数据导入目前是“安全的”。要消除警告并使您的代码面向未来,请尝试:
pd.read_excel(filename, engine="openpyxl")
或将其放在脚本的开头:
import pandas as pd
pd.set_option("xlsx", "openpyxl")
推荐阅读
- reactjs - 将 JSON 文件链接到 google-map-react 以在地图上显示标记
- ruby - 当我想为Web系统构建沙箱以允许其他人注入代码时我应该知道什么概念
- javascript - Dispatch Action,React + Redux后无法使用地图功能
- php - 在 Woocommerce 中显示所选变体的产品属性术语
- hadoop - 无法在 Google Cloud Dataproc 上启动 Apache Flink 1.7
- angularjs - 添加自定义标题值
- angular6 - 如何使用反应式表单验证来验证 Angular 6 中的复选框
- r - 如何加快R循环
- javascript - OnClick = 方法模拟意味着运行 1 one = 0 found
- java - 将创建的资源目录标记为 Resource Root 或 Test 资源根有什么意义?