mcpField
C
coding-r

coding-r

github.com/alphaonedev数据与数据库54 次安装
代码仓库

关于 coding-r

coding-r 是供 AI Agent 执行 R 数据任务的技能,涵盖数据处理、统计分析、可视化、报告、Shiny 应用和程序包开发。

主要功能

  1. 01使用 tidyverse 转换数据框
  2. 02制作 ggplot2 可视化图表
  3. 03拟合统计模型
  4. 04生成 RMarkdown 报告
  5. 05开发 Shiny 应用和 R 程序包

适用场景

  1. 01清理和转换表格数据集
  2. 02绘制分布图或变量关系图
  3. 03执行回归分析
  4. 04创建交互式仪表板或可复现报告

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/alphaonedev/openclaw-graph --skill coding-r

安装后在 Claude Code 中输入/coding-r确认已加载。

详细介绍

目的

此技能可让 AI 使用 tidyverse、ggplot2 等包执行 R 编程任务,用于数据处理、可视化和分析,重点涵盖数据框、统计建模、RMarkdown 报告、Shiny 应用和包开发。

适用场景

  • 使用数据框处理表格数据,例如清理和转换数据集时。
  • 使用 ggplot2 创建可视化图表,例如散点图或直方图时。
  • 在统计建模场景中使用,例如对数据集进行线性回归时。
  • 构建 Shiny 交互式应用,或通过 RMarkdown 生成报告时。
  • 为自定义数据科学工作流开发或扩展 R 包时。

主要能力

  • 使用 tidyverse 函数处理数据框(例如,使用 dplyr 进行筛选和变异)。
  • 使用 ggplot2 生成图表,包括图层、主题和分面。
  • 使用 base R 或 lm() 等包进行统计建模。
  • 创建 RMarkdown 文档以生成可复现报告,包括代码块和输出。
  • 使用 Shiny 开发交互式仪表板,并使用 devtools 开发包。
  • 集成到数据科学流水线中,例如从 CSV 读取数据或连接数据库。

使用模式

在 Agent 命令中始终在 R 代码前加上技能 ID "coding-r",例如:"Use coding-r to load and plot data"。在回复中通过代码块调用,并确保脚本自包含。对于多步骤任务,将其拆分为函数:先加载库,再处理数据,最后输出结果。复杂工作流使用 R 脚本(.R 文件),并通过 source("script.R") 调用。如果需要环境变量(例如包中的 API 密钥),请在运行代码前使用 Sys.setenv(API_KEY = "$MY_API_KEY") 设置。

常用命令/API

  • 加载 tidyverse:library(tidyverse),然后使用 df <- read_csv("data.csv") %>% filter(column > 10)。
  • 创建 ggplot:library(ggplot2); ggplot(df, aes(x=var1, y=var2)) + geom_point() + theme_minimal()。
  • 统计建模:model <- lm(y ~ x, data=df); summary(model)。
  • RMarkdown 基础:在 .Rmd 文件中以 --- title: "Report" output: html_document --- 开始,然后添加 {r} print(summary(df)) 这样的代码块。
  • Shiny 应用框架:library(shiny); ui <- fluidPage(); server <- function(input, output) {}; shinyApp(ui, server)。
  • 包开发:使用 devtools::create("mypackage") 初始化,然后在 R/ 文件夹中添加函数。

集成说明

通过使用 rpy2 将 R 代码嵌入 Python(例如,import rpy2.robjects as robjects; robjects.r('library(tidyverse)')),或使用 reticulate 实现 Python-R 互通,将 R 代码集成到更大的工作流中。对于 Web 服务,可将 Shiny 应用部署到 Shiny Server 或 shinyapps.io,并使用 $SHINY_API_KEY 等环境变量配置身份验证。使用配置文件(例如 YAML)设置参数:创建 config.yml,内容为 api_key: $MY_API_KEY,然后在 R 中使用 yaml::yaml.load_file("config.yml") 读取。确保 R 版本兼容(例如,>=4.0),并在运行前通过 install.packages(c("tidyverse", "ggplot2")) 安装依赖项。

错误处理

使用 tryCatch() 编写稳健的代码:tryCatch({ result <- lm(y ~ x, data=df) }, error = function(e) print(paste("Error:", e)))。使用 if (!require(tidyverse)) install.packages("tidyverse") 检查是否缺少包。处理 NA 值等数据问题时,可在操作前使用 df <- df %>% drop_na()。对于 Shiny,可使用 shiny::runApp(launch.browser=TRUE) 调试,并通过 options(shiny.error = recover) 记录错误。始终验证输入,例如 if (is.null(df)) stop("Data frame is missing")。如果 API 调用失败(例如,在 httr 包中),请使用 httr::RETRY("GET", url, times=3) 重试。

具体使用示例

  1. 数据分析与绘图:如需分析 CSV 文件并创建散点图,请使用:library(tidyverse); library(ggplot2); df <- read_csv("data.csv"); ggplot(df, aes(x=age, y=income)) + geom_point() + labs(title="Age vs Income")。这会加载数据,并按需进行筛选,然后输出图表。

  2. 在 RMarkdown 中进行统计建模:如需生成回归报告,请创建一个 RMarkdown 文件:--- output: html_document --- # Analysis ````{r} library(tidyverse); model <- lm(sales ~ advertising, data=df); summary(model) ````。使用 rmarkdown::render("report.Rmd")` 进行渲染,以生成包含结果的 HTML 输出。

图谱关系

  • 相关:ID: coding-python(共享数据科学集群,可用于集成工作流)
  • 相关:ID: coding-julia(在统计建模和数据分析方面存在重叠)
  • 通过标签关联:"statistics" 与 data-analysis 等技能相关联,"coding" 集群则关联通用编程工具

评论

支持 Markdown