R и Exponential, стандартный 2-й порядок - PullRequest
0 голосов
/ 18 декабря 2018

Вот часть моего набора данных, классический набор данных из 2 столбцов с временем в столбце Col1 и током в столбце Col2

Time = c(10950 11000 11050 11100 11150 11200 11250 11300 11350 11400 11450 11500 11550 11600 11650 11700 11750 11800 11850 11900 11950 12000 12050 12100 12150 12200 12250 12300 12350 12400 12450 12500 12550 12600 12650 12700 12750 12800 12850 12900 12950 13000 13050 13100 13150 13200 13250 13300 13350 13400 13450 13500 13550 13600 13650 13700 13750 13800 13850 13900 13950 14000 14050 14100 14150 14200 14250 14300 14350 14400 14450 14500 14550 14600 14650 14700 14750 14800 14850 14900 14950 15000)
Current = c(-2616.000 -2406.000 -2190.000 -1983.000 -1797.000 -1630.000 -1484.000 -1356.000 -1243.000 -1143.000 -1058.000  -983.093  -914.650  -852.429 -797.985  -751.320  -713.987  -681.321  -650.210  -622.211  -598.878  -577.101  -552.212  -527.324  -503.991  -485.324  -469.769  -455.769 -441.770  -429.325  -416.881  -407.548  -398.215  -391.993  -382.660  -371.771  -362.438  -349.994  -335.994  -325.105  -320.439  -320.439 -317.328  -311.105  -304.883  -297.106  -289.328  -283.106  -279.995  -273.773  -267.551  -261.329  -259.773  -258.218  -256.662  -256.662 -253.551  -250.440  -248.884  -245.773  -242.662  -241.107  -242.662  -237.996  -228.662  -220.885  -216.218  -209.996  -203.774  -202.219 -203.774  -200.663  -195.996  -192.885  -189.774  -188.219  -186.663  -181.997)

df = cbind(Time,Current)

Этот набор данных должен соответствовать:

Current ~ A1*exp(-Time/Tau1) + A2*exp(-Time/Tau2) + c

Я использовалэтот код:

nls(Current ~ A1*exp(-Time/Tau1) + A2*exp(-Time/Tau2) + c,
+             start=list(Tau1=2, A1 = -500, Tau2=0.3, A2 = -1999, c= 84),
+             data = inactivation, control = nls.control(maxiter = 1000000, minFactor = 1e-10))
Error in nlsModel(formula, mf, start, wts) : 
  matrice de gradient singulière pour les estimations initiales des paramètres

Когда я использую Clampfit (коммерческое программное обеспечение) с тем же уравнением, оно работает хорошо, и я получил следующие параметры:

A1 = -576.224914550781250   
Tau1 = 2.239131927490234    
A2 = -1999.030639648437500  
Tau2 = 0.372585743665695    
c = 84.324699401855469

Кто-то пытался и успешноэто уже?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...