Рассмотрим следующие массивы Юлиана датынайти тот же DateTime в массивы различной длины
Jday1 = datenum('2011-01-01 00:00','yyyy-mm-dd HH:MM'):60/(60*24):...
datenum('2011-12-31 23:00','yyyy-mm-dd HH:MM');
Jday2 = datenum('2011-04-01 00:00','yyyy-mm-dd HH:MM'):60/(60*24):...
datenum('2011-12-31 23:00','yyyy-mm-dd HH:MM');
Jday3 = datenum('2011-02-06 00:00','yyyy-mm-dd HH:MM'):60/(60*24):...
datenum('2011-12-31 22:00','yyyy-mm-dd HH:MM');
которые все разной длины и имеют разное время в них.
Как можно определить, какие даты совпадают в 3 массивах, т. Е. Вернуть индекс согласованной даты времени между всеми массивами?
Я знаю, что могу использовать strcmp, если бы они были одного размера, но что бы я сделал, если они имеют разную длину, как в примере? Кроме того, проблема strcmp возникла бы из-за количества массивов, равных 3, а не 2.
+1, 2 секунды впереди меня ... = P Вы можете использовать дополнительные выходы пересекаются, чтобы получить индексы в Jday3 .. –
Великого, спасибо. Итак, если бы вы сказали еще один вектор Jday, вы могли бы использовать ту же процедуру, что и [common_dates, idx] = пересекаться (пересекаться (пересекаться (Jday1, Jday2), Jday3), Jday4); Некоторая функция, подобная функции слияния в R, здесь была бы большой. – KatyB
@ Kate Я добавил небольшую функцию, которая может обрабатывать неограниченное количество пересечений. Вы можете добавить дополнительные функции и настройки в функцию (проверьте тип входных параметров, ...) – Bee