只想将特定范围的数据从 excel 电子表格(.xlsm 格式,因为它有宏)导入 pandas 数据框。是这样做的:
data = pd.read_excel(filepath, header=0, skiprows=4, nrows= 20, parse_cols = "A:D")
但似乎 nrows 只适用于 read_csv() ? read_excel() 的等价物是什么?
原文由 Gabriel 发布,翻译遵循 CC BY-SA 4.0 许可协议
只想将特定范围的数据从 excel 电子表格(.xlsm 格式,因为它有宏)导入 pandas 数据框。是这样做的:
data = pd.read_excel(filepath, header=0, skiprows=4, nrows= 20, parse_cols = "A:D")
但似乎 nrows 只适用于 read_csv() ? read_excel() 的等价物是什么?
原文由 Gabriel 发布,翻译遵循 CC BY-SA 4.0 许可协议
如 文档中所述,从 pandas 版本 0.23 开始,这现在是一个内置选项,并且功能几乎与 OP 所述完全相同。
代码
data = pd.read_excel(filepath, header=0, skiprows=4, nrows= 20, use_cols = "A:D")
现在会读取excel文件,从第一张sheet取数据(默认),跳过4行数据, 然后 取第一行(即sheet的第五行)作为表头,将接下来的20行数据读入数据框(第 6-25 行),并且只使用 A:D 列。请注意,use_cols 现在是最后一个选项,因为 parse_cols 已被弃用。
原文由 NathanielDavidChu 发布,翻译遵循 CC BY-SA 4.0 许可协议
2 回答5.2k 阅读✓ 已解决
2 回答1.1k 阅读✓ 已解决
4 回答1.4k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
2 回答873 阅读✓ 已解决
1 回答1.8k 阅读✓ 已解决
如果您知道 Excel 工作表中的行数,则可以使用 _skipfooter 参数读取文件的前 n - skip_footer 行,其中 n 是总行数。
http://pandas.pydata.org/pandas-docs/stable/generated/pandas.read_excel.html
用法:
假设您的 Excel 工作表有 100 行,此行将解析前 20 行。