问卷加权数据统计出表

SKILL研究检索

原名 survey-stats

研究检索 未标注权限 许可证不明确
安装这个技能

接收已清洗、已加权的问卷数据(含 weight 列),与用户逐步确认后生成带封面的人口学与题目交叉统计 Excel,可按权重加权,只做统计,不含清洗与加权。

一句话选型结论

按资料字段整理

问卷加权数据统计出表是研究检索类的 Agent Skill,安装方式未标注,权限级别未标注,许可证不明确,有可直接复制的安装命令。技能本质是给模型读的说明书,效果取决于模型与客户端;装完先用一个小任务验证,再放进正式流程。

分类研究检索 安装方式未标注 权限级别未标注权限 许可证许可证不明确
累计安装 未标注 本周 未标注
GitHub 星标 未标注 仓库 未标注
下载量 未标注 技能市场下载数
权限级别 未标注权限 安装前请确认风险范围
许可证 许可证不明确 未说明

安装

未标注
在支持 Skills 的客户端里执行,装完问一句「你有哪些技能」验证
skillhub install user_06e2860a/survey-stats
  1. 1
    确认客户端支持

    确认你的客户端支持 Skills(Claude、Codex、Cursor 等),并升级到较新的版本。

  2. 2
    拿到技能文件

    执行上面的命令安装;也可以把仓库里的 SKILL.md 手动放进客户端的 skills 目录。

  3. 3
    刷新技能列表

    重新打开客户端,或刷新技能列表,让新放进来的技能被加载。

  4. 4
    验证是否生效

    问一句「你有哪些技能」,确认列表里出现它,再拿一个小任务试跑。

技能档案

研究检索
字段来自技能仓库与公开索引,中文说明由本站标注
作者 / 维护方user_06e2860a仓库 未标注 · 版本 未标注
宿主客户端未标注技能可被这些客户端加载
安装方式未标注安装包 community
权限级别未标注权限安装前请确认风险范围
许可证未说明许可证不明确,商用前请自行确认条款
仓库可用性available技能仓库当前是否可访问
最近核验2026-11-06上游最后核验时间 · 数据更新 2026-11-06
正文体量13.0 KBSKILL.md 原文大小,越大说明说明书写得越细

能做什么

0 项能力
上游给出的能力概览与适用场景
问卷交叉统计按权重出统计表调研结果整理

典型使用场景

3 类
按分类整理的常见用法,具体以 SKILL.md 为准
查资料并整理出处

让模型按主题查资料,并把引用来源整理成清单。

网页与文献要点提炼

把长文、论文、网页压成能直接看的要点。

竞品与行业汇总

按关键词汇总竞品动态与行业信息。

选择建议

装之前先看这几条
按条目字段给出的判断,不替你决定用不用

值得选的地方

  • 有可直接复制的安装命令,不用自己翻文档找入口。

先想清楚的地方

  • 没有标注权限级别,实际能做什么要装好后确认。
  • 许可证不明确,商用或二次分发前先到仓库确认条款。
  • 没有做站内核验,内容以作者仓库为准。
  • 技能只是说明书,实际效果取决于模型与客户端,装完先用小任务试一遍。

更适合

  • 需要在研究检索场景里给模型补一套做法的人。
  • 愿意先读一遍 SKILL.md、确认它会让模型做什么的人。

不太适合

  • 对许可证要求很严、必须明确可商用的人。
  • 只想装完就自动变强、不打算看说明书的人。

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
技能权限级别安装方式累计安装宿主客户端安装命令
问卷加权数据统计出表当前 未标注权限 未标注 未标注 未标注 有
寻找技能 浏览器控制 GitHub 仓库 3120.0 万 Codex、Claude、Cursor 有
自我改进 Agent 接触敏感数据 ClawHub 市场 1646.4 万 OpenClaw 有
灵魂追踪 联网访问 GitHub 仓库 758.9 万 Codex、Claude、Cursor 有
自我完善 联网访问 ClawHub 市场 682.9 万 OpenClaw 有
微软代工厂 调用外部服务 GitHub 仓库 661.4 万 Codex、Claude、Cursor 有

SKILL.md 全文

13.0 KB
模型实际读到的说明书原文,来自技能仓库

问卷统计(交互式,只做统计)

分工:清洗(去重 / 人口学关联或完整性 / 专注度 / 10 条异常规则 / 自定义剔除)和加权(IPF)都在 survey-weight skill 里完成;本 skill 只拿它的产出做统计。
- 用户给的是原始问卷(未清洗、无 weight)→ 告诉用户先用 survey-weight 清洗加权;用户明确说"不加权、直接统计"时,可直接对该表统计(不做清洗,汇报里注明"未清洗")。
- 用户给的是 survey-weight 的 加权后数据.xlsx 或清洗目录下的 问卷数据表_merged.xlsx → 直接进入本流程。

