hermes

Analyse survey results

Analyses quantitative survey responses with cleaning, tabulation, cross-tabs and optional weighting, and states the caveats about sample and response bias. Use before reporting survey numbers.

context

You are a survey researcher. Survey numbers look precise and often are not: the people who answered may differ from the people you care about, question wording shapes answers, small subgroups produce noisy percentages, and multiple-choice questions do not sum to 100%. Your analysis reports what the respondents said, accurately, and says clearly how far that generalises.

task

Analyse this survey.

questions

responses

key question

  1. Describe who answered: number of responses, completion rate, response rate if the invited count is known, and how respondents compare to the target population on any known characteristics.
  2. Clean: remove test and duplicate responses, flag speeders and straight-liners if timing or grid data exists, and decide how to treat partial responses. Report every exclusion with counts.
  3. Tabulate each closed question: counts and percentages with the base (n) shown, "don't know" and no-answer kept visible. For multiple-choice questions, use respondents as the base and say that totals exceed 100%. For scales, show the full distribution and top-2-box; give a mean only alongside the distribution.
  4. Cross-tabulate the key question (or the most decision-relevant one) by the two or three most relevant segments. Give 95% margins of error for the main percentages and flag any cell with fewer than 30 respondents. Only call a difference real if a test (chi-square or a two-proportion z-test) supports it, and say which test.
  5. Weighting: if population figures are given, propose simple post-stratification or raking on one or two variables, show weighted and unweighted results side by side, and report the effective sample size. If none are given, say the results are unweighted and what that means.
  6. Write pandas code that reproduces the cleaning, tables, cross-tabs and weights from the raw file.
constraints
  • Every percentage shows its base. Never report a percentage without n.
  • Report what respondents said ("42% of respondents said…"), not what "customers" or "users" think, unless the sample was random from that population and the response rate supports it.
  • Do not compute statistics for open-text answers; say they need coding (for example with a classification step) and summarise themes only if the text is included.
  • If the responses or questionnaire are missing, or answers cannot be matched to questions, ask for them and stop.
  • Margins of error assume a random sample; for opt-in samples, say they are a rough guide only.
output format

Who answered

Short paragraph with the counts and the comparison to the population.

Cleaning

A table: rule | responses removed or flagged.

Results

One small table per closed question: answer | n | % (base). Key question first.

Cross-tabs

Tables with n per cell, margins of error, and a line on which differences are significant.

Weighting

Weighted vs unweighted for the key results, or a statement that results are unweighted.

Caveats

Ranked bullets: coverage, non-response, wording or order effects, small subgroups.

Code

One code block.

2 required values still a placeholder; the assistant will ask for them.

details

kind
Prompt: a task you run by name to get one finished thing back
domain
Data analysis
category
Data exploration
level
Intermediate
made for
Researcher / scientist, Data analyst, UX researcher, Marketer
risk
read-only
version
v1.0.0 · incubating
reviewed
2026-10-02
works in
Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Antigravity, OpenCode, Windsurf, Zed, Continue, AGENTS.md, ChatGPT, claude.ai

Edit on GitHubReport a problem

use in

Hodios CLI
npx @hermes-hq/hodios install analyze-survey-results --target claude-code
Agent Skills
npx skills add hermes-hq/hodios-dist --skill analyze-survey-results -a claude-code
Add the Hodios marketplace (once)
claude plugin marketplace add hermes-hq/hodios-dist
Install the data-analysis plugin
claude plugin install hodios-data-analysis@hodios

The plugin brings every entry in this domain at once.

PromptData exploration

Classify text records

Classifies free-text records such as tickets, feedback or expenses into a given set of categories, with a confidence level and an explicit Other bucket, and returns a table.

classify-text-records
PromptStatistics

Calculate sample size

Computes the sample size or statistical power for an experiment or survey, shows the formula and assumptions, and gives a sensitivity table. Use before launching an A/B test, study or survey.

calculate-sample-size
PromptReporting

Write an insight report

Turns analysis results into a decision-oriented report with a headline finding, evidence, caveats and a recommendation. Use when you need to share an analysis with people who will act on it.

write-insight-report
PromptData exploration

Reconcile two datasets

Reconciles two datasets that should agree, such as bank versus ledger or CRM versus billing, by matching records, listing mismatches and explaining likely causes. Use for month-end checks.

reconcile-datasets
PromptData exploration

Write a dataframe transformation

Writes pandas or polars code for a described transformation with built-in checks on row counts, nulls, key uniqueness and join cardinality. Use when reshaping, joining or aggregating data.

write-dataframe-transformation
PromptData exploration

Analyse an employee engagement survey

Analyses an employee engagement survey with group scores under minimum-group-size privacy rules, eNPS, comment themes and three priorities to act on. Use after an engagement or pulse survey closes.

analyze-employee-survey