Як виправити в 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:

Як виправити: NAs введено примусово
Як виправити: неправильна кількість індексів у матриці
Як виправити: кількість елементів для заміни не кратна довжині заміни

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *