问题如图:
x=[250 300 350 400 450 500 550 600 650 700 750 800 850 900 950 1000 1050 1100 1150 1200 1250 1300 1350 1400 1450 1500 1550 1600 1650 1700 1750 1800 1850 1900 1950 2000 2050 2100 2150 2200]
y=[0.001395817 0.002332242 0.003154383 0.004303448 0.004999808 0.005678286 0.005906158 0.006086367 0.005782365 0.005586454 0.005322427 0.004752981 0.004557205 0.004151737 0.003800288 0.003547886 0.00327074 0.0029927 0.002497924 0.002381041 0.002138122 0.002010574 0.001831113 0.001791354 0.001674423 0.001499511 0.001388746 0.001317773 0.001300776 0.001108229 0.001062903 0.001092241 0.00094004 0.000998219 0.000915562 0.00088457 0.000806668 0.000789224 0.000804247 0.000767624]
excel中拟合结果及给出的公式为:
用该公式代入python中进行拟合时,发现结果完全不对,python中给出对应的x和拟合公式,计算出y,重新绘制该曲线,结果如图所示:
对应的y为[-0.0097877484375, -0.005203949999999999, -0.00048237031249999916, 0.004437600000000003, 0.009611132812500003, 0.015088150000000002, 0.020913510937499998, 0.027127200000000004, 0.0337645140625, 0.040856250000000004, 0.048428892187499996, 0.0565048, 0.0651023953125, 0.07423635, 0.08391777343750001, 0.0941544, 0.10495077656249999, 0.11630845000000001, 0.1282261546875, 0.14070000000000002, 0.1537236578125, 0.16728855, 0.18138403593750002, 0.19599760000000002, 0.21111503906249998, 0.22672065, 0.2427974171875, 0.2593272000000001, 0.2762909203125, 0.29366875000000003, 0.3114402984375001, 0.32958480000000007, 0.34808130156250006, 0.36690885000000006, 0.38604667968750006, 0.4054744000000001, 0.42517218281250013, 0.4451209500000002, 0.4653025609375001, 0.48570000000000013, 0.5062975640625, 0.52708105, 0.5480379421875]。
发现将excel多项式拟合公式放在python里重新计算结果完全不一样,excel线性拟合出来的公式明显不对。
原因分析
excel中拟合公式精度不够导致拟合公式不正确。
解决方案
在excel中选中拟合公式,右击,选择设置趋势线标签格式,数字类别选择数字,小数位数尽可能多。
将该公式重新放入python中计算,拟合结果如图:
y值为[0.0009500457332556386,
0.0024883319004742124,
0.0036650477323214407,
0.004530535036199827,
0.005130790456411859,
0.005507647949160057,
0.005698961257546906,
0.00573878638657491,
0.005657564078146566,
0.005482302286064385,
0.005236758651030852,
0.004941622975648475,
0.004614699699419748,
0.004271090373747181,
0.003923376136933252,
0.003581800189180518,
0.003254450267591403,
0.0029474411211684766,
0.0026650969858141756,
0.002410134059331038,
0.0021838429764215496,
0.001986271283688213,
0.0018164059146335183,
0.0016723556646600808,
0.0015515336660701824,
0.0014508398630664783,
0.001366843486751413,
0.0012959655301275248,
0.0012346612230972782,
0.0011796025074631185,
0.0011278605119277758,
0.0010770880270934598,
0.0010257019804628571,
0.0009730659114382985,
0.0009196724463225343,
0.0008673257733179569,
0.0008193241175268769,
0.0007806422159520217,
0.0007581137924958688]
和原来的散点数值相近。
灵感来源:貌美如花的丽丽子。