#asreml 预测值是NA,且估计状态是aliased

今天处理数据,用predict()获得SED,但预测值、标准误及SED都缺失。估计状态是aliased,即不可估计,上论坛查找原因。

View topic - Predicting over three seasons for many individuals | Forum | VSN International

kiwi Posted: Wed Mar 24, 2010 2:02 am

数据示例:

#                Season      Vine Block     Flower    DM 
# 2007-52-04-14g   2007 52-04-14g    52      first 18.87 
# 2008-52-04-14g   2008 52-04-14g    52 previously 18.64 
# 2009-52-04-14g   2009 52-04-14g    52 previously 17.70 
# 2007-52-04-15a   2007 52-04-15a    52      first 18.08 
# 2008-52-04-15a   2008 52-04-15a    52 previously 17.98 
# 2009-52-04-15a   2009 52-04-15a    52 previously 17.20 
# 2007-52-04-15b   2007 52-04-15b    52      first 17.27 
# 2008-52-04-15b   2008 52-04-15b    52 previously 18.52 
# 2009-52-04-15b   2009 52-04-15b    52 previously 18.50 
# 2007-52-04-15d   2007 52-04-15d    52      first    NA 
# 2008-52-04-15d   2008 52-04-15d    52 previously 18.20
# 
# with(model.df, levels(Block)) 
# [1] "3"  "39" "45" "52" "54" 
# with(model.df, levels(Season)) 
# [1] "2007" "2008" "2009" 
# with(model.df, levels(Flower)) 
# [1] "first"      "previously" 
# length(levels(model.df$Vine)) 
# [1] 2345

模型:

dm.asr <- try(asreml(fixed = DM ~ Season*Flower + Block, 
                     random = ~ped(Vine):corv(Block) + 
                       ped(Vine):idv(Season), 
                     rcov = ~id(Vine):idv(Season), 
                     na.method.X = "include", 
                     ginverse = list(Vine = G.inv$ginv),
                     data = model.df, 
                     workspace = 50e6, maxiter = 50)) 

预测

dict <- predict(dm.asr, classify = "Vine:Season", maxiter = 1) 
use.preds <- dict$predictions$pvals[,1:4]

出现2个问题:

  1. Season和Vine的顺序和原始数据中不一致
tail(use.preds) 
#      Season      Vine predicted.value standard.error 
# 7030   2009 54-13-01b        19.17404       1.100054 
# 7031   2009 54-13-04e        20.88258       1.100054 
# 7032   2009 54-13-12b        19.23295       1.100054 
# 7033   2009 54-14-04b        18.05464       1.100054 
# 7034   2009 54-14-04e        20.76475       1.100054 
# 7035   2009 54-14-04g        19.35078       1.100054

tail(model.df) 
#                Season      Vine Block Flower   DM 
# 2007-54-14-04e   2007 54-14-04e  <NA>   <NA>   NA 
# 2008-54-14-04e   2008 54-14-04e  <NA>   <NA>   NA 
# 2009-54-14-04e   2009 54-14-04e    54  first 23.1 
# 2007-54-14-04g   2007 54-14-04g  <NA>   <NA>   NA 
# 2008-54-14-04g   2008 54-14-04g  <NA>   <NA>   NA 
# 2009-54-14-04g   2009 54-14-04g    54  first 20.7

有点费解,但不是大问题。但是,2007年的每一个Vine的预测都是NA,而其他Season的每个Vine都预测,无论它们是否有读数(根据需要)。 如果我去掉Season 2007,那么2008年的每个预测就都会变成NA。 难道这两种现象是相关的,得到的预测值是可信的吗? 我也想知道如何在模型的随机部分中进行三向交互。 我知道可以在空间模型中完成,但我能够收敛的唯一模型具有“singular”约束,而且z ratios极高。根据我的经验,这个模型所得到的预测值并不可信(即使残差图看起来很好)。

david.butler Posted: Wed Mar 31, 2010 4:15 am

你的模型在固定效应中有Flower x Season,然而,就你的预测而言,“问题”是这是一个不平衡的组合,Season 1 (2007)没有Flower的水平2。 这些项在平均集中并将导致aliasing,在这种情况下,所有2007年预测都将aliased【这几句是解决问题的关键】。 有几个方法可以处理,但一个例子是使用“present”平均,即对数据中存在的组合进行“平均”预测。 在asreml-R中,可以使用'present'参数指定它以进行预测。 如果你添加present=c('Season','Flower'),然后,预测将由Flower x Season列表中的成员组成。
不清楚你是如何去掉2007的,但利用levels=list(Season=c("2008","2009"))你可以只获得2008和2009的预测值。
当前版本的asreml-R不按照分类集中指定项的顺序,目前这由R遇到项的顺序决定。预测值应该是正确的。


具体到我的问题

查看预测结果,可以得到如下信息:

asr_pv$predictions$pvals

Notes:
- The predictions are obtained by averaging across the hypertable
  calculated from model terms constructed solely from factors in
  the averaging and classify sets.
- Use "average" to move ignored factors into the averaging set.

- The SIMPLE averaging set:  Rep 
- Aliased cells:  79.000000
- The overall SED includes non-estimable predictions

                 Clone predicted.value standard.error est.status
1                delta              NA             NA    Aliased
2          orchard2aCK              NA             NA    Aliased
3    RC302xCHANG238-12              NA             NA    Aliased
4  RC302xCHANGhun10-18              NA             NA    Aliased

知道,平均集是Rep,套到上面那个例子中,就是预测因子和Rep的组合不平衡,即有些水平中有,有些没有,所以加一个present=c()即可解决,尽管我的Rep是固定因子。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 219,589评论 6 508
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,615评论 3 396
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 165,933评论 0 356
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,976评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,999评论 6 393
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,775评论 1 307
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,474评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,359评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,854评论 1 317
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,007评论 3 338
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,146评论 1 351
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,826评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,484评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,029评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,153评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,420评论 3 373
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,107评论 2 356