将用户的数据分析需求转化为结构化的分析计划并与用户确认。用户提出 BI 业务分析、数据探索、统计建模等需要规划的分析任务时使用。简单数据查询、公式明确的定量计算等流程简单、无需规划的任务不使用。
日本語の概要は準備中です。原文の説明を表示しています。
Computes a numeric or categorical answer to a quantitative data-science question by cleaning and analyzing local data files (CSV, Excel, TSV, and scientific formats .npz/.fits/.h5) with pandas, numpy, and scipy. Use whenever a task ships its own dataset (in whatever local directory it provides) and asks you to derive a value via statistical, geospatial, temporal, ratio, percentage, growth-rate, correlation, signal-processing, orbital, or forecasting analysis. Spans domains including archeology (demographics, paleoclimate proxies, radiocarbon dating, historical conflicts); biomedical/bioinformatics (tumor histology, genes, proteins, peptides, genomic variants); environmental (water quality, bacterial/Enterococcus exceedance, rainfall correlations, environmental justice); legal/consumer (fraud, identity theft, consumer complaints by state/metro); wildfire (incidents, causes, suppression costs, acres burned, fatalities, geospatial intersections); and astronomy/heliophysics/space weather (satellite telemetry TLE/Swarm/SP3, indices OMNI/GOES, solar activity, atmospheric density, orbital mechanics, forecasting).
インストールする前に、エージェントに与えられる指示の中身を確認できます。
A single, domain-agnostic workflow for answering quantitative questions from local datasets. Data files may live in any directory the task provides (e.g., input/, data/, the current working directory, or an explicit path in the prompt); first identify that data directory, then apply the workflow to it. The steps below apply to any domain (archeology, biomedical, environmental, legal, wildfire, astronomy/heliophysics/space weather, and beyond) and to any file type (tabular CSV/Excel or scientific array/binary formats like .npz, .fits, .h5). Domain-specific gotchas are flagged inline and detailed in references/domain-notes.md.
| Principle | Why |
|---|---|
| Python for all arithmetic | Prevents LLM math errors |
| Read files directly in scripts | Never hardcode numbers from manual inspection—they drift and break |
| Consult the data dictionary first | Map every prompt term to exact columns/categories; never guess |
| Single consolidated script | For multi-step analysis, avoid many small .py files and inline python3 -c |
| Print intermediate results | Catches silent filtering/join errors before they reach the answer |
| Recompute derived metrics from raw | Never trust pre-calculated rates/percentages in source files |
| Round only at the final step | Intermediate rounding compounds error |
input/, data/, the current working directory, or an explicit path given in the prompt), then glob all files under it (e.g., <data_dir>/**/*) — data files, data dictionaries, metadata, format specs (.fmt, .text, README), helper scripts. Avoid overly restrictive filename filters that might exclude the correct data. Restrict data access to this directory.header=None) to locate the true header row, metadata/summary/footer rows, delimiters, timestamp formats, and encoding quirks (BOM → utf-8-sig).sheet_names via pandas.ExcelFile; prioritize README/Legend/Metadata sheets, then preview each data sheet..npz, .fits, .h5), print all keys and array shapes to identify the correct arrays before use.Run
scripts/explore_input.py [data_dir]first to profile every file (pass the data directory; defaults toinput/). Seereferences/data-ingestion-and-cleaning.mdfor encoding, header-detection, Excel, and scientific/binary-format patterns.
Write a single Python script. Apply these in the first execution to avoid retries:
numpy/csv for simple whitespace-delimited files and direct extraction; reserve pandas for tabular joins and richer processing. Avoid over-engineering (e.g., direct pairwise comparisons rather than full time-series propagation when they suffice).utf-8-sig (BOM), fall back to latin-1/cp1252; strip non-breaking spaces.pd.to_numeric(..., errors='coerce').float before int (int(float(x))) to handle decimal strings like "42.0".usecols, dtype, chunksize; Excel read_only=True).'-', 'NA', 'N/A', blanks, and sentinels (-999, -9999, and space-physics fills like 9.99E32, 999999.9, 99999.9, 9999, 999.9) to NaN before computing any statistic, correlation, or model—including them severely skews results.'<0.1', '>100') explicitly before numeric conversion (see domain notes)..str.strip().str.lower() for categorical filters; include na=False in .str.contains()/.str.match() to avoid errors on mixed-type columns.Caution: Do not normalize typos or split concatenated strings unless the task asks for it—preserve exact literal counts for raw-unique-entry queries. See
references/data-ingestion-and-cleaning.md.
len(inner) vs len(left)) and log unmatched keys to detect silent drops.See
references/analysis-patterns.md§ Joins andreferences/domain-notes.mdfor entity normalization (MSA/County suffixes) and biomedical linking.
'summer', 'preceding days', 'generally unsafe') into precise numeric/datetime bounds via the data dictionary.scipy.signal.find_peaks rather than manual thresholding; rank top-N extrema by magnitude (not raw data); cluster events within a tolerance window to avoid overcounting. See references/analysis-patterns.md § Signal Processing.astropy, sgp4/skyfield, pymap3d), normalize longitude conventions, and track units. See references/geospatial.md.references/analysis-patterns.md § Forecasting & Evaluation.references/domain-notes.md.See
references/analysis-patterns.mdfor tie-breaking, rate, time-series, signal-processing, forecasting, and statistical patterns.
Print intermediate results at every stage:
Save the final answer under the current artifact directory supplied by the QwenPaw Data runtime:
Direct chat: artifacts/<session_id>/answer.json
TaskGraph node: artifacts/<session_id>/<graph_id>/<node_id>/answer.json
{"answer": <value>}
session_id. Append graph_id/node_id only when the
runtime explicitly supplies an active TaskGraph node; never invent IDs.artifacts/ root.write_file tool (not shell echo/redirection) for proper JSON formatting.pip install pandas openpyxl numpy scipy statsmodels
Add shapely (and optionally geopandas) for geospatial tasks; beautifulsoup4 for HTML tables; h5py/astropy for .h5/.fits files; astropy, sgp4/skyfield, pymap3d for orbital mechanics and coordinate conversions. If a specialized package fails to install, fall back to core numpy/scipy. Rely solely on local files—no web access.
| Resource | When to use |
|---|---|
scripts/explore_input.py | Run at the start of every task to profile all files in the task's data directory (pass it as an argument; defaults to input/) |
references/data-ingestion-and-cleaning.md | Encoding, header detection, type coercion, sentinel fills, censored values, Excel/HTML/scientific-binary parsing, join-key mismatches |
references/analysis-patterns.md | Tie-breaking, joins, rate/ratio calculation, time-series, signal processing, forecasting, statistics, causal inference |
references/geospatial.md | Coordinate validation, distance calculations, GPKG → shapely fallback, orbital mechanics & coordinate systems |
references/domain-notes.md | Domain-specific knowledge (paleo/temporal scales, biomedical, environmental, legal, wildfire, astronomy/heliophysics/space weather) |
まだレビューはありません。使ってみた感想をお寄せください。
概要と使いどころ
将用户的数据分析需求转化为结构化的分析计划并与用户确认。用户提出 BI 业务分析、数据探索、统计建模等需要规划的分析任务时使用。简单数据查询、公式明确的定量计算等流程简单、无需规划的任务不使用。
日本語の概要は準備中です。原文の説明を表示しています。
通过量化历史数据的自然波动幅度,自适应计算判定阈值。当需要从数据本身确定阈值(如波动阈值、影响度阈值等)、而非使用固定值时调用。仅适用于日/周粒度阈值确定。
日本語の概要は準備中です。原文の説明を表示しています。
基于阈值检测时间序列中的显著异常波动点。当需要找出指标异常波动日期、识别数据异动时调用。
日本語の概要は準備中です。原文の説明を表示しています。
计算各维度(组)值对指标变动的贡献度,支持可加型量值指标和加权平均型/率值指标。当需要计算贡献度、解释指标"为什么涨/跌"时调用。
日本語の概要は準備中です。原文の説明を表示しています。
从运营周报、活动文档、对话输入或文档工具 API 中提取业务事件,与指标异常时间窗口对齐,生成有证据支撑的因果归因假设并排序。当已知指标存在异常波动、需要从外部文档证据中解释"为什么"时调用。
日本語の概要は準備中です。原文の説明を表示しています。
对用户、产品等业务对象做分群:用波士顿矩阵法做象限分群,或用分层聚类、K-means、DBSCAN 等聚类技术分群。当需要做客群/产品分群、象限策略、画像或密度型子结构发现时调用。触发条件:当对话中出现“分群”、“分类”、“聚类”、“不同类型”、“不同场景”等体现分群分析词语时触发。
日本語の概要は準備中です。原文の説明を表示しています。