在matlab中使用结构变量的值构建矩阵
我有以下选项卡分隔的txt文件:在matlab中使用结构变量的值构建矩阵,matlab,matrix,Matlab,Matrix,我有以下选项卡分隔的txt文件: User Item Rate 1 1 9 1 2 8 2 2 7 3 1 6 3 2 8 3 3 5 我使用tdfread将其导入Matlab,tdfread将上面的每一列放入一个结构的对应变量中(例如,struct.user、struct.item、struct.rate)。在此基础上,我想在不使用循
User Item Rate
1 1 9
1 2 8
2 2 7
3 1 6
3 2 8
3 3 5
我使用tdfread将其导入Matlab,tdfread将上面的每一列放入一个结构的对应变量中(例如,struct.user、struct.item、struct.rate)。在此基础上,我想在不使用循环的情况下构建以下矩阵:
9 8 NaN
NaN 7 NaN
6 8 5
其中,每行表示上面的一个用户(从1到3),每列表示一个项目。这可能吗
谢谢,试试这样:
i = struct.User;
j = struct.Item;
A = nan(3,3);
A(sub2ind(size(A),i,j)) = struct.rate;
你不需要打电话给别人。您可以这样做:
A=nan(3,3)代码>