Я пытаюсь вывести два отдельных года из таблицы дат.Вывести значения даты между двумя датами из матричной переменной, Matlab
% Date table
Datez = [2001 2;2001 5;2001 9;2001 11;2002 3;2002 5;2002 7;2002 9;2002 11;...
2003 2;2003 4;2003 6;2003 8;2003 10;2003 12;2004 3;2004 5;2004 7;...
2004 9;2004 11; 2005 10;2005 12]
Я хочу взять все значения, как 1 или 0. Я хочу даты от 2001-11 до 2002-11 плюс всех значений от 2004-11 до 2005-11. В общей сложности я должен получить новый вектор, называемый test
:
test = [0;0;0;1;1;1;1;1;1;0;0;0;0;0;0;0;0;0;0;1;1;0] % final result
Я попробовал эти комбинации, но я не знаю, как объединить эти четыре заявления в вектор, который выглядит как «test
» или, если есть любые лучшие решения?
xjcr = 1:length(Datez)
(Datez(xjcr,1) >= 2001 & Datez(xjcr,2) >= 11) % greater than 2001-11
(Datez(xjcr,1) <= 2002 & Datez(xjcr,2) <= 11) % smaller than 2002-11
(Datez(xjcr,1) >= 2004 & Datez(xjcr,2) >= 11) % greater than 2004-11
(Datez(xjcr,1) <= 2005 & Datez(xjcr,2) <= 11) % smaller than 2005-11
Любые идеи очень ценятся, спасибо заранее!
Как 1 и 0 определены в тестовом векторе? – madbitloman
, если вы, например, используете команду 'Datez (xjcr, 1)> = 2004', он даст вам вектор 1 и 0. Вы просто назовите этот новый вектор, так что ' test = Datez (xjcr, 1)> = 2004' – Wiz