我已经多次遇到这个概念,但不知道它的名称,因此无法通过谷歌搜索来了解更多信息。基本上,当查看其他人编写的函数甚至简单命令时,我经常会看到类似的内容:
apply(dataset, 1:2, function(x) 10 * x)
在这种情况下,我能够以某种方式弄清楚这个“假函数”函数(x)只会将数据集的每个元素乘以 10。这似乎是一个有用的功能,但我仍然不确定何时或如何使用它。它真的是一个函数吗?或者它只在 apply 函数系列中工作?这个东西有名字吗?
这些被称为“匿名函数”,是的,它们是真正的函数对象,只是在使用之前没有被分配给任何符号。
这是来自R语言文档:
通常,函数会分配给符号,但其实并不需要如此。调用函数的返回值是一个函数。如果没有给出名称,则称为匿名函数。匿名函数最常用作其他函数(例如 apply 系列或outer)的参数。
尽管它们最常用于*apply()
函数,它们不需要,例如在这里可以看到
(function(x,y){x*y + x/y})(2,5)
# [1] 10.4
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)