R中的dglm()函数,给出错误;错误:内循环1;“无法更正步长”;

R中的dglm()函数,给出错误;错误:内循环1;“无法更正步长”;,r,bioinformatics,glm,R,Bioinformatics,Glm,我正在R中使用以下参数运行dglm()函数 obj=dglm(sigdat~genotypes, ~genotypes, family="gaussian") 基因型是包含“1”s、“0”s、“2”s的载体,有时还包含NA。矢量如下所示: 1 1 1 1 NA NA NA 1 1 NA 1 NA NA 1 1 1 NA 1 1 NA 1 1 1 0 1 2 1 1 1 1 NA 1 1 1 NA 1 0 1 0 0 NA NA 1

我正在R中使用以下参数运行dglm()函数

obj=dglm(sigdat~genotypes, ~genotypes, family="gaussian")
基因型是包含“1”s、“0”s、“2”s的载体,有时还包含NA。矢量如下所示:

1  1  1  1 NA NA NA  1  1 NA  1 NA NA  1  1  1 NA  1  1 NA  1  1  1  0  1  2  1  1  1  1 NA  1  1  1 NA  1  0  1  0  0 NA NA  1  1 NA NA  1  1 NA NA  0  1 NA  1  0 NA  2  0  2  1  1  1  0  0  1  1  0  0  > 0  1  0  1  1  1  2  1  1  0  0  1  1  0 NA NA  0  0  1  1  1  0  1  0  0  1  0  1  2  2  0  1  0  2  2  2  1  0  1  2  0  0  1  1  > 0  1  0  0  2  0  1  0  0  0  1  2  0  0  0  0  1  1  1  0
 0  0  0  0  0  1  0  1  0  0  0  0  1  1  0  1  1  0  1  1  1  0  0 NA  1 NA  1  1  0  0  0 NA  0  1  1 NA  1  1 NA  0  1
Sigdat也是命名值的向量,长度为173,范围为7.838156到12.216716。我得到的全部错误是

错误:内部循环1;无法更正步长。此外:警告 消息:由于分歧,步长被截断“

有人知道潜在的问题是什么吗。我很想说,这很可能是NA值,但以前我使用包含NAs的向量运行dglm时,它运行得很好


谢谢。

我尝试用sigdat(随机数据)重复您的错误,它运行良好

> genotipes <-as.integer(read.table("test"))
> print(genotipes)
  [1]  1  1  1  1 NA NA NA  1  1 NA  1 NA NA  1  1  1 NA  1  1 NA  1  1  1  0  1
 [26]  2  1  1  1  1 NA  1  1  1 NA  1  0  1  0  0 NA NA  1  1 NA NA  1  1 NA NA
 [51]  0  1 NA  1  0 NA  2  0  2  1  1  1  0  0  1  1  0  0  0  1  0  1  1  1  2
 [76]  1  1  0  0  1  1  0 NA NA  0  0  1  1  1  0  1  0  0  1  0  1  2  2  0  1
[101]  0  2  2  2  1  0  1  2  0  0  1  1  0  1  0  0  2  0  1  0  0  0  1  2  0
[126]  0  0  0  1  1  1  0  0  0  0  0  0  1  0  1  0  0  0  0  1  1  0  1  1  0
[151]  1  1  1  0  0 NA  1 NA  1  1  0  0  0 NA  0  1  1 NA  1  1 NA  0  1
> sigdat <- runif(173, min=7.838156, max=12.216716)
> print(sigdat)
  [1]  8.164565  9.223345  8.439246  8.227279 10.172413  8.091817 12.126232
  [8] 10.536475 10.167364  9.082484  9.389653  9.513645  9.137163  9.781100
 [15]  8.814883 10.421745  9.872411  8.102019 11.428681 11.837832  9.303294
 [22]  8.523125  8.789876 11.365426 10.069347 10.833913 10.181413 11.598061
 [29] 10.487968 10.134750  8.968379  9.036283 11.933692 10.883801  8.481673
 [36]  8.423131  9.264636 12.153799  9.026763 11.930977 11.659548  9.148677
 [43]  9.756252 11.877009  9.862082  9.712747 10.457573  8.347946 12.118668
 [50]  9.555714  9.675015  8.193812 10.279953 11.913010 10.863107  9.483558
 [57]  9.519554  8.324625  7.955224  9.496308  8.489656 10.293955  8.410663
 [64]  8.630919 11.340333  9.827923  9.871566  9.869727 12.209274  9.081300
 [71]  9.259319  8.758539  8.981387  9.158397 12.127099 10.450115  9.150297
 [78]  9.736365 11.078254  9.245852 11.775775 11.067813 12.131775 10.432952
 [85] 10.739051 10.746415  8.696789 10.487730  8.121235  8.932307 11.926244
 [92]  8.955440 11.976928  9.012049  9.555102  9.780099  9.986461  8.325373
 [99]  9.177810 11.364752 10.736964  8.219354  9.824370 11.742594  9.864048
[106]  9.796147 10.875237  8.347606  9.425566 10.213180 10.197094  8.900947
[113] 11.981119 10.928866 11.948294  8.354651  9.286106 11.929182 12.111513
[120]  9.518337  9.068797  9.981398 10.349214  8.183307  9.762729  9.532264
[127]  8.991893  9.384712 11.526429 10.243375  9.573278  8.649212  9.587841
[134] 10.155530 12.177552 11.183031  9.276300  9.298656 11.295141 11.149660
[141] 11.543361 10.384034 10.700608 10.926887  9.253857 11.109589 10.099698
[148]  8.308365  9.168018  8.588283 11.774686  8.131716  9.680154  8.967000
[155]  9.194656  9.379713 10.405795 11.925596  7.976078 12.059893 10.897506
[162] 11.557008 10.809068 10.821594  8.750122 10.744927  9.254222 10.265814
[169]  8.566293 10.414132  8.342177 11.068735 11.124901

> obj <- dglm(sigdat~genotipes, ~genotipes, family="gaussian")
> print(obj)

Call:  dglm(formula = sigdat ~ genotipes, dformula = ~genotipes, family = "gaussian")

Coefficients:
(Intercept)    genotipes  
    10.1377      -0.2519  

Degrees of Freedom: 147 Total (i.e. Null);  146 Residual
Null Deviance:      150.5 
Residual Deviance: 148  AIC: NA
甚至,我可以描绘:


谷歌说,
这是由于采样值的高度自相关。
> typeof(genotipes)
[1] "integer"
> typeof(sigdat)
[1] "double"