You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python加权曲线拟合代码中线性方程的实现方法咨询

现有代码逻辑说明

你拿到的这段代码已经完整实现了y = a + bx形式的加权最小二乘线性拟合,不需要额外添加finally语句或其他关联逻辑,你要找的线性方程对应实现已经包含在两段核心逻辑里:

  • 拟合参数计算环节:返回结果里的A_mc就是线性方程的截距a,B_mc就是线性方程的斜率b,二者的计算公式是对y=a+bx做加权最小二乘极值推导得到的闭式解,本身就和线性方程严格绑定
  • 卡方校验环节:代码中((y[i]-A_mc-x[i]*B_mc)/yerr[i])**2就是直接套用y=a+bx计算实测值和拟合值的残差,属于线性方程的显式实现
常见扩展需求修改方案

如果你是需要额外输出每个输入x对应的拟合预测值,可以在计算完A_mc和B_mc后新增以下代码:

# 按y=a+bx计算所有x对应的拟合y值
y_fit = [A_mc + B_mc * xi for xi in x]

之后把y_fit添加到return的返回列表中即可。

额外说明

你尝试添加finally语句没有生效是因为finally适用于「无论是否触发异常都要执行的收尾逻辑」(比如日志打印、资源释放),当前拟合逻辑本身是完整闭环的,不需要额外追加这类逻辑。
另外现有代码存在一个小笔误:except分支返回的列表中'sigmaB'缺少冒号,建议修正为'sigmaB:'保证返回结果的键名统一。

内容的提问来源于stack exchange,提问作者Lorenzo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 07:06:04