我有一个字符串数组,我想用它来从我拥有的更大的数据矩阵中提取样本。现在我有一个字符串数组,1200x1
. 我的实际数据“名称”(表示值对应的字符串数组,6855x1
“数据”是6855x2
.
这就是我想出的:
C = intersect(names,sites) %To find common strings
%要查找这些字符串在我的原始数据集中的位置:
Q=zeros(length(C),1)
for i=1:length(C)
for j=1
while strcmp(C(i),names(j))==0
j=j+1
Q(i)=j
end
end
end
%然后使用上面的值来编译一个新向量,其中包含来自“数据”的实际数据值:
A=zeros(length(Q),1)
for i=1:length(Q)
A(i) = mock(Q(i),1)
唯一的问题是我正在运行我现在列出的第二组循环,很明显这需要几个小时。我认为必须有一种更快的方法,而无需设置三个循环。有谁知道更好的方法?