我有一组字母A到H的字符串变量,分配给M,N和P,如下所示:
M = BCD
N = ADFG
P = ADEHG
使用Matlab,我想将MNP组合为3X8矩阵。我希望它显示如下:
NaN B C D NaN NaN NaN NaN
A NaN NaN D NaN F G NaN
A NaN NaN D E NaN G H
感谢您的帮助:)
答案 0 :(得分:1)
假设您确实拥有Cell Arrays:
M = {'B','C','D'};
N = {'A','D','F','G'};
P = {'A','D','E','H','G'};
F = unique([M,N,P])
F(~ismember(F(1,:),M)) = {NaN}
>> NaN 'B' 'C' 'D' NaN NaN NaN NaN
F(~ismember(F(1,:),N)) = {NaN}
>> 'A' NaN NaN 'D' NaN 'F' 'G' NaN
F(~ismember(F(1,:),P)) = {NaN}
>> 'A' NaN NaN 'D' 'E' NaN 'G' 'H'
您可以使用vertcat或简单地[;]组合答案。如果你想要矩阵,请做cell2mat,但我不确定你可以,除非你将Chars改为数字。