查看单个帖子
旧 2019-11-28, 17:20   #1
poster
高级会员
 
注册日期: 2019-11-21
帖子: 3,006
声望力: 66
poster 正向着好的方向发展
默认 合并重叠的矩阵数据以创建单个矩阵

我有四个传感器的测量数据,每个传感器给出给定水深(d)和时间(t)的当前速度。以下是这四个电流测量值的矩阵尺寸:

cs1 = [d1 x t1]; cs2 = [d2 x t2]; cs3 = [d3 x t3]; cs4 = [d4 x t4]

水深数组d1, d2, d3, d4是唯一值,但它们的范围重叠。例如, d1=5:4:141和d2=72:2:200 。时间数组t1,t2,t3,t4也具有不同的起点和终点,且具有不同的时间步长。

我需要创建一个组合的矩阵cs ,其中包括来自所有四个传感器的数据。为此,我创建了一个NaN矩阵,如下所示:

t = unique([t1;t2;t3;t4]); d = unique([d1 d2 d3 d4]); cs = NaN(length(d),length(t)); % Populaitng data from 1st sensor for i=1:length(d1) for j=1:length(t1) cs(d==d1(i) & t==t1(j))=cs1(i,j); end end 我正在使用for循环来一次填充一个仪器数据的cs矩阵。由于深度和时间数组的大小都很大,所以这种方法效率很低。

是否有一种更快的方法来填充cs矩阵,而无需为每个仪器运行for循环?



更多&回答...
poster 当前离线   回复时引用此帖