将几个参数传递给 lapply 的 FUN(以及其他 *apply)

2024-03-04

我有一个关于在使用时将多个参数传递给函数的问题lapply in R.

当我使用 lapply 的语法时lapply(input, myfun);- 这很容易理解,我可以这样定义 myfun :

myfun <- function(x) {
 # doing something here with x
}

lapply(input, myfun);

和元素input被传递为x论证myfun.

但是如果我需要传递更多参数怎么办myfunc?例如,它的定义如下:

myfun <- function(x, arg1) {
 # doing something here with x and arg1
}

我如何使用这个函数来传递两个input元素(如x论点)和其他一些论点?


如果您查找帮助页面,参数之一lapply是神秘的...。当我们查看帮助页面的参数部分时,我们发现以下行:

...: optional arguments to ‘FUN’.

所以你所要做的就是将你的其他论点包含在lapply作为参数调用,如下所示:

lapply(input, myfun, arg1=6)

and lapply,认识到arg1不是一个参数,它知道如何处理,会自动将其传递给myfun。所有其他的apply函数可以做同样的事情。

附录:您可以使用...当你也在编写自己的函数时。例如,假设您编写了一个调用的函数plot在某些时候,您希望能够通过函数调用更改绘图参数。您可以将每个参数作为参数包含在函数中,但这很烦人。相反,你可以使用...(作为您的函数和其中对绘图的调用的参数),并且将您的函数无法识别的任何参数自动传递给plot.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将几个参数传递给 lapply 的 FUN(以及其他 *apply) 的相关文章

  • magrittr 管道中的 WOE

    如何将下面的证据代码权重放入 magrittr 管道中 df gt 我尝试过的一切似乎都不起作用 df library Information library magrittr df a c aa bb cc aa aa aa bb cc
  • 如何测试字符串中的前三个字符是r中的字母还是数字?

    下面给出了我拥有的数据集的示例 请注意 总数据集中我有超过两列 ID X 1 MJF34 2 GA249D 3 DEW235R 4 4SDFR3 5 DAS3 我想测试 X 中的前三个字符是否是字母 如果是 那么我想替换该值以仅显示前三个字
  • 在另一列的字符串中搜索一列中的文本

    这里是 R 新手 一直在搜索此论坛 尝试找到一种在同一行数据的字符串中搜索文本的方法 我以前使用过 grepl 但无法让它向下查找列并对每一行应用检查 我觉得这是一个简单的解决方案 但我花了几个小时 但似乎无法得到它 基本上我有类似下面第
  • 直接来自数据的马尔可夫模型图(makovchain 或 deemod 包?)

    我想读取一堆因子数据并从中创建一个可以很好地可视化的转换矩阵 我发现了一个非常好的软件包 称为 heemod 它与 diagram 一起工作得不错 对于我的第一个快速而肮脏的方法 我运行了一段 Python 代码来获取矩阵 然后使用这个 R
  • 如何计算满足条件的行数

    假设我有以下数据框 Data1 X1 X2 1 15 1 2 3 1 3 7 0 4 11 1 5 1 0 6 9 0 7 18 0 8 6 1 9 3 1 我想知道如何找到观察的总数X1大于 9 并且X2等于1 我想我需要使用sum 但我
  • knn-相同的k,不同的结果

    我有一个矩阵ZZ 我跑完之后prcomp并选择了我收到的前 5 台电脑data new P prcomp zz data new P x 1 5 然后我分成训练集和测试集 pca train data new 1 121 pca test
  • 根据R中的特定行值将数据帧拆分为多个数据帧

    我需要根据数据帧中重复出现的标题行将数据帧拆分为 17 872 个数据帧 我需要将新创建的数据框存储在列表中 我的数据框看起来像 0 1 2 32 Alert Type Response 33 w1 x1 y1
  • 将儒略日期转换为 PosixCt 日期

    我发现自己在解决这个问题 我需要将 R 中的儒略日期转换为正常日期 YYYY MM DD 我知道我可以指定as Date julian date origin 但我不知道应该提供哪个来源 我的朱利安日期类似于 2458010 2458011
  • 在 r 中使用 SSasymp

    我想我不知道如何在 r 中使用 SSasymp 函数 我想为我的项目创建一个渐近函数 我试过这个 c lt seq 0 200 0 5 d lt SSasymp c 500 0 log 50 plot c d type l log 50 应
  • R 比较所有列对的每个值[重复]

    这个问题在这里已经有答案了 我有一个 18x18 的数据框 我想将所有可能的列对相互比较 以便对于每对两列 18 行中的值相互比较 由于我的数据太大 无法放在这里 我写了一个小例子来说明到目前为止我所想到的 gt a lt c 1 18 g
  • 将从数据透视表包生成的数据透视表转换为数据帧

    我正在尝试制作一个数据透视表pivottabler包裹 我想将数据透视表对象转换为数据框 以便我可以将其转换为数据表 带有 DT 并在 Shiny 应用程序中渲染它 以便可以下载 library pivottabler pt qpvt mt
  • R data.table:在当前测量之前对出现次数进行计数

    我有一组在几天内进行的测量结果 测量次数通常为 4 任何测量中可以捕获的数字范围为 1 5 在现实生活中 给定测试集 范围可能高达 100 或低至 20 我想每天计算每个值在当天之前发生的次数 让我用一些示例数据来解释 test data
  • rle 命令帮助

    我在使用 rle 命令时遇到了一些麻烦 该命令旨在找到参与者连续达到 8 个连续参与者的点 例如 如果 x lt c 0 1 0 1 1 1 1 1 1 1 1 1 我想返回值 11 感谢 DWin 我一直在使用这段代码 which rle
  • R - 对矩阵的每行/列应用具有不同参数值的函数

    我试图将函数应用于矩阵的每一行或每一列 但我需要为每一行传递不同的参数值 我以为我熟悉 lapply mapply 等 但可能还不够 举个简单的例子 gt a lt matrix 1 100 ncol 10 gt a 1 2 3 4 5 6
  • 使用 R 中“rpart”包中的生存树来预测新的观察结果

    我正在尝试使用 R 中的 rpart 包来构建生存树 并且我希望使用这棵树来对其他观察结果进行预测 我知道有很多涉及 rpart 和预测的问题 但是 我还没有找到任何解决 我认为 特定于将 rpart 与 Surv 对象一起使用的问题的方法
  • R tidyr regex:从字符列中提取有序数字

    假设我有一个像这样的数据框 df lt data frame x c This script outputs 10 visualizations This script outputs 1 visualization This script
  • 使用 geom_abline() 和 ggplot

    我是初学者ggplot2 距离我开始试验才过去 4 天 所以 如果这个问题听起来太基本了 我深表歉意 我很感激任何指导 我已经在这个问题上苦苦挣扎了大约一个小时 我正在尝试使用geom abline 如下 p lt ggplot mpg a
  • R:如何在不耗尽内存的情况下重新绑定两个巨大的数据帧

    我有两个数据框df1 and df2每个都有大约 1000 万行和 4 列 我使用 RODBC sqlQuery 将它们读入 R 没有任何问题 但是当我尝试rbind他们 我收到了最可怕的 R 错误消息 cannot allocate me
  • 在r中的数据框中循环线性回归输出

    我有一个下面的数据集 我想在其中对每个国家和州进行线性回归 然后绑定数据集中的预测值 添加另外三列后的最终数据框 我已经对一个国家和一个地区进行了此操作 但想对每个国家和地区进行此操作 并将预测值 上限值和下限值放回到cbind的数据集中
  • R 中的多面点阵图,例如线框:如何删除条带并添加 1 行字幕

    我使用这种功能 来自iris数据集 model test lt lm Sepal Length Petal Length Sepal Width Petal Width Species 2 data iris gg lt expand gr

随机推荐