Python Numpy多元拟合协方差矩阵

Python Numpy多元拟合协方差矩阵,python,numpy,covariance,Python,Numpy,Covariance,当将一条直线拟合到一组数据时,用误差加权,我期望polyfit返回一个2x2协方差矩阵,从中我可以平方根对角线元素以找到系数中的不确定性,但我没有 下面是一个最低限度的工作示例: from numpy import polyfit x=[1.,2.,3.,4.,5.,6.,7.,8.,9.] y=[1.,3.,2.,4.,5.,6.,6.,8.,9.] yerr=[10.,5.,3.,2.,10.,10.,10.,10.,10.] linear = polyfit(x,y, 1, w=ye

当将一条直线拟合到一组数据时,用误差加权,我期望polyfit返回一个2x2协方差矩阵,从中我可以平方根对角线元素以找到系数中的不确定性,但我没有

下面是一个最低限度的工作示例:

from numpy import polyfit

x=[1.,2.,3.,4.,5.,6.,7.,8.,9.]
y=[1.,3.,2.,4.,5.,6.,6.,8.,9.]

yerr=[10.,5.,3.,2.,10.,10.,10.,10.,10.]

linear = polyfit(x,y, 1, w=yerr, full=True)

print(linear)
输出:

(array([ 0.95730623,  0.11546722]), array([ 114.79556527]), 2, array([ 1.38182992,  0.30090875]), 1.9984014443252818e-15)
谢谢

报告说:

  • cov:bool,可选

    返回估计值和估计值的协方差矩阵如果full为真,则不返回cov


因此,设置
cov=True
full=False
(默认设置)将返回协变矩阵。

尝试设置参数:
cov=True
full=False
@HYRY您可以将您的评论作为答案发布