24小时热门版块排行榜    

CyRhmU.jpeg
查看: 3164  |  回复: 32

meina861010

银虫 (小有名气)

[求助] 用Mathematica软件进行最小二乘法曲线拟合遇到问题,哪位大神帮忙看看?已有2人参与

最近想用Mathematica软件对一组数据最小二乘法曲线拟合问题,以下是数据及代码,错误提示“不完全的表达”,修改了多次,还是一直提示这种错误,没辙了。
哪位大神帮忙看看到底哪里出错了?
万分感谢!!!

用Mathematica软件进行最小二乘法曲线拟合遇到问题,哪位大神帮忙看看?
mathematica数据拟合代码.jpg
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
回帖支持 ( 显示支持度最高的前 50 名 )

xzczd

木虫 (小有名气)

引用回帖:
18楼: Originally posted by meina861010 at 2015-09-18 13:57:01
不好意思啊,下面是代码,能帮忙看看是哪运行出错了吗?
data = {{1, 18.3}, {2, 28.6}, {3, 25}, {4, 15}, {5, 7}, {6, 3.3}, {7, 1.5}, {8, 0.7}, {9, 0.4}, {10, 0.2}, {11, 0.1}, {12, 0.001}, {13, 0.002},  ...

阿尔法和西塔的取值可能是复数?但是你用于拟合的原始数据又全是实的?这个模型真的没有问题吗?

如果真的没有问题,那么:
1. 这大概又是模型本身的强非线性导致的拟合失败,可能需要精心寻找合适的初值,关于这个你仔细看看FindFit(NonlinearModelFit其实是这个函数的壳儿)的自带帮助的“可能存在的问题“一节。
2. 如果我没记错的话FindFit等一系列拟合函数实际上是默认拟合参数在实数域,所以如果你的参数是复数的话就需要把实部和虚部分开设。关于这个可以参看这个帖子:http://mathematica.stackexchange.com/a/43237/1871,里面有高手已经写了一个针对复数域拟合的程序包,你可以试试看。

不过,我稍微试了一下,不给初值的情况下拟合效果依旧欠佳,恐怕你这模型还是要找到合理的初值才有救。至于什么初值合适,我想你这个模型创造者肯定比我清楚。

» 本帖已获得的红花(最新10朵)

小木虫Mathematica版块已毁(当然原本也不咋的),建议大家前往百度贴吧或Stackexchange。
19楼2015-09-18 14:25:37
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通回帖

xzczd

木虫 (小有名气)

【答案】应助回帖

感谢参与,应助指数 +1
……来楼主你先把这个看了:http://tieba.baidu.com/p/2964416898
小木虫Mathematica版块已毁(当然原本也不咋的),建议大家前往百度贴吧或Stackexchange。
2楼2015-09-11 10:45:56
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

cooooldog

铁杆木虫 (著名写手)

ส็็็

【答案】应助回帖

感谢参与,应助指数 +1


Show[] 对大小写敏感
ส็็็็็็็็็็็็็็็็็็็็
3楼2015-09-11 17:40:25
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

meina861010

银虫 (小有名气)

引用回帖:
3楼: Originally posted by cooooldog at 2015-09-11 17:40:25


Show[] 对大小写敏感

感谢回答,show改成首字母大写也出现是同样的问题
4楼2015-09-14 10:00:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

meina861010

银虫 (小有名气)

引用回帖:
2楼: Originally posted by xzczd at 2015-09-11 10:45:56
……来楼主你先把这个看了:http://tieba.baidu.com/p/2964416898

谢谢你的帖子,现在不出现“不完全表达式”的提示了,但是出现了新的问题,只作图不出现拟合曲线,能不能看看怎么回事呀?代码见附件
用Mathematica软件进行最小二乘法曲线拟合遇到问题,哪位大神帮忙看看?-1
数据处理.jpg

5楼2015-09-14 10:11:25
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

2436033983

新虫 (小有名气)

貌似 把数据输入,完后曲线拟合是不能够得到你想要的曲线啊 ,得指定模拟曲线,指数,log,ln,,,,,

发自小木虫Android客户端
6楼2015-09-14 20:50:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xzczd

木虫 (小有名气)

【答案】应助回帖

你仔细看看你函数的颜色
小木虫Mathematica版块已毁(当然原本也不咋的),建议大家前往百度贴吧或Stackexchange。
7楼2015-09-15 13:46:24
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

meina861010

银虫 (小有名气)

引用回帖:
7楼: Originally posted by xzczd at 2015-09-15 13:46:24
你仔细看看你函数的颜色

请问函数哪出现了问题,请明示 ,新手实在看不出变量有什么问题
8楼2015-09-15 14:42:47
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

meina861010

银虫 (小有名气)

引用回帖:
6楼: Originally posted by 2436033983 at 2015-09-14 20:50:55
貌似 把数据输入,完后曲线拟合是不能够得到你想要的曲线啊 ,得指定模拟曲线,指数,log,ln,,,,,

如果指定,就得不到符合意义的参数了,怎么办
9楼2015-09-15 14:43:34
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

2436033983

新虫 (小有名气)

嗯 ,你这个曲线拟合 是y=f(x),呢还是,u(x,y)型呢?

发自小木虫Android客户端
10楼2015-09-15 15:08:02
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 meina861010 的主题更新
信息提示
请填处理意见