育種數據分析中轉化數據對結果的影響
- 2019 年 12 月 5 日
- 筆記
1. 問題提出
在模型假定中,數據需要符合正態分布,在動物模型分析中,如果對數據進行轉化,對育種值和方差組分變化的情況,進行測試。
2. 示例正常數據
1library(asreml) 2library(learnasreml) 3 4data("animalmodel.dat") 5data("animalmodel.ped") 6 7dat = animalmodel.dat 8ped = animalmodel.ped 9dat[dat==0] = NA 10 11# 原始數據分布 12hist(dat$BWT)

方差組分:
1# 原始數據,計算動物模型方差組分 2head(dat) 3ainv = ainverse(ped) 4m1 = asreml(BWT ~ BYEAR + SEX, random = ~ vm(ANIMAL,ainv),data=dat) 5summary(m1)$varcomp

育種值blup:
1# 計算原始數據育種值blup 2blup = tiqu_blup(coef(m1)$random) 3head(blup)

3. 數據統一減去10
結論:
- 方差組分不變
- 育種值和原育種值相關係數:1
1# 原始數據減去一個常數:10 2# 方差組分不變,育種值不變 3dat$a = dat$BWT - 10 4hist(dat$a) 5m2 = asreml(a ~ BYEAR + SEX, random = ~ vm(ANIMAL,ainv),data=dat) 6summary(m2)$varcomp 7blup1 = tiqu_blup(coef(m2)$random) 8head(blup1) 9cor(blup$effect,blup1$effect)
表型數據分布:

方差組分:

4. 表型數據log10(x)轉化
結論:
- 方差組分變化
- 育種值和原育種值相關:0.9
- 數據轉化後偏離正態分布
1# 原始數據,log10(x)轉化 2# 方差組分變化,育種值與原來育種值相關性係數:0.9 3dat$a = log10(dat$BWT) 4hist(dat$a) # 偏離正態分布 5m2 = asreml(a ~ BYEAR + SEX, random = ~ vm(ANIMAL,ainv),data=dat) 6summary(m2)$varcomp 7blup1 = tiqu_blup(coef(m2)$random) 8cor(blup$effect,blup1$effect) 9plot(blup$effect,blup1$effect)
表型數據分布:

方差組分:

和原育種值相關性分析:

5. 表型數據log10(x+10)轉化
結論:
- 方差組分變化
- 育種值和原育種值相關係數:1
- 數據分布不變,符合正態分布
1# 原始數據,log10(x +10)轉化 2# 方差組分變化,育種值與原來育種值相關性係數:0.99 3dat$a = log10(dat$BWT+10) 4hist(dat$a) # 符合正態分布 5m2 = asreml(a ~ BYEAR + SEX, random = ~ vm(ANIMAL,ainv),data=dat) 6summary(m2)$varcomp 7blup1 = tiqu_blup(coef(m2)$random) 8cor(blup$effect,blup1$effect) 9plot(blup$effect,blup1$effect)
表型數據分布:

方差組分:

育種值相關性分析:

6. 結論
- 混合線性分析數量性狀時,假定表型數據是符合正態分布的,所以當數據嚴重偏態時,需要對數據進行轉化,但是轉化後的數據方差組分和育種值會有變化。
- 分析中,雖然數據要求正態分布,但是對於稍微偏態的數據,模型具有強健性,沒有必要一定是符合正態分布,數據量大時,一般對異常值進行篩選刪除,對數據不做轉化。
- 當數據符合正態分布,強行進行轉化,結果轉化後的分布不符合正態分布,這是育種值的排名是有變化的(no zuo no die, why you try…)
- 育種分析中,一般不做數據的轉化,只做異常值的剔除。因為大家在分析時,有很多參數都是根據未轉化的表型數據進行的評估,進而得到方差組分,遺傳力,遺傳相關。如果強行進行轉化,遺傳參數沒有對比性(拔劍四顧心茫然)。
7. 拔劍四顧心茫然案例
- m1為原始數據的模型
- m2為log10(x)轉化的模型
方差組分變化:

遺傳力變化:

所以,不要輕易做數據轉化,多多考慮加大數據量,或者提高數據品質吧。統計方法不能拯救失敗的數據,只能告訴你數據分析為什麼會失敗,這是我說的。
下面是Fisher說的:
科學試驗做完後再找統計學家分析數據,如同病人死了找醫生進行屍體解剖,醫生會告訴你病人死的原因。同樣,統計學家會告訴你試驗失敗的原因。 ——Ronald Fisher
8. 其它統計名人名言
All models are wrong, but some models are useful | 模型皆有誤,或尤建奇功。 George E. P. Box 在終極的分析中,一切知識都是歷史;在抽象的意義下,一切科學都是數學;在理性的基礎上,所有的判斷都是統計學。 C.R.Rao 統計學是對令人困惑費解的問題做出數字設想的藝術。 David Freedma 統計具有非凡的能力處理各種複雜的問題,它需要非常精細的方法和小心翼翼的解釋。當人類科學探索者在問題的叢林中遇到難以逾越的障礙時,唯有統計工具可為其開闢一條前進的通道。 Francis Galton 對統計學的一知半解常常會造成一些不必要的上當受騙,對統計學的一概排斥往往會造成某些不必要的愚昧無知。 C.R.Rao