首页 > 解决方案 > 为什么“R help”对某些命令不起作用?

问题描述

我想使用“R 中的帮助”来查看有关某些命令的一些信息,例如“for”、“if”、“while”、“repeat”等。但是“R 帮助”中没有关于这些命令的信息. 我想知道为什么?

我对上述命令使用“R help”,如下所示:

?for
?while
?if
?repeat

标签: rfor-loopif-statementwhile-loop

解决方案


R 要求关键字以语法有效的形式使用。R 的工作方式,它期望 exampleif后面跟着一个括号中的表达式和一个 body。?if不是有效的 R 语法。

相反,?是一个在其后需要一个标识符的运算符。

为了使其有效,您应该在反引号中引用if标识符。这样,R 将表达式解析为?后跟标识符,而不是?后跟不完整的if表达式:

?`if`

反引号引用是 R 的说法:“嘿,反引号之间的那个东西是一个有效的标识符,即使它看起来完全不像一个”。您可以(但通常不应该!)完全使用它来使用不稳定的变量名:

`name with spaces` = 2
message(`name with spaces` + 5)
# 7

此功能在应用于外部导入数据的列名(有时包含空格或其他无效标识符字符)或定义运算符时更有用。


推荐阅读