Як виправити: принаймні відсутність непропущених аргументів; зворотній зв'язок
Попередження, яке ви можете зустріти в R:
Warning message: In min(data): no non-missing arguments to min; returning Inf
Це попередження з’являється щоразу, коли ви намагаєтеся знайти мінімальне або максимальне значення вектора нульової довжини.
Важливо зауважити, що це лише попереджувальне повідомлення , яке насправді не завадить запуску коду.
Однак ви можете скористатися одним із наведених нижче методів, щоб повністю уникнути цього попередження.
Спосіб 1: видаліть попередження
suppressWarnings(min(data))
Спосіб 2. Визначте спеціальну функцію для обчислення мінімуму або максимуму
#define custom function to calculate min custom_min <- function (x) { if (length(x)>0) min(x) else Inf} #use custom function to calculate min of data custom_min(data)
Наступні приклади показують, як використовувати кожен метод на практиці.
Спосіб 1: видаліть попередження
Припустімо, ми намагаємося використати функцію min(), щоб знайти мінімальне значення вектора нульової довжини:
#define vector with no values
data <- numeric(0)
#attempt to find min value of vector
min(data)
[1] Lower
Warning message:
In min(data): no non-missing arguments to min; returning Inf
Зауважте, що ми отримуємо попереджувальне повідомлення про те, що ми намагалися знайти мінімальне значення вектора без будь-яких непропущених аргументів.
Щоб уникнути цього попередження, ми можемо використати функцію suppressWarnings() :
#define vector with no values
data <- numeric(0)
#find minimum value of vector
suppressWarnings(min(data))
[1] Lower
Мінімальне значення все ще обчислюється як « Inf », але цього разу ми не отримуємо жодних попереджень.
Спосіб 2. Визначте спеціальну функцію
Ще один спосіб уникнути попередження — визначити спеціальну функцію, яка обчислює мінімальне значення, лише якщо довжина вектора більша за нуль, інакше повертається значення « Inf »:
#define vector with no values
data <- numeric(0)
#define custom function to calculate min
custom_min <- function (x) { if (length(x)>0) min(x) else Inf}
#use custom function to calculate min
custom_min(data)
[1] Lower
Зауважте, що мінімальне значення обчислюється як « Inf », і ми не отримуємо жодних попереджень.
Додаткові ресурси
У наступних посібниках пояснюється, як вирішити інші поширені помилки в R:
Як виправити в R: dim(X) має мати позитивну довжину
Як виправити в R: імена не збігаються з попередніми іменами
Як виправити в R: довжина довшого об’єкта не кратна довжині коротшого об’єкта
Як виправити в R: контрасти можна застосовувати лише до факторів із 2 або більше рівнями