matlab - 使用 matlab 中结构变量的值构建矩阵

标签 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,它将上面的每一列放入一个结构的相应变量中(例如,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;

关于matlab - 使用 matlab 中结构变量的值构建矩阵,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9399241/

相关文章:

r - 通过在 R 中将对角线元素添加为 1,从 n-1*n 矩阵创建 n*n 矩阵

opengl - 右手坐标矩阵到左手坐标?

matlab - 下三角矩阵和上三角矩阵的乘法

c++ - 来自 matlab 的代码优化直方图 c++

math - 正弦波频率拟合

c++ - 如何在opencv中找到图像中像素之间的欧氏距离

r - 按 r 中的 rowname 求和不符合矩阵

matlab - 如何更改二维图像的视口(viewport)?

matlab - Fortran与Matlab的通信

java - openGL透视投影矩阵不起作用