Как исправить в r: левая часть недопустимого назначения (do_set)
Сообщение об ошибке, с которым вы можете столкнуться при использовании R:
Error in 5 <- read.table("data.txt"): invalid (do_set) left-hand side to assignment
Эта ошибка возникает, когда вы пытаетесь создать в R переменную, начинающуюся с цифры.
По умолчанию R позволяет определять имена переменных, начинающиеся с символа или точки.
В следующем примере показано, как устранить эту ошибку на практике.
Как воспроизвести ошибку
Предположим, я пытаюсь использовать функцию read.table() для чтения файла в R:
#attempt to read text file into R
5 <- read. table (" data.txt ")
Error in 5 <- read.table("data.txt"):
invalid (do_set) left-hand side to assignment
Я получаю сообщение об ошибке, поскольку пытался создать имя переменной, начинающееся с цифры.
Как избежать ошибки
Чтобы избежать ошибки, мне нужно использовать имя переменной, начинающееся с символа или точки.
Например, я мог бы использовать следующее имя переменной, начинающееся с символа:
#read text file into R
data5 <- read. table (" data.txt ")
#view contents of text file
data5
V1 V2
1 1 4
2 3 4
3 2 5
4 7 9
5 9 1
6 6 3
7 4 4
Или я мог бы даже использовать следующее имя переменной, начинающееся с точки:
#read text file into R
.data5 <- read. table (" data.txt ")
#view contents of text file
.data5
V1 V2
1 1 4
2 3 4
3 2 5
4 7 9
5 9 1
6 6 3
7 4 4
Опять же, я не получаю сообщение об ошибке, потому что имя переменной не началось с символа.
Обратите внимание, что вы можете ввести следующую команду в R, чтобы прочитать полную документацию о том, как создавать синтаксически допустимые имена:
?make.names
Дополнительные ресурсы
В следующих руководствах объясняется, как исправить другие распространенные ошибки в R:
Как исправить в R: аргументы содержат разное количество строк
Как исправить в R: ошибка выбора неиспользуемых аргументов
Как восстановить в R: замена имеет нулевую длину