Matlab从其他矩阵的数据创建矩阵

标签 matlab matrix creation

我有一个矩阵 *u_test*,其中包含来 self 的测试集的数据。 它的格式是这样的:

X  y  value
1  3  5.0
1  6  3.4
4  3  2.0

我想从 *u_test* 创建一个矩阵test,以便评分的值位于正确的位置,例如:

   1    2    3    4    5    6

1:          5.0 
2:                         3.4
3:
4:          2.0

是否有无循环的方式来做到这一点?

最佳答案

最简单的方法是使用 SPARSE

out = sparse(u_test(:,1),u_test(:,2),u_test(:,3));

如果数组的目标大小应该是m-by-n,你可以这样写

out = sparse(u_test(:,1),u_test(:,2),u_test(:,3),m,n);

使用稀疏的好处是,如果矩阵 u_test 很大,它不会占用太多空间。但是,如果由于某种原因您不能使用稀疏,请使用

转换为完整矩阵
outNotSparse = full(out);

关于Matlab从其他矩阵的数据创建矩阵,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13728796/

相关文章:

javascript - 在 Internet Explorer ActiveX 控件中调用 JavaScript 方法时出现不一致

Matlab 套接字等待响应

javascript - 使用 D3.js 的极坐标图

arrays - 如何获取给定范围内大于x的元素?

database-schema - 如何创建 derby 用户

C#和Matlab读取视频帧rgb值的区别

flutter - 如何在 flutter 中用平移、倾斜和缩放值填充 Matrix4?

java - 如何读取保存在 .json 文件中的矩阵并将其转换为 java 中的数组

oracle - 在oracle中估计索引创建时间

c++ - 在 linux 上用 C++ 创建一个 ramdisk