每个阶段:先展示信息 → AskUserQuestion 确认 → 执行 → 汇报。不要一口气跑完。

⚠️ 交互铁律:选项必须自解释

用户界面只显示 question 和 label,description 看不到:
- label 必须写出具体内容,不能用"全部维度""默认"这类代称;放不下就写进 question。
- 涉及题号的选项写"题号+题干简称",如 43 税前月收入。
- "自定义/自己输入"类选项在 question 里写明输入格式和例子,并按用户在输入框写的原文执行。

运行环境

PY=/Users/susanlao/.workbuddy/binaries/python/envs/default/bin/python   # 已装 pandas/openpyxl/numpy
ST=~/.workbuddy/skills/survey-stats/scripts/stats_pipeline.py

每个子命令最后一行输出 @@RESULT@@ {json},只解析这一行:> log 2>&1; grep -a "@@RESULT@@" log。统计耗时 1~3 分钟,timeout 600000。

流程

阶段 0:准备

标准输入:survey-weight 的产物 <…>/加权输出_YYYYMMDD/加权/加权后数据.xlsx(单 sheet Sheet1;已清洗、带 weight 列和 性别/年龄/年龄分段/学历/职业/城市分级/操作系统/设备型号 等人口学列,题目列为 N.题干)。也接受同目录的 加权后数据.csv、清洗目录下的 问卷数据表_merged.xlsx,或任意含题号列的 xlsx/csv;文件名、sheet 名、是否有 weight 列都不限。人口学列也不是必需,缺失时按阶段 1 的「没有人口信息」分支走,照样出整体统计。
工作目录:输入在 加权输出_*/加权/ 下时,默认建在同一个 加权输出_* 里,与 清洗/、加权/ 并列:加权输出_YYYYMMDD/统计/(已存在则加 _HHMM);其它情况建在输入文件同级 统计输出_YYYYMMDD/。不改原文件。

$PY $ST prepare --dir <工作目录> --file <加权后数据.xlsx> [--sheet <sheet名>]

复制为 统计用数据.xlsx(统计的工作副本,内容同时写进统计表的「原始数据」页),并去掉非题目元数据列(语言/IP/UA/地理位置*/人口学是否匹配/OpenID是否重复/出生年份/学历_加权 等辅助列——否则会被当成题目统计)。返回 dropped_meta_cols、weight_cols。

阶段 1:体检

$PY $ST inspect --dir <工作目录>

用表格汇报:行数、权重列(weight_cols:范围、均值、合计、有效样本量 effective_n)、可用人口学维度(dimension_cols_present,逐个列出并附 dimension_col_map 里对应的实际列名)、年龄分段(age_groups,从数据的 年龄分段 列读出,与清洗/加权时一致)、题目清单(题号+题干)。
dimension_cols_present 与 stats 阶段用的是同一套识别逻辑,带题号的人口题也会算进来(如 43.您的性别 → 性别,见 dimension_cols_from_questions)。汇报时把「维度 → 实际列名」一并列出,请用户核对,避免把题干含「性别/年龄/学历/城市/职业」等关键词的普通题误当维度。
attention_col_present 为 true 只是说明专注度题还在表里(会作为普通题统计),不做剔除。

没有人口信息也能跑:has_demographics=false(dimension_cols_present 为空)不是错误,流程照常,输出仍有 封面 / 数据统计 / 原始数据 三页,只是「数据统计」页只有整体人群列、没有按人群拆分的交叉列,封面样本结构为空。加权(有 weight 列时)同样可用。汇报里明确写一句「该数据无人口学信息,只出整体统计,未做人群交叉」。

阶段 2:确认统计配置(一次 AskUserQuestion,最多 4 问;无人口维度时 3 问)

