将函数中的变量传递给 R 中的其他函数变量

2024-01-11

我正在尝试传递一个变量Phyla(这也是感兴趣的 df 列的名称)到其他函数中。但是我收到错误:Error: Column税级is unknown。我明白了。在函数中声明您想要使用一次的列会更方便,因为这也会在脚本中重复多次。我尝试过使用OTU_melt_grouped[,1]因为这始终是在中使用的第一列dcast函数,但出现错误:Error: Must use a vector in[, not an object of class matrix.此外,它并没有解决我的解决方案group_by函数,因为我希望能够指定 Phyla、Class、Order 等...

我确信一定有一个简单的解决方案,但我不知道从哪里开始!

taxa_specific_columns_func <- function(data, tax_level = Phyla) {

  OTU_melt_grouped <- data %>% 
    group_by(tax_level, variable) %>% 
    summarise(value = sum(value))

  taxa_cols <- dcast(OTU_melt_grouped, variable ~ tax_level)
  rownames(taxa_cols) <- meta_data$site
  taxa_cols <- taxa_cols[-1]

  return(taxa_cols)
}


tax_test <- taxa_specific_columns_func(OTU_melt)

当我们传递一个不带引号的变量时,我们可以使用 curly-curly ({{..}}) 运算符group_by

library(dplyr)
library(tidyr)
library(tibble)
taxa_specific_columns_func <- function(data, tax_level = Phyla) {
 data %>% 
         group_by({{tax_level}}, variable) %>% 
         summarise(value = sum(value)) %>%
         pivot_wider(names_from = {{tax_level}}, values_from = value) %>%
         column_to_rownames("variable")

}

taxa_specific_columns_func(OTU_melt)
#         A          B         C          D          E
#a  0.01859254 0.42141238 -0.196961 -0.1859115 -0.2901680
#b -0.64700080         NA -0.161108         NA         NA
#c -0.03297331 0.05871052 -1.963341         NA  0.7608218

data

set.seed(48)
OTU_melt <- data.frame(Phyla = rep(LETTERS[1:5], each = 3), 
      variable = sample(letters[1:3], 15, replace = TRUE), value = rnorm(15))
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将函数中的变量传递给 R 中的其他函数变量 的相关文章

  • picker输入字体或背景颜色

    我在闪亮的仪表板中使用 pickerInput 这很好 除了一个问题 背景颜色和字体颜色太相似 使得过滤器选择难以阅读 有什么办法可以改变背景或字体颜色吗 如果可能的话 我想继续使用 pickerInput 但如果有一个带有 selectI
  • 如何按用户定义(例如非字母顺序)对数据框进行排序[重复]

    这个问题在这里已经有答案了 给定一个数据框dna gt dna chrom start chr2 39482 chr1 203918 chr1 198282 chrX 7839028 chr17 3874 以下代码重新排序dna by ch
  • R Shiny:如何将无功值从闪亮模块返回到主服务器功能?

    我有一个简单的玩具示例 它使用 add removeBtn 模块在 第一个 模块中添加和删除 UI 我需要跟踪单击 添加 删除 的次数 如果我不使用模块 这很容易 但我试图在嵌套模块的上下文中执行此操作 代码如下 但基本上 我似乎无法访问主
  • 更新 R6 对象实例中的方法定义

    如何更新 R6 类实例的方法定义 正如我所期望的 S3 使用当前的方法定义 对于 R5 参考类 我可以使用 myInstance myInstance copy 在 R6 中 我尝试了 myInstance myInstance clone
  • sapply - 保留列名称

    我试图总结数据集中许多不同列 变量 的平均值 标准差等 我已经编写了自己的汇总函数 以准确返回我需要和正在使用的内容sapply立即将此函数应用于所有变量 它工作正常 但是返回的数据帧没有列名 我似乎甚至无法使用列号引用重命名它们 也就是说
  • 闪亮的应用程序包:css 和所有 www/ 目录内容

    我正在尝试将 Shiny 应用程序转换为 R 包 但我在处理有关 www 目录以及 松散 文件的所有问题时遇到了问题 我闪亮的应用程序运行得很好 但是当我尝试 打包它 时 它不起作用 我闪亮的应用程序目录 my shiny app R ut
  • R - 重塑 - 熔化错误

    我正在尝试融化数据框 但出现了这个奇怪的错误 有什么想法吗 str zx7 data frame 519 obs of 5 variables calday new Date format 2011 01 03 2011 01 04 201
  • R,使用具有两种以上可能性的二项式分布

    我知道这可能是基本的 但我似乎有一个心理障碍 假设您想要计算在一个骰子上掷出 4 5 或 6 的概率 在 R 中 这很简单 sum 1 6 1 6 1 6 这给出了 1 2 这是正确答案 然而 我内心深处 可能应该保留的地方 认为我应该能够
  • 如何按定义的顺序将图像合并到一个文件中

    我有大约 100 张图像 png 我不想手动执行此操作 而是希望将它们按照定义的顺序 基于文件名 并排放置在一个 pdf 中 每行 12 个图像 有人有什么建议吗 我按照下面托马斯告诉我的方法尝试了 它把它们贴在旁边有一个黑边 我怎样才能去
  • 在 RMarkdown 输出到 PDF 时缩进而不添加项目符号点或编号

    之前有人问过如何在没有项目符号的情况下缩进文本 RMarkdown 中的点 但这是针对 HTML 输出的 在 RMarkdown 中缩进而不添加项目符号点或数字 https stackoverflow com questions 47087
  • 使用选定因子水平的值向 ggplot-barchart 添加水平线

    在这个情节中 df lt data frame factor as factor c rep A 3 rep B 3 Treatment c rep c A B C 2 values runif 6 0 1 ggplot df aes Tr
  • R:按组,测试一个变量的每个值是否存在于另一个变量中

    我有一个数据框架 结构如下 a lt c 1 1 1 2 2 2 3 3 3 3 4 4 b lt c 1 2 3 1 2 3 1 2 3 4 1 2 c lt c NA NA 2 NA 1 1 NA NA 1 1 NA NA df lt
  • 如何根据 ggplot2 中的汇总数据创建堆积条形图

    我正在尝试使用 ggplot 2 创建堆积条形图 我的宽格式数据如下所示 每个单元格中的数字是响应的频率 activity yes no dontknow Social events 27 3 3 Academic skills works
  • ggplot:如何限制条形图中的输出,以便仅显示最频繁出现的情况?

    我几个小时以来一直在寻找这个简单的东西 但没有结果 我有一个数据框 其中一列为变量 国家 地区 我想要两件事以下 绘制最常见的国家 地区 最常见的位于顶部 找到部分解决方案EDIT找到完整的解决方案 gt gt 重点问题是根据频率限制条形图
  • 需要在R中跳过不同数量的行

    我正在使用以下代码来处理我的数据 但最近我意识到使用skip 27 在数据开始之前跳过存储在我的文件中的信息 不是一个好的选择 因为每个文件中要跳过的行数不同我的目标是读取存储在多个文件夹中的各种txt文件 并非所有文件都有相同的列数 列的
  • 使用点阵个性化 R 上显示的 X 轴值

    我收集了大量包含日期 客户端及其 NFS 使用情况的数据 我正在使用lattice R包进行绘图 正如对超级用户的建议 https superuser com questions 523195 plot custom log data on
  • 将维基百科中的表格加载到 R 中

    我正在尝试从以下 URL 将最高法院法官表加载到 R 中 https en wikipedia org wiki List of Justices of the Supreme Court of the United States http
  • 在 Google Colab 上的 R 笔记本中安装 python 库

    我正在尝试在 Google Colab 上的 R 笔记本中安装 python 库 为此我使用 reticulate 包 library reticulate py install pandas 但我得到的结果是这个错误 Error coul
  • R 数据结构的运算效率

    我想知道是否有任何关于操作效率的文档R 特别是那些与数据操作相关的 例如 我认为向数据框添加列是有效的 因为我猜您只是向链接列表添加一个元素 我想添加行会更慢 因为向量保存在数组中C level你必须分配一个新的长度数组n 1并将所有元素复
  • 更改绘图区域背景颜色

    我想使用我们公司的颜色在 R 中制作一个图表 这意味着所有图表的背景应为浅蓝色 但绘图区域应为白色 我正在寻找答案 发现绘制一个矩形就可以完成这项工作 几乎 然而 绘图区域现在是白色的 并且图形不再可见 这可能吗 getSymbols SP

随机推荐

  • 准备部署时如何清理 node_modules 文件夹

    我该如何清洁节点模块准备部署代码时的文件夹 我正在使用制作一个应用程序节点 webkit并且在捆绑应用程序的最终版本时希望包含尽可能少的文件 因为解压缩过程需要一些时间 我看过npm dedupe并使用npm install product
  • Window.open 在 IE8 中不起作用?

    这是我当前使用的 JavaScript window open modules mod oneononechat chatwindow php key key color blue x winName x location 0 status
  • Spring security - 更改/登录默认路径

    我们想为我们的 Spring Boot 应用程序添加 spring 安全性 问题是我们已经 login路径已使用 所以目前我们无法加载重定向到的 Spring Security 默认登录页面 login path 我们想要保留 spring
  • X.509v3 ASN.1 到 C 数据结构

    我正在尝试创建代理证书的 X509 请求 ProxyCertInfo 扩展RFC3820 http www ietf org rfc rfc3820 txt 在 C OpenSSL 中 但我无法弄清楚应该如何定义 ProxyCertInfo
  • CDI SessionScoped bean 的非延迟实例化

    CDI新手问题 简单测试场景 JSF CDI SessionScoped beans 我需要一种优雅的方法来实例化一组已知的会话范围的 CDI bean 而无需在JSF页面或从其他 bean 调用它们的方法 作为一个测试用例 一个简单的日志
  • 我什么时候应该使用构建器设计模式? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我正在学习设计模式并找到了构建器设计模式 这种设计模式有什么好处以及什么时候应该使用它 我冲浪www dofactory com and www
  • getLastKnownLocation() 返回 null [关闭]

    Closed 这个问题需要调试细节 help minimal reproducible example 目前不接受答案 我在这里阅读了很多关于这个主题的问答 但我不得不说它们都不起作用 我的问题是 即使我启用了 GPS 我也无法获取位置 除
  • 应用程序引擎 python 教程错误

    我正在尝试在这里做 python 教程http code google com appengine docs python gettingstarted helloworld html http code google com appeng
  • 如何以编程方式选择网络浏览器控件中的文本? C#

    问题是这样的 我想让我的程序的用户能够在 webBrowser 控件中搜索给定的关键字 标准 Ctrl F 我可以毫无问题地在文档中找到关键字并使用跨度和replace 函数突出显示所有实例 我am无法获得我想要使用的 查找下一个 功能 当
  • 安装 Visual Studio 2015“安装程序被阻止”并出现 10 个错误

    谁可以帮助我Visual Studio 2015安装问题 预览 Windows 更新错误 这是设置阻止的屏幕截图 以下是我在此设置中遇到的错误 Condition VersionNT v6 3 AND WindowsBuildNumber
  • Groovy def l = [1, 2, 3] as BlockingQueue

    如果我写类似的东西def l 1 2 3 as Socket这显然是无稽之谈 我明白了 org codehaus groovy runtime typehandling GroovyCastException Cannot cast obj
  • 创建子类别选择框 onChange

    我正在创建一个类别系统 用户可以从数据库中选择类别 选择后会创建另一个包含该类别子类别的选择框 所以 我的问题是我怎样才能最好地做到这一点 顺便说一句 我正在使用 Laravel 框架 第一类很简单
  • dataGridView默认错误对话框句柄

    我试图隐藏默认的 datagridview 错误对话框 我将这个事件处理程序的代码放入其中 this dataGridView2 DataError new System Windows Forms DataGridViewDataErro
  • Rails 与 bin/rails 之间有什么区别?

    作为大一新生 我遇到了许多不清楚的细节 其中之一是bin 事物 我一直想知道以下之间有什么区别 rails generate and bin rails generate 当我在控制台中运行这些命令时 它们的行为似乎相同 还有rake an
  • 使用 Drools Workbench 和 KIE 服务器的 HelloWorld

    将 KIE Drools Workbench 6 2 0 Final 安装在 JBoss 7 Application Server 本地实例中 将 Kie Server 6 2 0 Final 安装在本地 Tomcat 7 实例中 严格使用
  • 测试 WCF Web 服务?

    我想为 WCF 服务创建一个测试类 我相信 嘲笑 是正确的术语 我不太确定我认为我必须这样做的方式是正确的方式 我已获得 WCF 服务的 URL 例如 http somesite com wcf RealService svc And ht
  • iOS:如何使用 Quartz 测量字符串的宽度和高度?

    在我提出问题之前 这是来自 Apple 的文档 如何使用 Quartz 确定字符串的宽度 如果文本测量对您的应用很重要 那么可以 使用 Quartz 2D 函数计算它们 但是 您可能首先 考虑使用 ATSUI 其优势在于文本布局和 测量 A
  • 是否可以阻止来自 TFS 中某个分支的 Pull 请求?

    我在 TFS 中有一个共享分支 即很多人推送它 我想阻止人们从该共享分支向任何其他分支打开拉取请求 我可以完全控制服务器端 例如 我可以添加服务器端挂钩或安装服务器端扩展 动机 Given 1 在 TFS 中 我们将工作项与提交相关联 但是
  • 调整大小期间不要重新绘制窗口

    我的 QML 应用程序 Qt 5 4 基于Window物品 用户可以调整应用程序的大小 当应用程序调整大小时 应用程序的内容也会分别调整大小 使用onWidthChanged and onHeightChanged 这一切都很好 但为了避免
  • 将函数中的变量传递给 R 中的其他函数变量

    我正在尝试传递一个变量Phyla 这也是感兴趣的 df 列的名称 到其他函数中 但是我收到错误 Error Column税级is unknown 我明白了 在函数中声明您想要使用一次的列会更方便 因为这也会在脚本中重复多次 我尝试过使用OT