gdlc / BGLR-R

GNU General Public License v3.0
101 stars 69 forks source link

Consulta de incorporación de efecto aleatorio Family_recode y estimación de heredabilidad #80

Open MARCPUCV opened 6 days ago

MARCPUCV commented 6 days ago

Muy buenas noches Gustavo, tanto tiempo quería hacerte una consulta es sobre un modelo que estoy ajustando quiero verificar si como pedí el modelo el efecto Family_recode está siendo tomado como aleatorio? Otra cosa, respecto a la estimación de heredabilidad genera varios valores, se debe sacar el valor promedio y eso es lo que se reportaría como heredabilidad al final? Desde ya muchas gracias por tu ayuda. Saludos!!!

Z <-model.matrix(~Y_Lochy$Family_recode-1) set.seed(1234) ETA_Lochy_TLOE<- list(list(~ Trial_tank + Body_Weight, data=Y_Lochy, model= "FIXED"),list(K=A_Lochy,model="RKHS"), list(X=Z,model="BRR",saveEffects=T)) # Adding Family_recode as a random effect Model_Lochy_TLOE<-BGLR(y=y_TLOE,response_type = "gaussian", ETA=ETA_Lochy_TLOE)

Var_a <- scan('ETA_2_varU.dat') Var_Fam <- scan('ETA_3_varB.dat') Var_E <- scan('varE.dat') Var_P = Var_a + Var_Fam + Var_E h2_Lochy_BGLR = Var_a/(Var_P)

TAMBIÉN LO HICE ASÍ

To estimate variance components

Var_e_Lochy_TLOE <- Model_Lochy_TLOE$varE # Estimation of residual variance Var_a_Lochy_TLOE <- Model_Lochy_TLOE$ETA[[2]]$varU # Estimation of additive genetic Var_f_Lochy_TLOE <- Model_Lochy_TLOE$ETA[[3]]$varB # Estimation of family variance Var_pheno_Lochy_TLOE <- Var_a_Lochy_TLOE + Var_f_Lochy_TLOE + Var_e_Lochy_TLOE # Total phenotypic variance h2_Lochy_TLOE <- round(Var_a_Lochy_TLOE / Var_pheno_Lochy_TLOE,2) # Narrow-sense heritability (h²)

perpdgo commented 2 days ago

Que tal Angélica,

En el modelo que tienes list(X=Z,model="BRR",saveEffects=T), estaría incluyendo el término Zb en el modelo, donde b ~ NM(0, \sigma^2_bI), es decir se asigna una distribución normal multivariada con media cero y varianza \sigma^2_b *I al vector b donde I es la matriz identidad.

Respecto a la heredabilidad, se recomienda especificar más iteraciones de las que tiene por defecto la función, por ejemplo nIter=30000, burnIn=15000, thin=10.

El programa guardará el histórico de las iteraciones adelgazadas (30000/10=3000), por lo que habrá que eliminar la primera mitad (15000/10=1500) y sobre estas que quedan habría que obtener el promedio, algo así:

h2_Lochy_BGLR = Var_a/(Var_P) mean(h2_Lochy_BGLR[1501:3000])

Saludos.

On Mon, Nov 25, 2024 at 6:10 PM María Angélica Rueda Calderón < @.***> wrote:

Muy buenas noches Gustavo, tanto tiempo quería hacerte una consulta es sobre un modelo que estoy ajustando quiero verificar si como pedí el modelo el efecto Family_recode está siendo tomado como aleatorio? Otra cosa, respecto a la estimación de heredabilidad genera varios valores, se debe sacar el valor promedio y eso es lo que se reportaría como heredabilidad al final? Desde ya muchas gracias por tu ayuda. Saludos!!!

Z <-model.matrix(Y_Lochy$Family_recode-1) set.seed(1234) ETA_Lochy_TLOE<- list(list( Trial_tank + Body_Weight, data=Y_Lochy, model= "FIXED"),list(K=A_Lochy,model="RKHS"), list(X=Z,model="BRR",saveEffects=T)) # Adding Family_recode as a random effect Model_Lochy_TLOE<-BGLR(y=y_TLOE,response_type = "gaussian", ETA=ETA_Lochy_TLOE)

Var_a <- scan('ETA_2_varU.dat') Var_Fam <- scan('ETA_3_varB.dat') Var_E <- scan('varE.dat') Var_P = Var_a + Var_Fam + Var_E h2_Lochy_BGLR = Var_a/(Var_P)

— Reply to this email directly, view it on GitHub https://github.com/gdlc/BGLR-R/issues/80, or unsubscribe https://github.com/notifications/unsubscribe-auth/AC3ARLTGZ3QMGVV52L6K4ED2CO355AVCNFSM6AAAAABSPFTDVCVHI2DSMVQWIX3LMV43ASLTON2WKOZSGY4TENRXGIYDAOI . You are receiving this because you are subscribed to this thread.Message ID: @.***>