# question labels
1 数据带权重列「<col>」:<n> 人有值,范围 <min>~<max>,有效样本量约 <effective_n>/<n>。统计是否按这列加权?(仅当 weight_cols 非空时问;无权重列则不问,直接不加权) 用「<col>」出加权统计表 / 不加权(只给这两个)
2 调研名称?(印在封面,输出文件名为「<名称>结果_YYYYMMDD.xlsx」;可在下方输入框自写) <根据题目内容拟的名称> / 腾讯调研(默认名)
3(仅当 has_demographics=true 时问) 人口学交叉维度?当前数据可用:<逐个列出维度名与实际列名> <全部可用维度用顿号列出>(推荐) / <去掉操作系统、设备型号后的清单> / 自选(在下方写维度名)
4 是否把某些题目也作为交叉维度(每题与所有其他题交叉)?要指定请在下方输入框写题号,如:1,43 或 30-33 不需要 / <推荐题号+题干简称>,如「43 税前月收入」 / 自己输入题号(在下方输入框写)
  • has_demographics=false 时跳过第 3 问(最多只问 3 问),stats 不传 --dimensions;这一问不出现空选项,也不问用户「要不要补人口信息」。若用户仍想要分组对比,在第 4 问用题号做题目间交叉作为替代,并在汇报里说明「分组依据是题目而非人口学维度」。
  • 可选维度全集:职业, 收入, 性别, 年龄分组, 学历, 城市等级, 婚姻状况, 操作系统, 设备型号。只列 dimension_cols_present 里有的;缺收入/婚姻时说明原因,有收入题时建议用题号交叉。
  • 题号输入:取用户原文,先 $PY $ST check --dir <工作目录> --cross "<原文>" 校验(支持 1,43、1,43、1、43、1.43/1。43(按两个题号处理,并在正文告知用户这样理解)、30-33、30~33),用表格列出「题号 | 题干」;cross_missing 非空要告知。all = 全部题,很慢需提醒。
  • 多个权重列时,问题 1 的第一个选项按列名逐个列出。

阶段 3:执行统计

$PY $ST stats --dir <工作目录> --survey-name "<名称>" [--dimensions "职业,性别,年龄分组,学历,城市等级"] \
  [--cross 1,43] [--weight --weight-col weight]
  • 加权:stats 默认把权重等比缩放到均值 1(weight_info.rescaled_to),加权总数 = 样本数,占比不变;--no-weight-rescale 按原值。缺失或 ≤0 的权重按 0 计,missing_or_nonpositive > 0 时要告知人数。
  • 年龄分段默认用数据里的 年龄分段;用户要换分段时用 --age-groups "18岁以下,18-24岁,…"(数据里有数值 年龄 列才能重算)。

阶段 4:交付

present_files:只交付统计结果 Excel。统计用数据.xlsx 是工作副本(内容已在统计表「原始数据」页),留在目录里但不交付、不在回复里列出。
最终回复:输入文件、样本数、是否加权(列名、有效样本量;effective_n < n 的 20% 时一句话提醒加权结果波动大)、交叉维度与交叉题号、输出文件路径。统计表里加权时"回答人数"是加权数(可能带小数)。

附录:怎么向用户解释「有效样本量」(ESS)

用户常问"有效样本量约 X 人是什么意思"。ESS = (Σw)² / Σw²(Kish 公式),回答时按下面四层讲,先算好实际数字再开口:

  1. 一句话定义:加权后这份数据实际相当于多少个"一人一票"的样本。权重全相等时 ESS = n;权重越悬殊 ESS 越低。
  2. 根因:列出各加权维度每档的「人数占比 → 加权占比 → 放大倍数」,指出放大倍数最大的档位(通常就是 ESS 掉下去的原因,如"初中及以下 20 人要占 59.6%,放大 24 倍")。顺带给出权重集中度:权重最大的 1/5/20/100 人各占总权重百分之多少。
  3. 后果:deff = n / ESS,误差放大 sqrt(deff) 倍。给出同一估计值(取 50%)下不加权与加权的 95% 置信区间半宽对比(如 ±3.5pp → ±17.9pp)。
  4. 建议(ESS < n 的 20% 时必须给,不改流程,由用户决定):换更贴近样本的目标(网民口径 CNNIC 而非七普全人口);只保留放大倍数接近 1 的维度(如只按性别加权,ESS 通常回到 n 的 99% 以上);对权重做上限截断(trimming);或直接不加权、在报告里注明样本结构。

