【问题标题】:Matrix from Excel to Python从 Excel 到 Python 的矩阵
【发布时间】:2018-11-17 01:32:30
【问题描述】:

我正在编写一个 Python 程序,该程序将从 Excel 工作表中导入方阵并对其进行一些 NumPy 工作。到目前为止,OpenPyXl 似乎是将数据从 XLSX 文件传输到 Python 环境的最佳方式,但尚不清楚将数据从单元格引用的元组*转换为实际值数组的最佳方式在 Excel 工作表中。
*通过调用sheet_ranges = wb['Sheet1']然后mat = sheet_ranges['A1:IQ251']创建

当然我可以检查元组的大小,写一个嵌套的for循环,检查元组中每个元组的每个元素,然后填充一个数组。

但是真的没有更好的办法吗?

【问题讨论】:

标签: python excel numpy openpyxl


【解决方案1】:

如上所述,理想的解决方案是使用 pandas 数据框。例如:

import pandas as pd

dataframe = pd.read_excel("name_of_my_excel_file.xlsx")

print(dataframe)

只需pip install pandas,然后运行上面的代码,只需将name_of_my_excel_file 替换为您的Excel 文件的完整路径。然后,您可以继续使用 Pandas 函数来深入分析您的数据。请参阅here 的文档!

【讨论】:

  • 谢谢!这看起来非常接近我想要的,除了一件事。它省略了一些行和列,我几乎可以肯定这是因为它们只包含零。有没有办法告诉它区分零和空单元格?
  • 你能给我发一个你的表的例子吗?
  • 我想将 this 作为一个数组复制到 Python 中,并且没有丢失的行或列。如果您查看链接的 Excel 文件,前两行和最左列全为零,并且在dataframe = pd.read_excel('SPM_FITS.xlsx')创建的数据框中丢失了
  • 更正:缺少的行和列不一定全为零。剩余的行和列全为零,但仍然缺少一些行和列。现在比我想象的要复杂。
猜你喜欢
  • 2018-05-11
  • 1970-01-01
  • 1970-01-01
  • 2010-11-08
  • 1970-01-01
  • 1970-01-01
  • 2012-07-31
  • 1970-01-01
  • 2017-11-12
相关资源
最近更新 更多