我知道R中的一些运算符和函数在使用帮助函数之前需要被反引用.然而,我不明白为什么?function(){}也有效.有人知道吗?

推荐答案

让我们看看?的代码中使用{flow}包会发生什么,它可以帮助您判断代码所采用的逻辑路径(按照完整的行):

flow::flow_run(?function(){}, out = "png")

enter image description here

我们看到,当表达式是call时,我们称其为utils:::.helpForCall

我们不能直接拨打?,我们再拨打flow::flow_debugonce

flow::flow_debugonce(utils:::.helpForCall, out = "png")
?function(){}

enter image description here

在这里我们看到,当输入是一个调用时,我们将函数名作为字符串调用utils:::.tryHelp.function(){}是打给function的电话


prize

@rawr想知道为什么?cars[1]不起作用,我还没有详细研究过,但我们一眼就能看出.helpForCall中的代码采用了不同的路径:

flow::flow_debugonce(utils:::.helpForCall, out = "png")
?mtcars[1]

enter image description here

R相关问答推荐

卸载安装了BRM的模型发出的警告

R等效于LABpascal(n,1)不同的列符号

如何根据条件计算时差(天)

在R中替换函数中的特定符号

在连续尺度上转置标签[瀑布图,R]

IMF IFS数据以R表示

使用整齐的计算(curl -curl )和杂音

计算满足R中条件的连续列

Select 季度月值

将向量元素重新排序为R中的第二个

从数据创建数字的命名列表.R中的框

我如何使用循环来编写冗余的Rmarkdown脚本?

`-`是否也用于数据帧,有时使用引用调用?

如何在刻面和翻转堆叠条形图中对齐geom_text()

如何用不同长度的向量填充列表?

在使用ggplot2的情况下,如何在使用coord_trans函数的同时,根据未转换的坐标比来定位geom_瓷砖?

合并多个数据帧,同时将它们的名称保留为列名?

将Geojson保存为R中的shapefile

打印的.txt文件,将值显示为&Quot;Num&Quot;而不是值

用LOOCV进行K近邻问题