r-dplyr-wrangling
R dashboard engineering agent skills
Install / Use
npx skills add KinwiseNZ-DevOps/r-datadash --skill r-dplyr-wranglingInstalls into whichever agent you are using.
SKILL.md
Installable skill definition
Quality Score
Category
Content & MediaSupported Platforms
Our assessment of r-dplyr-wrangling
r-dplyr-wrangling scores 56/100 on our quality scale, 1141st of 1,186 Content & Media skills we index.
Its SKILL.md is 4.8 KB long, well organised into 9 sections with 1 code example: a solid amount of guidance for an agent.
It has no GitHub stars yet, so there is no community track record; judge it on its content.
Maintenance, license and trust
- We could not determine when the repository was last updated.
- No license is declared. By default that means all rights are reserved: you can read it, but reusing or redistributing it is not clearly permitted. Ask the author before building on it commercially.
- Its trust signals score 68/100, with 3 cautions from licensing, adoption, age or documentation. These come from repository metadata, not a code audit — read the skill file before letting an agent act on it.
r-dplyr-wrangling compared with similar skills
All 4 of these similar skills score higher than r-dplyr-wrangling; compare them before choosing.
| Skill | Score | Stars | Updated | Format |
|---|---|---|---|---|
| r-dplyr-wrangling (this skill)by KinwiseNZ-DevOps | 56 | 0 | — | SKILL.md |
| Agent-Reachby Panniantong | 100 | 102.6k | 1d ago | CLAUDE.md |
| headroomby headroomlabs-ai | 100 | 77.8k | 1d ago | CLAUDE.md |
| Scraplingby D4Vinci | 100 | 89.8k | 3d ago | MCP Server |
| crawl4aiby unclecode | 100 | 86.3k | 3d ago | MCP Server |
Frequently asked questions
- How do I install r-dplyr-wrangling?
- Run
npx skills add KinwiseNZ-DevOps/r-datadash --skill r-dplyr-wrangling. The install tabs above show the steps for each supported agent. - Which AI agents does r-dplyr-wrangling work with?
- It is written for Universal, as a SKILL.md file. Other agents that read the same format can often use it too.
- Is r-dplyr-wrangling safe to use?
- It declares no license and scores 68/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
- Is r-dplyr-wrangling still maintained?
- We could not determine when the repository was last updated.
Skill content
View source on GitHubname: r-dplyr-wrangling description: > Use when writing or fixing dplyr code, when a filter returns zero rows or a recoded column has unexpected NA, when a grouped summary has missing groups or stays grouped, or when explaining these verbs to a learner. Governs reshaping a data frame in R with dplyr before it feeds a dashboard. Do not use for reading files or APIs (r-data-prep), statistical tests (r-stats-foundations) or chart code (r-dashboard-design).
R dplyr wrangling
Stance: check the data before and after every verb (frozen); base R, dplyr or data.table is flexible and the project's style wins. Teach one verb at a time, run it, look at the output, then combine.
Hard rules
- Never filter with
== NAor== "NA". Mechanism: symptom is zero rows; cause is that a missing value is not equal to anything; fix isis.na(). Reason: the learner would conclude the data is empty. - Never leave a
case_when()without a default when unmatched rows matter. Mechanism: unmatched rows becomeNAand drop out of later counts. Fix:.default = "Other"or an explicit check. - Never drop rows silently. Mechanism:
na.omit()anddrop_na()change the totals a dashboard shows; fix is to count the rows before and after and say so. - Do not leave data grouped. Mechanism: a grouped table makes later
summarise(),mutate()andslice()run per group and gives odd totals. - Keep the original column until the new one is checked. Mechanism: overwriting loses the evidence needed to find a wrong rule.
- Use made-up or the learner's own data for examples, and label made-up data as such. Reason: real health records are personal.
Agent dispatch
Before handling a request, follow the agent selection in r-datadash, including when this skill is invoked directly. Give the selected agent this skill's instructions. If no agent is available, continue yourself.
Gate
| Situation | Action |
|---|---|
| Choose, drop, reorder or rename columns | select() or rename() |
| Keep or drop rows by a rule | filter(); decide what happens to NA first |
| New or recoded column | mutate(); case_when() for several rules, if_else() for two |
| Summary table or counts | group_by() then summarise(), or count(); then ungroup() |
| A value per row relative to its group | group_by() then mutate() or arrange(), then ungroup() |
| Reading files, APIs or dates | Hand to r-data-prep |
| Data holds personal information | Stop and ask what may be kept; summarise before showing |
Steps
- Detect. Look at the columns and types (
glimpse()), the first rows and the missing values. Name the question the table must answer. - Build one verb at a time. Run each step, print it, and check the row and column counts. Use verb-patterns.md for the pattern and the trap of each verb.
- Handle
NAon purpose. Missing values never match==or!=. Useis.na()and decide in words whether missing rows are kept, dropped or labelled. - Order the rules. In
case_when()the first matching rule wins, so write the most specific rule first and finish with an explicit.default. Check that no real value fell through toNA. - Finish grouped work. After
summarise()on two or more grouping variables, or after any groupedmutate(), callungroup()or set.groups = "drop". - Verify. Compare one total with the source (the group counts add up to the row count), print the final shape, and say which checks were not made.
Checklist
- [ ] Types and missing values looked at before any verb
- [ ] Each verb run and its output looked at
- [ ] NA handled with is.na(), not == NA
- [ ] case_when rules ordered, with an explicit default
- [ ] Group counts add up to the row count
- [ ] Data ungrouped before further use
- [ ] Column names are snake_case with no spaces
Example
Input: "My filter for adults returns nothing, and age_group is NA for some rows."
Output: the age column is text, or has NA values that < cannot compare. Convert it to numeric on purpose, add a rule or label for NA, put the rules in order from the most specific, and report how many rows ended up in each group so a missing group is visible.
References
- verb-patterns.md: each verb's pattern, trap and a small made-up example.
Package docs: dplyr and tidyr on CRAN. Check the installed version for any argument you are unsure about, for example .default in case_when() needs dplyr 1.1.0 or later.
Next
- Load and clean first: r-data-prep
- Test or model it: r-stats-foundations
- Show it: r-dashboard-design, r-shiny-dashboards, r-quarto-dashboards
Related Skills
Agent-Reach
102.6kGive your AI agent eyes to see the entire internet. Read & search Twitter, Reddit, YouTube, GitHub, Bilibili, XiaoHongShu — one CLI, zero API fees.
headroom
77.8kCompress tool outputs, logs, files, and RAG chunks before they reach the LLM. 20% fewer tokens for coding agents, 60-95% fewer tokens for JSON, same answers. Library, proxy, MCP server.
Scrapling
89.8k🕷️ A Web Scraping framework that handles everything from a single request to a full-scale crawl! Don't be shy, join here: https://discord.gg/EMgGbDceNQ and follow here for daily tips and tricks: https://x.com/Scrapling_dev
crawl4ai
86.3kOpen-source web crawler and scraper for LLMs and AI agents: any website into clean, LLM-ready Markdown. Run it yourself, or use Crawl4AI Cloud with one key. Join our Discord https://discord.gg/VuxzM8mtf
Trust signals
From repository metadata: license, adoption, age and documentation. Not a code audit — see the Safety scan above for what the skill file itself contains.
