s********n 发帖数: 5 | 1 我的编程环境是VS 2008,需要做一个数据拟合,因此我用Matlab编写了一个小函数(
MyGasFit),调用了stat工具箱的非线性拟合函数nlinfit,经过简单的测试,该函数在
Matlab下面运行正常,在C#的测试小程序中也正常。嵌入project以后遇到以下的问题,
由于数据本身可能不一定有唯一解,因此程序部分数据提示warning,现在将最后部分的
输出铁在下面(warning 部分多次出现但是不影响结果)
Warning: Rank deficient, rank = 0, tol = 0.0000e+000.
> In nlinfit>LMfit at 296
In nlinfit at 168
In MyGasFit at 3
Warning: The Jacobian at the solution is ill-conditioned, and some
model parameters may not be estimated well (they are not identifiable).
Use caution in making pre |
|
s********n 发帖数: 5 | 2 我的编程环境是VS 2008,需要做一个数据拟合,因此我用Matlab编写了一个小函数(
MyGasFit),调用了stat工具箱的非线性拟合函数nlinfit,经过简单的测试,该函数在
Matlab下面运行正常,在C#的测试小程序中也正常。嵌入project以后遇到以下的问题,
由于数据本身可能不一定有唯一解,因此程序部分数据提示warning,现在将最后部分的
输出铁在下面(warning 部分多次出现但是不影响结果)
Warning: Rank deficient, rank = 0, tol = 0.0000e+000.
> In nlinfit>LMfit at 296
In nlinfit at 168
In MyGasFit at 3
Warning: The Jacobian at the solution is ill-conditioned, and some
model parameters may not be estimated well (they are not identifiable).
Use caution in making pre |
|
b******y 发帖数: 627 | 3 When I did mine, my protein concentration change is less than 10% at the end
of titration vs the beginning. So I just ignore the change and assume it is
constant. Then I output chemical shift vs total ligand concentration and
did the curve fitting using nlinfit command in Matlab. In this case, the
equation is the one you described.
If the concentration of you protein changes much more than 10% at the end of
the titration, you certainly should use [protein], [ligand], and CS to fit
Kd. You can de... 阅读全帖 |
|
t**********a 发帖数: 7 | 4 刚看了一眼matlab,version 5.2,发现里面的 nlinfit 函数只能做一元非线性回归。
多元线性回归怎么做呢? |
|
|
s********n 发帖数: 5 | 6 我有一组m*n维输入矩阵X和对应的m*1维观测向量Y (由于仪器和人的因素,Y肯定存在
误差)
P和Q是待拟合的系数,P(1)=1,下面为了书写方便,保留P(1)的写法
目标函数y(i)=(x(i,1)*P(1)+x(i,2)*P(2)+...+x(i,n)*P(n))/(x(i,1)*Q(1)+x(i,2)*Q
(2)+...+x(i,n)*Q(n))
我尝试用matlab的nlinfit做拟合,但是这个函数把所有的Y都回归到Y的均值附近,
即原始的y是一个0到0.5的分布,但是拟合出来的fitted value集中在0.25附近
我也尝试过把目标函数变成线性的拟合,即把y和分母相乘然后变成一个关于P和Q的线性
拟合,效果也不好,
可能是因为Y本身的观测误差,当Y与X相乘以后,该误差会影响一半的线性变量。
请问有没有更好的方法解决这种拟合的问题。谢谢 |
|
B****n 发帖数: 11290 | 7 If you use matlab, the function nlinfit can fit nonlinear regression model
using least squares that allows restrictions for the parameters. |
|
B****n 发帖数: 11290 | 8 If you use matlab, the function nlinfit can fit nonlinear regression model
using least squares that allows restrictions for the parameters. |
|
c****e 发帖数: 2127 | 9 I want to use this function to do nonlinear fitting. But I don't know how to
pass parameters. For instance, I have 5 parameters in my fitting function,
but I only want to fit for 3 parameters while inputing 2 other parameters
from other reliable source.
Is anyone familiar with this? Thanks a lot! |
|