利用Matlab r2010b中的曲面拟合工具箱对三维数据进行曲线拟合。该工具对于通过GUI进行三维曲线拟合是非常有用和简单的工具。到目前为止,我处理的三维数据有:(X输入:x(nx1向量),Y输入:y(nx1向量),Z输出:Z (n矩阵))。
但现在,我试图处理四维数据,如:(X输入:X(nx1向量),Y输入:y(nx1向量),Z输入:Z(nx1向量)和T输出:t( now矩阵))。
我不能通过曲面拟合工具箱实现这一点。如何用四维数据进行曲线拟合?
会感谢你在这方面的帮助。
发布于 2011-05-05 17:42:37
我可以为你指出4d曲线拟合的各种不同算法。方法的正确选择将取决于您所掌握的关于变量之间关系的信息。
如果您知道变量之间存在线性关系,最好的选择是在统计工具箱中使用"regress“命令。如果您知道您的变量之间的关系最好使用已知的非线性关系来描述,则应该使用”nlinfit“。如果您不能指定一个模型来描述变量之间的关系,最好的选择是使用一个增强的或打包的决策树。
我附上了一个非常简单的例子,展示了如何使用回归将平面拟合到一组数据点。
X = 10 * rand(100,1);
Y = 10 * randn(100,1);
Z = 10 * randn(100,1);
t = 50 + 2*X + 3*Y + 4*Z;
b = regress(t, [ones(length(t),1), X, Y, Z])
https://stackoverflow.com/questions/5899250
复制相似问题