请问matlab有对多个因变量进行拟合的函数吗?

33 ビュー (過去 30 日間)
果博东方开户注册《80877.tv》
问题的描述为:
对函数y(x; c)进行拟合, 其中x为已知的自变量(一个向量),y是已知函数表达式的因变量(一组向量),c是需要拟合出来的参数(一个向量)。
下面用一个简单的例子说明我想解决的问题:
已知我们需要拟合的两个函数关系式为:
y1 = c1 * x + c2 * x
y2 = c1 * x - c2 * x
已知一组x的值,对应的也已知一组y1, 一组y2的值。现在就是要对c1, c2进行拟合,从而让两个曲线都能fit上。
当然我需要的是非线性拟合,上面只是一个线性的例子。现在的问题是,我用nlinfit函数,每次似乎只能拟合一个函数。这样的话,比如我先nlinfit(x, y1),那么显然c1和c2是不独立的(因为y1 = (c1+c2)*x ),matlab在拟合的时候将不管c2,直接找到合适的c1。而这样y1当然可以fit的很好,但是y2就会差很远了。
所以我其实就是想找一个函数或者算法,来拟合y(x; c) 而不是单纯的 y(x; c)。
看起来这应当是拟合问题中很典型的一类,无奈我在matlab上找不到合适的方法。因此想请教论坛的朋友们。

採用された回答

百家乐线上真人网址【微8785092】
构造个 Y(x,c) = (c1 * x + c2 * x - y1).^2 + (c1 * x - c2 * x - y2).^2 然后用fmincon之类的函数求 Y的最小值

その他の回答 (0 件)

カテゴリ

Help Center および File Exchange线性最小二乘 についてさらに検索

タグ

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!