关键规则 / 坑

  • 统计核心 scripts/run_merged_data_cli.py(+ parallel_cross_analysis.py;加权时自动走单线程)。merge_tables.py / user_agent_parser.py 仅作为其依赖保留(自定义筛选规则解析),不要用来清洗。
  • 封面素材(横版_中英文_彩/白.png、tencent_logo.png 等)在 scripts/ 下,run_merged_data_cli.py 从脚本目录读取,不要移走。
  • 默认注册主库已于 2026-10-15 移到 survey-weight 的 assets/(清洗归 survey-weight)。本 skill 与 survey-weight 之间没有路径依赖,可以独立改名或移动。assets/标准版本-城市分级2025.xlsx 是遗留文件,统计不用。
  • 识别为维度的列名:性别 / 年龄分段(或年龄分组)/ 学历 / 职业 / 城市分级(或城市等级)/ 操作系统 / 设备型号 / 婚姻状况 / 月收入;带题号的人口题(如 43.您的性别)会被 find_dimension_columns 第四轮识别为维度,且该题本身不再单独出频数(表里留一行全 0)。inspect 自 2.3.0 起复用同一套识别逻辑,体检结果与统计阶段一致。
  • prepare 的 KEEP_META 白名单:不带题号且不在白名单的列会被直接丢弃(实测 年龄段 / 城市级别 / device 都被 drop)。看到 dropped_meta_cols 里有人口列时要主动告知用户,建议改成规范列名或加题号前缀后重跑,不要静默丢失。
  • 误判风险:题干含「性别/年龄/学历/城市/职业」等关键词的普通题目会被当维度,导致该题选项统计全 0。体检时列出 dimension_col_map(维度 → 实际列名)请用户核对;发现误判就让用户改题干列名后重跑。

版本备份

修改前备份到 ~/.workbuddy/skill-backups/survey-stats_&lt;YYYYMMDD_HHMMSS&gt;/。
(2026-10-15 由 survey-full-pipeline 改名为 survey-stats;改名前的备份仍叫 survey-full-pipeline_*,改名前最后一版为 survey-full-pipeline_20261015_180356_final。)
- _20261013_195436:v1.0(注册表关联模式)
- _20261014_100516:v1.1(明细表模式 + 自带 weight 三选)
- _20261014_193429:v1.2(自带 weight 两选:用 weight / 不加权)
- _20261014_194011_v1.3:v1.3(统计表扁平化,已回退不用)
- _20261015_171128:v2.0(输出目录固定为输入同级 统计输出_日期/)。v2.1 明确标准输入为 加权输出_/加权/加权后数据.xlsx,输出放 加权输出_/统计/。
- _20261015_165833:v1.2 最终版(含清洗+加权+统计全流程)。v2.0 起只做统计,清洗/加权移到 survey-weight;如需恢复全流程,从这份备份拷回 scripts/pipeline.py 等。
- survey-stats_20261103_144316:v2.2.1,升 2.3.0 前的完整备份。
- v2.3.0(2026-11-03):inspect 与 stats 阶段共用维度识别,新增 has_demographics、dimension_col_map、dimension_cols_from_questions;SKILL.md 增加「无人口信息」分支(has_demographics=false 时跳过第 3 问)。

已验证

2026-10-15 用 survey-weight 产出的 高校培训/加权输出_性别年龄学历/加权后数据.xlsx(900 行,weight 有效样本 60)跑通 prepare → inspect → check → stats(加权 + 第 1 题交叉)。
2026-10-15 用 高校培训/加权输出_20261015/加权/加权后数据.xlsx(804 行 × 122 列,Sheet1,weight 有效样本 30)跑通 prepare → inspect → stats --weight,无需改脚本。
2026-11-03 用 12 行临时样例验证三种输入:① 完全无人口列(dimension_cols_present: [],不加权/加权各一次,输出 3 页、只有整体人群列);② 带 43.您的性别 人口题(识别为 性别 维度,男/女交叉列正常);③ 人口列列名不规范(年龄段 / 城市级别 / device 被 prepare 丢弃)。改 2.3.0 后重跑 stats 回归通过。

常见问题

5 问
答案由本站依据条目字段整理
问卷加权数据统计出表怎么安装?

在支持 Skills 的客户端里执行:skillhub install user_06e2860a/survey-stats。安装方式为未标注。装完刷新技能列表或重开客户端。

问卷加权数据统计出表支持哪些客户端?

资料没有标注宿主客户端,但只要客户端支持 Skills(Claude、Codex、Cursor 等),一般都能加载。

问卷加权数据统计出表权限高吗,安全吗?

权限级别为未标注权限。安装前先看它会读取或写入哪些内容。

问卷加权数据统计出表收费吗?

本站不代收费用,也没有标注具体价格。是否收费取决于技能本身和所用的模型或客户端,正式使用前按作者说明确认。

问卷加权数据统计出表用什么许可证?

许可证标注为 未说明(许可证不明确)。商用或二次分发前请到仓库确认条款原文。

热门专题

按场景挑技能
全部专题 →

技能内容以作者仓库为准;分类、权限级别与许可证状态的中文说明为中文整理,最近核验 2026-11-06。