multi-sheet-reading-and-analysis
用于读取多工作表Excel文件,动态评估数据量以启用Parquet大文件优化,并执行正则清洗、分类汇总、线性拟合及生成带格式的图表与结果文件。
npx skills add OpenSenseNova/SenseNova-Skills --skill multi-sheet-reading --agent claude-code
Same command for any agent — swap --agent for codex, cursor, copilot.
Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.
Step1 统计多工作表总行数,并根据数据量级(如≥1万行)动态启用Parquet格式转换以优化大文件读取性能。 ```python import pandas as pd import os from openpyxl import load_workbook file_path = "your_excel_file.xlsx" xls = pd.ExcelFile(file_path) sheet_names = xls.sheet_names # 统计所有sheet的数据行数 total_rows = 0 for sheet in sheet_names: wb = load_workbook(file_path, read_only=True, data_only=True) ws = wb[sheet] max_row = ws.max_row data_rows = max_row - 1 if max_row > 0 else 0 total_rows += data_rows wb.close() print(f"总数据行数: {total_rows}") # 大文件优化:转换为Parquet格式读取 if total_rows >= 10000: df = pd.read_excel(file_path, sheet_name=sheet_names[0]) parquet_path = '/tmp/temp_data.parquet' df.to_parquet(parquet_path, engine='pyarrow') df = pd.read_parquet(parquet_path) else: df = pd.read_excel(file_path, sheet_name=sheet_names[0]) ``` Step2 使用正则表达式对指定文本列进行数据清洗(例如仅保留中文字符)。 ```python import re def clean_chinese_text(text): if pd.isna(text): return text s = str(text) # 提取所有中文字符 chinese_chars = re.findall(r'[一-鿿]', s) cleaned = ''.join(chinese_chars) return cleaned if cleaned != '' else '' target_col = '目标清洗列' # 替换为实际列名 if target_col in df.columns: df[target_col] = df[target_col].apply(clean_chinese_text) ``` Step3 提取关键数据进行多维度分析(分类汇总求极值或双变量线性拟合)
What does the multi-sheet-reading-and-analysis skill do?
用于读取多工作表Excel文件,动态评估数据量以启用Parquet大文件优化,并执行正则清洗、分类汇总、线性拟合及生成带格式的图表与结果文件。
How do I install it?
Run `npx skills add OpenSenseNova/SenseNova-Skills --skill multi-sheet-reading --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.
Where does this skill come from?
From OpenSenseNova/SenseNova-Skills, a repository with 4,855 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.
Is a popular skill a good skill?
Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.
