Ответ на оригинальный вопрос:
Вы можете указать функции mean
и нескольким другим игнорировать значения NaN
, указав флаг omitnan
:
y = [1,2,3,4,5,6,7,8,9,10]'
z = [NaN, NaN, NaN, NaN, 1, 2, 3, 4]'
ww = mean(z,'omitnan')-mean(y,'omitnan')
Некоторые другие функции, такие как max
, min
, sum
, prod
и т. Д., Также принимают этот флаг.
И в качестве отступления, если вы работаете с временными рядамиданные, вы можете проверить, можете ли вы использовать timetable
.Это может упростить некоторые ваши рабочие процессы.
Ответ на обновленный вопрос :
Я не уверен, что делает archtest
, поскольку это не в моей областиопыт, но если ваш рабочий процесс подходит просто для удаления NaN, то вы можете использовать rmmissing
в качестве шага предварительной обработки для их удаления.Однако я не уверен, повлияет ли это на значение Lags
, поскольку вы удаляете индексы.Я думаю, что в этом случае вам придется решить, что делать с вашими данными.Если вы просто хотите заменить NaN каким-либо другим значением (например, 0), вы можете использовать fillmissing
для этого.