gpt4 book ai didi

r - 对内部使用 grepl 的 vapply 函数感到困惑(datacamp 类(class)的一部分)

转载 作者:行者123 更新时间:2023-12-02 02:56:58 25 4
gpt4 key购买 nike

hits <- vapply(titles,
FUN = grepl,
FUN.VALUE = logical(length(pass_names)),
pass_names)

titles 是一个带有标题的向量,例如 "mr"pass_names 是一个名称列表。

2 个问题。

  1. 我不明白由此产生的矩阵匹配
  2. 我不明白为什么最后一行是 pass_names,也不明白我应该如何了解这 4 个参数。在 ?vapply 下,它指定了 x、FUNFUN.VALUE 但我无法弄清楚我应该如何弄清楚 pass_names 需要列在那里。

我在网上查了,找不到答案,所以我希望这对其他人也有帮助。预先感谢您的回答,是的,我是初学者。


额外信息:本题使用R中的titanic包,pass_names就是titanic$Nametitles就是paste (",", c("Mr\\.", "Master", "Don", "Rev", "Dr\\.", "Major", "Sir", "Col", "Capt", "Jonkheer"))

最佳答案

你有点困惑是对的。

您问题中的 vapply 代码块等同于:

hits <- vapply(titles,
FUN = function(x) grepl(x, pass_names),
FUN.VALUE = logical(length(pass_names)))

vapply 接受一个 ... 参数,该参数接受尽可能多的参数。如果未命名参数(请参阅@Roland 的注释),则将 ... 位置中的第 n 个参数传递给 FUN 的第 n+1 个参数(FUN 的第一个参数是 X titles 在这种情况下)。

生成的矩阵的行数与 titanic 中的行数相同,并且有 10 列,即 titles 的长度。如果第 i pass_names 匹配,则第 [i, j] 条目为 TRUE j - titles 中的第 j 个正则表达式,如果不是,则为 FALSE

关于r - 对内部使用 grepl 的 vapply 函数感到困惑(datacamp 类(class)的一部分),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48768642/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com