Как найти среднее абсолютное отклонение (MAD) в r - PullRequest
0 голосов
/ 06 октября 2019

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

md <- mad(x, center = median(x), constant = 1.4826, na.rm = FALSE,
      low = FALSE, high = FALSE)
Error in median.default(x) : need numeric data

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

md <- mad(x.num, center = median(x.num), constant = 1.4826, na.rm = FALSE,
      low = FALSE, high = FALSE)
Error in sort.int(x, na.last = na.last, decreasing = decreasing, ...) : 
  'x' must be atomic

1 Ответ

0 голосов
/ 06 октября 2019

Будет полезно, если вы укажете здесь свой вектор xОн отлично работает в следующих атомарных и нечисловых векторах.

# numeric vector
> x <- 1:10
> mad(x, center = median(x), constant = 1.4826, na.rm = FALSE, low = FALSE, high = FALSE)
> 3.7065

# non-numeric vector
> x <- c(TRUE, FALSE, T, F)
> mad(x)
> 0.7413

# atomic vector
> x <- c(1L, 6L, 10L)
> mad(x)
> 10

# works even with NA's in the vector
> x <- c(1L, 6L, 10L, NA)
> mad(x, na.rm = TRUE)
> 5.9304
...