Ответ 1
Пара обратных галочек - это способ ссылаться на имена или комбинации символов, которые в противном случае зарезервированы или запрещены. Зарезервированы такие слова, как if
являются частью языка, в то время как нелегальные включают не синтаксические комбинации, такие как cat
. Эти две категории, зарезервированные и незаконные, упоминаются в документации R как non-syntactic names
.
Таким образом,
'c a t' <- 1 # is valid R
а также
> '+' # is equivalent to typing in a syntactic function name
function (e1, e2) .Primitive("+")
Как упомянул комментатор, " ?Quotes
содержит некоторую информацию об обратном, в разделе " Names and Identifiers:
Идентификаторы состоят из последовательности букв, цифр, точки (
.
) И подчеркивания. Они не должны начинаться с цифры, ни подчеркивания, ни с точки, за которой следует цифра. Зарезервированные слова не являются действительными идентификаторами.Определение буквы зависит от текущей локали, но только цифры ASCII считаются цифрами.
Такие идентификаторы также известны как синтаксические имена и могут использоваться непосредственно в коде R. Почти всегда можно использовать другие имена, если они указаны в кавычках. Предпочтительной
deparse
('
), иdeparse
обычно использует ее, но при многих обстоятельствах можно использовать одинарные или двойные кавычки (так как символьная константа часто преобразуется в имя). Единственное место, где обратные пометки могут быть необходимы, - это разделение имен переменных в формулах: см.formula
Эту прозу немного сложно разобрать. Это означает, что для того, чтобы R анализировал токен как имя, оно должно быть 1) последовательностью цифр букв, точки и подчеркивания, что 2) не является зарезервированным словом в языке. В противном случае, чтобы быть проанализированным как имя, необходимо использовать обратные метки.
Также проверить ?Reserved
:
Зарезервированные слова вне кавычек всегда анализируются как ссылки на объекты, связанные с "описанием", и, следовательно, они не допускаются как синтаксические имена (см.
make.names
). Они допускаются как несинтаксические имена, например, внутри кавычек.
Кроме того, в Advanced R есть несколько примеров того, как обратные ссылки используются в выражениях, средах и функциях.