Что такое октава find()?

day[] по сути стоит несколько лет [1:365 1:365 1:365 ...] с множеством дыр. Длина 5556.

find()-ing отдельные дни, таким образом

find(2 == day)'
ans =
 Columns 1 through 13:
    364    729   1094   1460   1825   2190   2555   2921   3286   3651   4016   4382   4747
 Columns 14 and 15:
   5095   5459
>> find(3 == day)'
ans =
 Columns 1 through 13:
    365    730   1095   1461   1826   2191   2556   2922   3287   3652   4017   4383   4748
 Columns 14 and 15:
   5096   5460
>> find(4 == day)'
ans =
 Columns 1 through 13:
      1    366    731   1096   1462   1827   2192   2557   2923   3288   3653   4018   4384
 Columns 14 through 16:
   4749   5097   5461

возвращает разумные значения индекса, но я не понимаю результатов

find(2:4 == day)'
ans =
 Columns 1 through 11:
     364     729    1094    1460    1825    2190    2555    2921    3286    3651    4016
 Columns 12 through 22:
    4382    4747    5095    5459    5921    6286    6651    7017    7382    7747    8112
 Columns 23 through 33:
    8478    8843    9208    9573    9939   10304   10652   11016   11113   11478   11843
 Columns 34 through 44:
   12208   12574   12939   13304   13669   14035   14400   14765   15130   15496   15861
 Columns 45 and 46:
   16209   16573

Поскольку длина day[] равна 5556, что возвращается?


person user38715    schedule 09.04.2020    source источник
comment
Пожалуйста, не редактируйте решение в заголовке. Вместо этого примите ответ, если он решил вашу проблему, или напишите свой собственный и примите его, если вы нашли другое решение. См. здесь: stackoverflow.com/help/someone-answers   -  person Cris Luengo    schedule 10.04.2020


Ответы (1)


Я предполагаю, что day - это вектор-столбец. Если нет, это утверждение должно выдать ошибку.

Я рекомендую выполнять эту инструкцию по частям: запустите только 2:4 == day. Это должна быть матрица 5556x3, где первый столбец истинно где day==2, второй столбец day==3 и т.д.

find просто возвращает (линейные) индексы, если элементы истинны.

person Cris Luengo    schedule 10.04.2020