SuperAPI AI 工具集

dynamic-large-file-parquet-analysis

数据与分析

查看项目

更新于 10-16 03:11

技能介绍

用途:面向超大体积Excel文件的快速读取与统计分析,属于Excel工作流的子技能,聚焦条件筛选、分类汇总与结果导出;读取/计数/Parquet优化由父工作流负责。

主要能力:动态读取数据,若已加载 sn-da-large-file-analysis 技能则将Excel转换为Parquet格式加速读取,否则按常规方式读取;对目标列做条件筛选(按包含特定值匹配),按分组列进行分类汇总,统计数量与占比并附加总计行;最后将汇总结果导出为Excel并输出下载链接。

使用方式(保留原命令与代码内容): Step1 动态读取: if 'da_large_file_analysis' in globals(): parquet_path = 'auto_converted_data.parquet' df = pd.read_parquet(parquet_path) print("已使用 Parquet 格式加速读取大文件。") else: df = pd.read_excel(file_path, sheet_name='Sheet1', header=0) print("文件较小,使用常规方式读取。")

Step2 条件筛选与分类汇总: target_col = '目标列名' group_col = '分组列名' target_value = 'TARGET_VALUE' df_filtered = df[df[target_col].astype(str).str.contains(target_value, na=False)].copy() result = df_filtered[group_col].value_counts() result_df = pd.DataFrame({group_col: result.index, '数量': result.values}) if not result_df.empty: result_df['占比'] = (result_df['数量'] / result_df['数量'].sum()).apply(lambda x: f"{x:.2%}") total_row = pd.DataFrame({group_col: ['总计'], '数量': [result_df['数量'].sum()], '占比': ['100.00%']}) result_df = pd.concat([result_df, total_row], ignore_index=True)

Step3 导出与下载链接: output_path = 'filtered_summary_output.xlsx' result_df.to_excel(output_path, index=False) print("数据处理与分类汇总完成。") print(f"下载链接: {output_path}")

适用场景:大体积Excel文件的读取提速、按指定目标列条件筛选后按分组列统计数量与占比、汇总结果导出分享。

限制:行数阈值、Parquet生成路径与列名示例需按实际数据替换;其余环境依赖与错误处理细节暂未提供。