Як виправити в 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 введено примусово
Як виправити: неправильна кількість індексів у матриці
Як виправити: кількість елементів для заміни не кратна довжині заміни