MCP HubMCP Hub
Вернуться к навыкам

build-parameterized-report

pjt222
Обновлено 5 days ago
14 просмотров
17
2
17
Посмотреть на GitHub
Метаautomationdesign

О программе

Этот навык позволяет разработчикам создавать параметризованные отчеты в Quarto или R Markdown, которые можно рендерить с различными входными данными для генерации множества вариаций. Он охватывает определение параметров, программный рендеринг и пакетную генерацию для автоматизации повторяющихся задач по созданию отчетов. Используйте его, когда вам необходимо генерировать одинаковую структуру отчета для разных отделов, клиентов, временных периодов или подмножеств данных из единого шаблона.

Быстрая установка

Claude Code

Рекомендуется
Основной
npx skills add pjt222/agent-almanac -a claude-code
Команда плагинаАльтернативный
/plugin add https://github.com/pjt222/agent-almanac
Git клонированиеАльтернативный
git clone https://github.com/pjt222/agent-almanac.git ~/.claude/skills/build-parameterized-report

Скопируйте и вставьте эту команду в Claude Code для установки этого навыка

Документация

建參之報

建受參之報,以諸入自一範生諸變。

用時

  • 為異部、區、時段生同報
  • 自範建客特之報
  • 建篩至特子集之盤
  • 以異入自動化週期報

  • 必要:報範(Quarto 或 R Markdown)
  • 必要:參定(名、類、默)
  • 可選:批生之參值列
  • 可選:輸出報之目

第一步:於 YAML 定參

Quarto(report.qmd):

---
title: "Sales Report: `r params$region`"
params:
  region: "North America"
  year: 2025
  include_forecast: true
format:
  html:
    toc: true
---

R Markdown(report.Rmd):

---
title: "Sales Report"
params:
  region: "North America"
  year: 2025
  include_forecast: true
output: html_document
---

得: YAML 頭含 params: 塊,諸名參各有正類之默值。

敗則: 若渲失以「object 'params' not found」,確 params: 塊正縮於 YAML 頭。Quarto 中 params 必居 YAML 頂級,非嵌 format: 下。

第二步:於碼用參

```{r}
#| label: filter-data

data <- full_dataset |>
  filter(region == params$region, year == params$year)

nrow(data)
```

## Overview for `r params$region`

This report covers the `r params$region` region for `r params$year`.

```{r}
#| label: forecast
#| eval: !expr params$include_forecast

# This chunk only runs when include_forecast is TRUE
forecast_model <- forecast::auto.arima(data$sales)
forecast::autoplot(forecast_model)
```

得: 碼塊以 params$name 引參,條件塊用 #| eval: !expr params$flag(Quarto)。內聯 R 表如 `r params$region` 生動文。

敗則:params$name 返 NULL,驗參名於 YAML 與碼引全合(別大小)。察默值之類正。

第三步:以自訂參渲

單渲:

# Quarto
quarto::quarto_render(
  "report.qmd",
  execute_params = list(region = "Europe", year = 2025)
)

# R Markdown
rmarkdown::render(
  "report.Rmd",
  params = list(region = "Europe", year = 2025),
  output_file = "report-europe-2025.html"
)

得: 單報以自訂參值覆 YAML 默而成渲。輸出檔建於所指之路。

敗則: Quarto 敗者,察 quarto CLI 已裝且於 PATH。R Markdown 敗者,驗 rmarkdown 已裝。確 execute_params(Quarto)或 params(R Markdown)中參名全合 YAML 定。

第四步:批渲諸報

regions <- c("North America", "Europe", "Asia Pacific", "Latin America")
years <- c(2024, 2025)

# Generate all combinations
combinations <- expand.grid(region = regions, year = years, stringsAsFactors = FALSE)

# Render each
purrr::pwalk(combinations, function(region, year) {
  output_name <- sprintf("report-%s-%d.html",
    tolower(gsub(" ", "-", region)), year)

  quarto::quarto_render(
    "report.qmd",
    execute_params = list(region = region, year = year),
    output_file = output_name
  )
})

得: 每區年之合生一 HTML 檔。

