У меня есть два массива наборов данных, A и B. Это два разных независимых измерения (например, запах и цвет какого-либо объекта).
Для каждого ввода данных в A и B у меня есть время, t и местоположение, p измерения.Большинство измерений запаха и цвета были сделаны в одно и то же время и в одном месте.Тем не менее, в некоторых случаях данные отсутствуют (т. Е. В какое-то время не было измерения цвета и только измерения запаха).Точно так же в некоторых местах отсутствуют некоторые данные (т.е. в каком-то месте было только измерение цвета и отсутствие запаха).
Я хочу построить массивы A и B, которые имеют одинаковый размер в каждой строкесоответствует полному набору всех времен, и каждый столбец соответствует полному набору всех местоположений.Если отсутствуют данные, я хочу, чтобы эта запись была NaN.
Ниже приведен пример того, что я хочу сделать:
%Inputs
A = [0 0 1 2 4; 1 1 3 3 2; 4 4 1 0 3];
t_A = [0.03 1.6 3.9]; %Times when A was measured (rows of A)
L_A = [1.0 2.9 2.98 4.2 6.33]; %Locations where A was measured (columns of A)
B = [10 13 10 10; 15 13 13 12; 14 14 13 12; 15 19 11 13];
t_B = [0.03 1.6 1.9 3.9]; %Times when B was measured (rows of B)
L_B = [2.1 2.9 2.98 5.0]; %Locations where B was measured (columns of B)
Мне нужен код для преобразования этих наборов данныхв следующее:
t = [0.03 1.6 1.9 3.9];
L = [1.0 2.1 2.9 2.98 4.2 5.0 6.33];
A_new = [0 NaN 0 1 2 NaN 4; 1 NaN 1 3 3 NaN 2; NaN NaN NaN NaN NaN NaN NaN; 4 NaN 4 1 0 NaN 3];
B_new = [NaN 10 13 10 NaN 10 NaN; NaN 15 13 13 NaN 12 NaN; NaN 14 14 13 NaN 12 NaN; NaN 15 19 11 NaN 13 NaN];
Новые массивы A_new и B_new имеют одинаковый размер, а векторы t и L (соответствующие строкам и столбцам) являются последовательными.Исходный A не имел данных при t = 1,9 и, следовательно, в 3-й строке в A_new есть все значения NaN.Аналогично для столбцов 2 и 6 в A_new и столбцов 1, 5 и 7 в B_new.
Как быстро это сделать в MATLAB для большого набора данных?