pandas.read_excel 和 to_excel 仅使用最大的工作表或具有最多列的工作表

有没有一种方法可以读取所有 xlsx 文件的表格,然后全部放弃购买行数最多的文件?

理想情况下,我想找到字面上包含最多数据的工作表,以字节为单位,但行现在可以工作

我还希望能够通过加载例如文件的头部来做到这一点,这样加载时间就会更短,但我可以使用 .columns 和 len 来查找哪个工作表的列最多


萧十郎
浏览 114回答 1
1回答

守候你守候我

读取 Excel 文件的所有工作表并将其存储在dictionary:xls = pd.ExcelFile('excel_file_path.xls')sheet_to_df_map = {}for sheet_name in xls.sheet_names:    sheet_to_df_map[sheet_name] = xls.parse(sheet_name)现在,您可以遍历您的字典并创建另一个具有数据帧行数的字典,如下所示:row_count_dict = {}     for key,val in sheet_to_df_map.items():    row_count_dict[key] = val.shape[0]然后找到按值的row_count_dict最大值:df_with_max_rows = max(row_count_dict, key=row_count_dict.get)然后使用该键查找原始字典以获取具有 max_rows 的数据帧:df = sheet_to_df_map.get(df_with_max_rows)这将是您的最终数据框。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python