敗則: 察 YAML 與碼間參名全合。確諸參值有效。

第五步:加參之驗

#| label: validate-params

stopifnot(
  "Region must be a valid region" = params$region %in% valid_regions,
  "Year must be numeric" = is.numeric(params$year),
  "Year must be reasonable" = params$year >= 2020 && params$year <= 2030
)

得: 驗碼塊於各渲之始行,若參逾範或類誤則以明錯止。

敗則:stopifnot() 之錯言不明,改為明 if (!cond) stop("message") 以清診。

第六步:組輸出

# Create output directory
output_dir <- file.path("reports", format(Sys.Date(), "%Y-%m"))
dir.create(output_dir, recursive = TRUE, showWarnings = FALSE)

# Render with output path
quarto::quarto_render(
  "report.qmd",
  execute_params = list(region = region),
  output_file = file.path(output_dir, paste0("report-", region, ".html"))
)

得: 輸出檔書於日戳之子目,含述名(如 reports/2025-06/report-europe.html)。

敗則:dir.create() 敗,察父目存而可書。Windows 上驗路不過 260 字。

  • 報以默參成渲
  • 報以諸自訂參集成渲
  • 參於處前已驗
  • 輸出檔以述名名之
  • 條件段依參正渲
  • 批生於諸合皆畢

  • 參名不合:YAML 名必全合碼中 params$name 之引
  • 型強轉:YAML 或解 year: 2025 為整而碼望字。宜明
  • 條件估:Quarto 用 #| eval: !expr params$flag,非 eval = params$flag
  • 檔覆寫:無獨輸名,每渲覆前
  • 批模之記:久批或累記。考用 callr::r() 以隔

  • create-quarto-report - 基 Quarto 檔立
  • generate-statistical-tables - 適參之表
  • format-apa-report - 參之學報

GitHub репозиторий

pjt222/agent-almanac
Путь: i18n/wenyan/skills/build-parameterized-report
0
agentsagentskillsai-assisted-developmentclaude-codeskillsteams

Похожие навыки

content-collections

Мета

Этот навык предоставляет проверенную в продакшене настройку для Content Collections — TypeScript-ориентированного инструмента, который преобразует файлы Markdown/MDX в типобезопасные коллекции данных с валидацией Zod. Используйте его при создании блогов, сайтов документации или контентных приложений на Vite + React для обеспечения типобезопасности и автоматической проверки содержимого. Он охватывает всё: от настройки плагина Vite и компиляции MDX до оптимизации развертывания и валидации схем.

Просмотреть навык

polymarket

Мета

Этот навык позволяет разработчикам создавать приложения на платформе прогнозных рынков Polymarket, включая интеграцию с API для торговли и получения рыночных данных. Он также обеспечивает потоковую передачу данных в реальном времени через WebSocket для отслеживания текущих сделок и рыночной активности. Используйте его для реализации торговых стратегий или создания инструментов, обрабатывающих обновления рынка в реальном времени.

Просмотреть навык

creating-opencode-plugins

Мета

Этот навык помогает разработчикам создавать плагины OpenCode, которые подключаются к более чем 25 типам событий, таким как команды, файлы и операции LSP. Он предоставляет структуру плагина, спецификации API событий и шаблоны реализации для модулей на JavaScript/TypeScript. Используйте его, когда вам нужно перехватывать, отслеживать или расширять жизненный цикл ассистента OpenCode AI с помощью пользовательской событийно-ориентированной логики.

Просмотреть навык

sglang

Мета

SGLang — это высокопроизводительный фреймворк для обслуживания больших языковых моделей (LLM), специализирующийся на быстрой структурированной генерации JSON, regex и рабочих процессов агентов с использованием кэширования префиксов RadixAttention. Он обеспечивает значительно более высокую скорость вывода, особенно для задач с повторяющимися префиксами, что делает его идеальным для сложных структурированных результатов и многократных диалогов. Выбирайте SGLang вместо альтернатив, таких как vLLM, когда вам требуется ограниченное декодирование или вы создаете приложения с интенсивным совместным использованием префиксов.

Просмотреть навык