主要内容

glmfit

广义线性回归模型

    描述

    b= glmfit (X,y,分配)返回一个向量b广义线性回归模型的系数估计的反应y在预测X,使用分布分配

    例子

    b= glmfit (X,y,分配,名称,值)使用一个或多个名称参数指定附加选项。例如,您可以指定“常数”,“关闭”从模型中省略的常数项。

    例子

    (b,dev)= glmfit (___)还返回值dev,异常的健康。

    (b,dev,统计数据)= glmfit (___)还返回模型统计数据统计数据

    例子

    全部折叠

    符合广义线性回归模型,计算预测(估计)值使用拟合模型的预测数据。

    创建一个示例数据集。

    x = (2100 2300 2500 2700 2900 31003300 3500 3700 3900 4100 4300);n =[48 42 31 34 31日21日23日23日21日16 17 21)';y =[1 2 0 3 8 8 14 17日19日15日17日21日)';

    x包含预测变量的值。每一个y价值是成功的数量在相应数量的试验n

    适合的概率单位回归模型yx

    b = glmfit (x, y [n],“二”,“链接”,“probit”);

    计算估计数量的成功。

    yfit = glmval (b, x,“probit”,“大小”n);

    图观察到成功百分比和估计百分比与成功x值。

    情节(x, y / n,“o”,x, yfit. / n,“- - -”)

    图包含一个坐标轴对象。坐标轴对象包含2线类型的对象。一个或多个行显示的值只使用标记

    定义一个自定义链接功能和使用它来符合广义线性回归模型。

    加载示例数据。

    负载fisheriris

    列向量物种包含三个不同物种的虹膜花:setosa,杂色的,virginica。矩阵包含四种类型的测量的鲜花,在厘米萼片和花瓣的长度和宽度。

    定义变量和响应变量预测指标。

    X =量(51:最终,);y = strcmp (“多色的”、物种(51:结束));

    定义一个自定义链接函数分对数链接功能。创建三个函数处理定义链接,链接的函数的导数,反向链接的功能。存储单元阵列。

    链接= @(μ)日志(mu. /(1μ));derlink = @(μ)1. /(μ。*(1μ));invlink = @(职责)1. / (1 + exp(职责));F ={链接、derlink invlink};

    使用逻辑回归模型glmfit自定义链接功能。

    b = glmfit (X, y,“二”,“链接”F)
    b =5×142.6378 2.4652 6.6809 -9.4294 -18.2861

    适合使用内置的广义线性模型分对数链接功能,并比较结果。

    b = glmfit (X, y,“二”,“链接”,分对数的)
    b =5×142.6378 2.4652 6.6809 -9.4294 -18.2861

    适合一个广义线性回归模型,包含一个为每个预测拦截和线性项。决定是否执行异常测试模型适合明显好于一个常数模型。

    使用泊松随机数生成样本数据有两个潜在的预测因子X (: 1)X (:, 2)

    rng (“默认”)%的再现性rndvars = randn (100 2);X = [2 + rndvars (: 1), rndvars (:, 2)];μ= exp (1 + X * [1, 2]);y = poissrnd(μ);

    适合一个广义线性回归模型,包含一个为每个预测拦截和线性项。

    [b, dev] = glmfit (X, y,“泊松”);

    第二个输出参数dev是一个异常的健康。

    适合一个广义线性回归模型,只包含一个拦截。指定列的预测变量1 s,并指定“不变”作为“关闭”glmfit不包括在模型中一个常数项。

    [~,dev_noconstant] = glmfit ((100 1), y,“泊松”,“不变”,“关闭”);

    计算之间的区别dev_constantdev

    D = dev_noconstant - dev
    D = 2.9533 e + 05

    D有一个卡方分布2自由度。自由度等于不同数量的估计模型中的参数对应dev和常数模型中参数估计的数量。找到p值的异常测试。

    p = 1 - chi2cdf (D, 2)
    p = 0

    p值表明该模型完全不同于一个常数。

    或者,您可以创建一个广义线性回归模型的数据通过使用泊松fitglm函数。该模型显示包括统计(气^ 2-statistic与常数模型),p价值。

    mdl = fitglm (X, y,“y ~ x1 + x2”,“分布”,“泊松”)
    mdl =广义线性回归模型:日志(y) ~ 1 + x1 + x2 =泊松分布估计系数:估计SE tStat pValue ________ _____交(拦截)1.0405 0.022122 47.034 0 x1 0 x2 0 1.987 0.0063433 313.24 100 0.9968 0.003362 296.49观察,97错误自由度色散:1 x ^ 2-statistic与常数模型:2.95 e + 05, p值= 0

    您还可以使用devianceTest函数拟合模型对象。

    devianceTest (mdl)
    ans =2×4表异常DFE chi2Stat pValue __________ ___ _____ _____日志(y) ~ 1 2.9544 e + 05 99日志(y) ~ 1 x1 + x2 + 107.4 97 2.9533 e + 05年0

    输入参数

    全部折叠

    预测变量指定为一个n——- - - - - -p数字矩阵,n是观察和的数量吗p是预测变量的数量。每一列的X代表一个变量,每一行代表一个观察。

    默认情况下,glmfit包括一个模型中的常数项。不要直接添加一个列的1 sX。您可以更改默认的行为glmfit通过指定“不变”名称-值参数。

    数据类型:|

    响应变量指定为一个向量或矩阵。

    • 如果分配不是“二”,然后y必须是一个n1的向量,n是观测的数量。中的每个条目y的响应相应的行吗X。数据类型必须是单引号或双。

    • 如果分配“二”,然后y是一个n1在每个观测向量指示成功或失败,或一个n2矩阵的第一列显示成功的数量为每个观察和第二列显示的数量为每个观测试验。

    数据类型:||逻辑|分类

    响应变量的分布,在此表指定为一个值。

    价值 描述
    “正常” 正态分布(默认)
    “二” 二项分布
    “泊松” 泊松分布
    “伽马” 伽马分布
    逆高斯分布的 逆高斯分布

    名称-值参数

    指定可选的双参数作为Name1 = Value1,…,以=家,在那里的名字参数名称和吗价值相应的价值。名称-值参数必须出现在其他参数,但对的顺序无关紧要。

    R2021a之前,用逗号来分隔每一个名称和值,并附上的名字在报价。

    例子:b = glmfit (X, y,“正常”,“链接”,probit)指定的反应是正常的,指示的分布glmfit用概率单位链接功能。

    初始值的系数估计,指定为一个数值向量。默认值是初始拟合值来自输入数据。

    数据类型:|

    为常数项指标(拦截),指定为“上”包括常数项或“关闭”从模型中删除它。

    • “上”(默认)glmfit模型中包括一个常数项并返回一个(p+ 1)1向量的系数估计b,在那里p预测的数量吗X。常数项的系数的第一个元素b

    • “关闭”- - - - - -glmfit省略了常数项并返回p1的向量系数估计b

    例子:“常数”,“关闭”

    指标计算色散参数“二”“泊松”分布,指定为“上”“关闭”

    价值 描述
    “上” 估计色散参数时,计算标准错误。估计色散参数值是培生残差的平方和除以自由度误差(DFE)。
    “关闭” 使用1计算的理论值标准错误(默认)。

    拟合函数总是估计其他发行版的色散。

    例子:“EstDisp”,“上”

    链接功能,使用规范的链接功能,指定为一个内置在以下链接功能表或一个自定义链接功能。

    链接函数名 链接功能 意味着(逆)函数
    “身份”(默认为“正常”分布) f(μ)=μ μ=Xb
    “日志”(默认为“泊松”分布) f(μ)=日志(μ) μ= exp (Xb)
    分对数的(默认为“二”分布) f(μ)=日志(μ/ (1 -μ)) μ= exp (Xb)/ (1 + exp (Xb))
    “probit” f(μ)=Φ1(μ),其中Φ是标准正态分布的累积分布函数 μ=Φ(Xb)

    “重对数”

    f(μ日志(日志)= (μ)) μ= exp (exp (Xb))
    “comploglog” f(μ日志(日志(1 -)=μ)) μ= 1 - exp (exp (Xb))
    “互惠”(默认为“伽马”分布) f(μ)= 1 /μ μ= 1 / (Xb)
    p(一个数字,默认的逆高斯分布的分布与p= 2) f(μ)=μp μ=Xb1 /p

    默认的“链接”值为正则链接函数,取决于指定的反应变量的分布分配论点。

    您可以指定一个自定义链接函数使用一个结构或单元阵列。

    • 结构与三个字段。每个字段的结构(例如,年代)持有一个函数处理,接受一个向量的输入,并返回一个向量的大小:

      • S.Link——链接功能,f(μ)=S.Link(μ)

      • S.Derivative——链接函数的导数

      • S.Inverse——反向链接功能,μ=S.Inverse(Xb)

    • 单元阵列的形式{FL FD FI}定义链接的函数(FL(亩))、关联函数的导数(FD =(μ)/ dmu阐述)和反向链接功能(FI = FL ^ (1))。每个条目包含一个函数处理,接受一个向量的输入,并返回一个向量的大小相同。

    函数定义的链接关系f(μ)=X*b之间的平均响应μ和预测的线性组合X*b

    例子:“链接”、“概率单位”

    数据类型:||字符|字符串|结构体|细胞

    健康,抵消变量指定为一个数值向量长度相同的反应y

    glmfit使用抵消作为一个额外的预测系数值固定在1。换句话说,拟合的公式

    f(μ)=抵消+X*b,

    在哪里f是连接函数,μ是平均响应,X*b的线性组合预测吗X。的抵消预测了系数1

    例如,考虑一个泊松回归模型。假设,理论原因,数量是成正比的数量预测一个。通过使用日志链接功能和指定日志(一)作为补偿,你可以迫使模型来满足这个理论的约束。

    数据类型:|

    优化选项,指定为一个结构。这个参数决定了控制参数的迭代算法glmfit用途。

    创建“选项”通过使用函数值statset或通过创建一个结构数组包含字段和值在这个表中描述。

    字段名 价值 默认值
    显示

    数量的信息显示的算法

    • “关闭”——显示任何信息

    • “最后一次”——显示最终的输出

    “关闭”
    麦克斯特

    最大允许的迭代次数,指定为一个正整数

    One hundred.
    TolX

    终止对参数,指定为一个积极的标量

    1 e-6

    您还可以输入statset ('glmfit”)在命令窗口中看到的字段的名称和默认值glmfit接受的“选项”名称-值参数。

    例子:“选项”,statset(“显示”、“最后”,麦克斯特,1000)指定要显示的最后信息迭代算法的结果,和迭代允许的最大数量更改为1000。

    数据类型:结构体

    观察体重、指定为一个n1负的标量值的向量,n是观测的数量。

    数据类型:|

    输出参数

    全部折叠

    系数估计,作为一个数值向量返回。

    • 如果“不变”“上”(默认)glmfit模型中包括一个常数项并返回一个(p+ 1)1向量的系数估计b,在那里p预测的数量吗X。常数项的系数的第一个元素b

    • 如果“不变”“关闭”,然后glmfit省略了常数项并返回p1的向量系数估计b

    异常的,作为一个数值返回。比较两个模型的异常是有用的,当一个模型是其他模型的一个特例。异常的两种模型的区别与自由度等于卡方分布的差异两个模型之间的估计参数的数量。

    有关更多信息,请参见异常

    模型的统计数据,作为结构返回以下字段:

    • β——系数估计b

    • 教育部——自由度误差

    • sfit——估计色散参数

    • 年代——理论或色散参数估计

    • estdisp- 0时“EstDisp”“关闭”和1的时候“EstDisp”“上”

    • covb——估计协方差矩阵b

    • se——向量系数估计的标准误差b

    • coeffcorr——相关矩阵b

    • t- - - - - -t统计数据b

    • p- - - - - -p值为b

    • 渣油向量的残差

    • residp——培生残差向量

    • residd——异常残差向量

    • resida——安斯科姆残差向量

    如果你估计色散参数为二项或泊松分布,stats.s等于stats.sfit。同时,的元素stats.se不同的因素stats.s从他们的理论价值。

    更多关于

    全部折叠

    异常

    异常是一个泛化的残差平方和。它措施比饱和模型拟合优度。

    一个模型的异常1两倍的区别的loglikelihood模型1和饱和模型年代。饱和模型是模型参数的最大数量,你可以估计。

    例如,如果你有n观察(y,= 1,2,…,n)可能不同的值XTβ,则可以定义一个饱和模型n参数。让l(b,y)表示的最大价值模型的似然函数的参数b。然后模型的异常1

    2 ( 日志 l ( b 1 , y ) 日志 l ( b 年代 , y ) ) ,

    在哪里b1b年代包含估计模型参数1分别和饱和模型。异常有卡方分布n- - - - - -p自由度,n是在饱和模型和参数的数量p在模型中参数的数量吗1

    假设你有两个不同的广义线性回归模型12,1项的子集2。你可以评估模型的适合通过比较他们的太多D1D2。太多的差异

    D = D 2 D 1 = 2 ( 日志 l ( b 2 , y ) 日志 l ( b 年代 , y ) ) + 2 ( 日志 l ( b 1 , y ) 日志 l ( b 年代 , y ) ) = 2 ( 日志 l ( b 2 , y ) 日志 l ( b 1 , y ) )

    渐近,D卡方分布与自由度v等于参数的数量估计的差异12。你可以获得p这个测试通过使用价值1 - chi2cdf (D, v)

    通常,您检查D使用一个模型2与一个常数项,没有预测。因此,D有一个卡方分布p- 1的自由度。如果分散估计,除以估计色散有差异F分布与p- 1分子的自由度n- - - - - -p分母的自由度。

    提示

    • glmfit对待年代Xy作为缺失值,忽略了他们。

    选择功能

    glmfit是有用的,当你只需要函数的输出参数或当你想在一个循环中重复多次拟合模型。如果你需要进一步调查拟合模型,创建一个广义线性回归模型对象GeneralizedLinearModel通过使用fitglmstepwiseglm。一个GeneralizedLinearModel对象提供了更多的功能glmfit

    • 使用的属性GeneralizedLinearModel调查一个拟合模型。对象属性包括系数估计的信息,汇总统计,拟合方法,输入数据。

    • 使用对象的功能GeneralizedLinearModel预测反应和修改、评价和可视化广义线性回归模型。

    • 你可以找到的信息的输出glmfit使用属性和对象的功能GeneralizedLinearModel

      的输出glmfit 等效值GeneralizedLinearModel
      b 看到估计列的系数财产。
      dev 看到异常财产。
      统计数据

      显示在命令窗口中看到该模型。你可以找到数据模型属性(CoefficientCovariance,系数,分散,DispersionEstimated,残差)。

      色散参数统计数据。年代glmfit是标准的比例因子误差系数,而色散参数分散属性的一个广义线性模型的比例因子的方差响应。因此,stats.s的平方根分散价值。

    引用

    [1]多布森,a·J。介绍了广义线性模型。纽约:查普曼&大厅,1990。

    [2]McCullagh, P。,J. A. Nelder.广义线性模型。纽约:查普曼&大厅,1990。

    [3]Collett D。二进制数据建模。纽约:查普曼&大厅,2002。

    扩展功能

    版本历史

    之前介绍过的R2006a