问题描述
我正在使用 Python(3.6.0),xlrd(1.2.0)和 Pandas(0.25.3)解析一些 excel文件 >,我的最终目标是提取文档集合的信息(https://www.sepe.es/HomeSepe/que-es-el-sepe/estadisticas/datos-avance/datos.html,该抓取工具已经编码)作为有用的 DataFrame 以便进行分析。我正在虚拟环境中的Mac OS High Sierra中工作。
我尚无法解决的主要问题是如何以一种有用的方式提取信息,excel文件的结构各不相同,并且行和列为空。
例如: [![其中一份文件的清单] [1]] [1] [1]:https://i.stack.imgur.com/y3Msv.png
我的最后一次尝试是寻找数据组(对于所有文档,每张纸的每个单元格都使用sheet.cell_value(row,col)
),在上部单元格上带有字符串,而在其他单元格上则带有数值数据,但是我发现这不切实际。
还有其他软件包或方法可以轻松,快速地完成此工作吗? 我只要它可以自动执行该过程,就不介意使用另一种编程语言(R,C,C ++,Java,JavaScript)。
请在此处包括我正在处理的部分代码,准确地说,是从数组直接转换为无效的DataFrame。
import xlrd
import pandas as pd
ROUTE_IN = '../Tests/downloaded_files/'
NUMBER_OF_DOCUMENTS = 2 # if < 0 => take all documents
if __name__ == '__main__':
list_documents = os.listdir(ROUTE_IN)
list_documents = [ROUTE_IN + file for file in list_documents]
if NUMBER_OF_DOCUMENTS < 0:
sample = list_documents
else:
sample = list_documents[:NUMBER_OF_DOCUMENTS]
for excel_file_route in sample:
document = xlrd.open_workbook(excel_file_route)
# separate it in sheets
sheet_names = document.sheet_names()
for i in range(len(sheet_names)):
sheet = document.sheet_by_index(i)
number_rows = sheet.nrows
number_cols = sheet.ncols
# Read sheet
possible_@R_247_4045@ion = []
for row in range(number_rows):
data_column = []
for col in range(number_cols):
data_column.append(sheet.cell_value(row,col))
possible_@R_247_404[email protected](data_column)
print(pd.DataFrame(possible_@R_247_4045@ion))
print('\n ............. \n')
谢谢。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)