Introduction

This is an extension to the previous report titled “Individual and meta-analysis of genomide-wide predictions”. Here, we further show some relationships and estimated breeding values using meta-SNP effects across populations. Note, this document (as well as the previous) uses the same ‘ultimate meat pH’ as the phenotypic variable.

Load Libraries

library(data.table)
library(gwaR)
library(regress)
library(Matrix)
library(knitr)
library(magrittr)
library(ggplot2)
library(kableExtra)
library(qqman)

Load Necessary Functions and datasets

Basically, the gwaR package was used in computing these functions to perform the genome-wide prediction from genomic best linear unbiased prediction (GBLUP).

source("Toolkit_function.R")
source("toolkit_function_Meta_v2.R")
load("Pop1.Rdata")
load("comm_g_var.Rdata")
load("Pop2.Rdata")
load("msu_g_var.Rdata")
load("Pop3.Rdata")
load("marc_g_var.Rdata")

#Required population datasets were loaded as in part1

Meta-Analysis

meta <- meta_gp(N = c(1857, 904, 530), comm_g_var, Pop1, msu_g_var, Pop2,
              marc_g_var, Pop3)
#Summary of meta-analysis
meta$table
Meta analysis table (First 6 rows)
SE_Meta Z_Meta p_Meta \(\beta_Meta\) \(\hat{g}_Meta\)
0.5691040 -2.1916848 0.0284023 -1.2472965 -0.0280941
0.6373828 -0.1952363 0.8452079 -0.1244403 -0.0022345
0.5696505 1.5758466 0.1150612 0.8976818 0.0201806
0.5838699 0.7643431 0.4446628 0.4462769 0.0095500
0.5826945 0.7308853 0.4648492 0.4258828 0.0091503
0.6059635 -1.6794179 0.0930706 -1.0176659 -0.0202182

Output for Estimated genetic variance

kable(x1, caption="Estimated genetic variance", col.names = c("Pop1", "Pop2", "Pop3", "Meta"))%>%kable_styling(latex_options = "scale down")
Estimated genetic variance
Pop1 Pop2 Pop3 Meta
0.0097099 0.0030214 0.0061176 0.0072951

Output for Meta-\(\hat{g}\) using population variances and Meta-\(\hat{g}\)

kable(x2, col.names = c("Pop1", "Pop2", "Pop3", "Meta"))%>%kable_styling(latex_options = "scale down")
Pop1 Pop2 Pop3 Meta
-0.0373941 -0.0116356 -0.0235597 -0.0280941
-0.0029742 -0.0009255 -0.0018739 -0.0022345
0.0268610 0.0083581 0.0169234 0.0201806
0.0127113 0.0039553 0.0080086 0.0095500
0.0121794 0.0037898 0.0076735 0.0091503
-0.0269110 -0.0083737 -0.0169549 -0.0202182

Comparing Individual Estimated \(\hat{g}\) with meta \(\hat{g}\)

par(mfrow= c(1, 3))
par(mar=c(6,5,6,0))
plot(p1, mt, xlab = expression(hat(g)[POP1]), 
     ylab = expression(hat(g)[Meta]), cex.lab= 1.5, col="orangered3")
plot(p2, mt, xlab = expression(hat(g)[POP2]), 
     ylab = expression(hat(g)[Meta]), cex.lab= 1.5, col="gold3")
plot(p3, mt, xlab = expression(hat(g)[POP3]), 
     ylab = expression(hat(g)[Meta]), cex.lab= 1.5, col="forestgreen")
mtext("Individual Estimated SNP effect vs Meta-SNP effect", side =3, line= -4, outer = TRUE)

Comparing Individual Estimated \(\hat{g}\) vs Meta \(\hat{g}\) using population variance

par(mfrow= c(1, 3))
par(mar=c(6,5,6,0))
plot(p1, g1, xlab = expression(hat(g)[POP1]), 
     ylab = expression(hat(g)[Meta]), cex.lab= 1.5, col="skyblue3")
plot(p2, g2, xlab = expression(hat(g)[POP2]), 
     ylab = expression(hat(g)[Meta]), cex.lab= 1.5, col="burlywood3")
plot(p3, g3, xlab = expression(hat(g)[POP3]), 
     ylab = expression(hat(g)[Meta]), cex.lab= 1.5, col="brown3")
mtext("Individual Estimated SNP effect vs Meta-SNP effect using population variance", side =3, line= -4, outer = TRUE)

Breeding values estimated using meta-SNP effect

Pop1 <- read_poly(com_filter$geno, meta$ghat)
## ......................................... 
## Estimated breeding value showing first 6 animals of 1857 : 
##             [,1]
## [1,]  0.02973056
## [2,]  0.01937412
## [3,]  0.05259549
## [4,]  0.03154981
## [5,] -0.01356126
## [6,]  0.04172895
## .........................................
Pop2 <- read_poly(msu_filter$geno, meta$ghat)
## ......................................... 
## Estimated breeding value showing first 6 animals of 904 : 
##             [,1]
## [1,]  0.04290191
## [2,]  0.03637714
## [3,] -0.12191415
## [4,]  0.04274640
## [5,]  0.10285873
## [6,] -0.03380150
## .........................................
Pop3 <- read_poly(mac_filter$geno, meta$ghat)
## ......................................... 
## Estimated breeding value showing first 6 animals of 530 : 
##             [,1]
## [1,]  0.05680378
## [2,] -0.03529593
## [3,] -0.02191941
## [4,] -0.07912480
## [5,] -0.08487892
## [6,] -0.01974606
## .........................................