Я просматриваю большой набор данных и изолировал несколько групп, возвращающих ошибку:
Ошибка в if (is.na (x)) return (0) else return (sign (x)): аргумент имеет нулевую длину
В других сообщениях предполагалось, что это указывает на существование NULL. Тем не мение,
is.null (block_of_troublesome_data) [1] FALSE
ручная проверка df также не показывает никаких значений na (что имеет смысл, потому что я ранее запускал na.omit () для всего блока.
Что мне не хватает?
дополнительная информация: вот df, над которым работает цикл:
данные
Стол: 120 х 11
Группы: ecoregion_code [1]
ecoregion_code loc_major_basin lake_id имя_зера_дата_выборки ym doy value_ft Season_code Season 1 40 7010103 01-0022-00 ISLAND 1999-07-29 1999 7210 5.610236 2 Summer 2 40 7010103 01-0022-00 ISLAND 2000-06-18 2000 6170 6.496063 1 Весна 3 40 7010103 01-0022-00 ISLAND 2000-07-04 2000 7186 6.496063 2 Лето 4 40 7010103 01-0022-00 ISLAND 2000-08-12 2000 8 225 6.496063 2 Лето 5 40 7010103 01-0022-00 ISLAND 2000 -08-26 2000 8 239 6.496063 2 Лето 6 40 7010103 01-0022-00 ISLAND 2000-09-16 2000 9260 6.496063 3 Осень 7 40 7010103 01-0022-00 ISLAND 2001-06-03 2001 6 154 5.511811 1 Весна 8 40 7010103 01-0022-00 ISLAND 2001-06-10 2001 6 161 5.511811 1 Весна 9 40 7010103 01-0022-00 ISLAND 2001-06-17 2001 6 168 4.986877 1 Весна 10 40 7010103 01-0022-00 ISLAND 2001-10-18 2001 10 291 6.496063 3 Осень
... еще 110 строк
и вывод 'if (is.na (x)) return (0) else return (sign (x))'
if (is.na (data)) return (0) else return (sign (data)) Ошибка в Math.data.frame (data): нечисловая переменная во фрейме данных: lake_idlake_namesample_dateseason Дополнительно: Предупреждающее сообщение: В if ( is.na (data)) return (0) else return (sign (data)): длина условия> 1, и будет использоваться только первый элемент
а также
if (length (data) == 0) 0 else if is.na (x) 0 else sign (data) Ошибка: неожиданный символ в "if (length (data) == 0) 0 else if is.na"
dput(x)
. Или, если он слишком большой, с выходомdput(head(x, 20))
. - person Rui Barradas   schedule 27.02.2018