Как исправить в r: 'x' должен быть числовым


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

 Error in hist.default(data): 'x' must be numeric

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

В этом руководстве объясняется, как именно исправить эту ошибку.

Как воспроизвести ошибку

Предположим, мы пытаемся создать гистограмму для следующего вектора данных:

 #definevector
data <- c('1.2', '1.4', '1.7', '1.9', '2.2', '2.5', '3', '3.4', '3.7', '4.1')

#attempt to create histogram to visualize distribution of values in vector
hist(data)

Error in hist.default(data): 'x' must be numeric

Мы получаем ошибку, поскольку данные в настоящее время не являются числовым вектором. Мы можем подтвердить это, проверив класс:

 #check class
class(data)

[1] “character”

В настоящее время данные представляют собой вектор символов.

Как исправить ошибку

Самый простой способ исправить эту ошибку — просто использовать as.numeric() для преобразования нашего вектора в числовой:

 #convert vector from character to numeric
data_numeric <- as. numeric (data)

#create histogram
hist(data_numeric)

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

Мы можем убедиться в этом, проверив класс:

 #check class
class(data_numeric)

[1] "digital"

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

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

Как исправить: NA, введенные в результате принуждения
Как исправить: неправильное количество индексов в матрице
Как исправить: количество элементов для замены не кратно длине замены

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *