Как исправить ошибку R: непредвиденная строковая константа

Как исправить ошибку R: непредвиденная строковая константа

Одна распространенная ошибка, с которой вы можете столкнуться в R:

Error : unexpected string constant in...

Эта ошибка возникает, когда вы используете кавычки в неправильном месте в R.

В следующих трех примерах показано, когда эта ошибка может возникнуть в различных сценариях.

Пример 1: непредвиденная строковая константа при импорте файла

Предположим, мы пытаемся импортировать файл с разделителями-двоеточиями в качестве фрейма данных в R:

#attempt to import colon-delimited file
read.csv ("C:\\Users\\Bob\\data.csv", sep";")

Error : unexpected string constant in "read.csv("C:\\Users\\Bob\\data.csv", sep";""

Мы получаем ошибку, потому что забыли поставить знак равенства после аргумента sep .

Если мы добавим знак равенства, мы сможем устранить эту ошибку:

#import colon-delimited file
read.csv ("C:\\Users\\Bob\\data.csv", sep=";")

 team points
1 A 4
2 B 9
3 C 9
4 D 8
5 E 6

Пример 2. Неожиданная строковая константа при просмотре данных

Предположим, мы пытаемся просмотреть значения в векторе:

#create numeric vector of values
data <- c(4, 4, 5, 6, 8, 10, 13, 15, 19, 18)

#attempt to view values
data""

Error : unexpected string constant in "data"""

Мы получаем ошибку, потому что мы случайно включили кавычки после имени вектора.

Если мы просто удалим цитаты, мы сможем устранить эту ошибку:

#create numeric vector of values
data <- c(4, 4, 5, 6, 8, 10, 13, 15, 19, 18)

#view values
data

[1] 4 4 5 6 8 10 13 15 19 18

Пример 3: непредвиденная строковая константа при создании графиков

Предположим, мы пытаемся просмотреть значения в векторе:

#create numeric vector of values
data <- c(3, 3, 4, 5, 5, 7, 8, 12, 15, 16, 17, 19, 22, 25)

#attempt to create boxplot to visualize distribution of values
boxplot(data, col' steelblue') 

Error : unexpected string constant in "boxplot(data, col'steelblue'"

Мы получаем ошибку, потому что забыли поставить знак равенства после аргумента col .

Если мы просто добавим знак равенства, мы сможем устранить эту ошибку:

#create numeric vector of values
data <- c(3, 3, 4, 5, 5, 7, 8, 12, 15, 16, 17, 19, 22, 25)

#create boxplot to visualize distribution of values
boxplot(data, col='steelblue') 

Непредвиденная ошибка строковой константы может возникнуть во многих различных сценариях, но эти три примера иллюстрируют распространенные случаи, когда это может произойти.

Дополнительные ресурсы

В следующих руководствах объясняется, как исправить другие распространенные ошибки в R:

Как исправить: объект (список) нельзя заставить ввести «двойной»
Как исправить в R: неверная формула модели в ExtractVars
Как исправить в R: замена имеет нулевую длину

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.