※ 引述《abcd28s (乖小孩)》之銘言:
: 魯蛇小弟我又遇到瓶頸了
: 想要將我做的interpolation函數用解析的方法去fit
: 但是因為肯定不是linear的函數
: 所以不能直接用Fit的指令做(對吧@@)
: 因此試了一些其他的指令
: 像是FindFit,NonlinearModelFit
: 可是基本上好像都是我要先有一個預設的model去fit(?)
: 想請教有沒有辦法直接讓mathematica給我一個analytic的形式?
: 當然是近似的analytic並不是exact的
: 附上圖形
: http://ppt.cc/579p
: 謝謝大大們QQ
(* test data*)
plot1=Plot[PDF[LogNormalDistribution[0,1],x],{x,0,5}]
mypts=plot1[[1,1,-1,2,1]];
ListLinePlot[mypts]
(* models and parameters *)
myrule=b[coef_]:>ToExpression["b"<>ToString[coef]];
mymodel=Accumulate[b[#]*x^#&/@Range[0,10,1]/.myrule][[2;;-1]]
myvar=b[#]&/@Range[0,10]/.myrule
(* fitting models *)
myfit=FindFit[mypts,mymodel[[#]],myvar[[1;;#+1]],x]&/@
Range[Length@mymodel]
(* plot data and model *)
Plot[mymodel[[#]]/.myfit[[#]],{x,0,5},Epilog->Point[mypts],
PlotRange->{{0,5},{0,0.8}}]&/@Range[Length@mymodel]