From bf4b7513e3acc73a025796e96bc59d14bd1416d2 Mon Sep 17 00:00:00 2001 From: Brandon Monier Date: Thu, 22 Sep 2022 19:14:03 -0400 Subject: [PATCH 01/15] Initial commit --- man/as.matrix.TasselGenotypePhenotype.Rd | 17 +++++++++++++++++ man/concatenate.Rd | 15 +++++++++++++++ man/intersectJoin.Rd | 15 +++++++++++++++ man/positionList.Rd | 15 +++++++++++++++ man/readGenotypeTableFromGigwa.Rd | 15 +++++++++++++++ man/siteSummary.Rd | 15 +++++++++++++++ man/taxaList.Rd | 15 +++++++++++++++ man/taxaSummary.Rd | 15 +++++++++++++++ man/unionJoin.Rd | 15 +++++++++++++++ 9 files changed, 137 insertions(+) create mode 100644 man/as.matrix.TasselGenotypePhenotype.Rd create mode 100644 man/concatenate.Rd create mode 100644 man/intersectJoin.Rd create mode 100644 man/positionList.Rd create mode 100644 man/readGenotypeTableFromGigwa.Rd create mode 100644 man/siteSummary.Rd create mode 100644 man/taxaList.Rd create mode 100644 man/taxaSummary.Rd create mode 100644 man/unionJoin.Rd diff --git a/man/as.matrix.TasselGenotypePhenotype.Rd b/man/as.matrix.TasselGenotypePhenotype.Rd new file mode 100644 index 0000000..fa2c2b9 --- /dev/null +++ b/man/as.matrix.TasselGenotypePhenotype.Rd @@ -0,0 +1,17 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/GenotypeTableFunctions.R +\name{as.matrix.TasselGenotypePhenotype} +\alias{as.matrix.TasselGenotypePhenotype} +\title{Coerce genotype table to R matrix} +\usage{ +\method{as.matrix}{TasselGenotypePhenotype}(tasObj, ...) +} +\arguments{ +\item{tasObj}{A \code{TasselGenotypePhenotype} object} + +\item{...}{Additional arguments to be passed to or from methods.} +} +\description{ +Converts a \code{TasselGenotypePhenotype} class into an R + matrix if it contains genotype data. +} diff --git a/man/concatenate.Rd b/man/concatenate.Rd new file mode 100644 index 0000000..56be55b --- /dev/null +++ b/man/concatenate.Rd @@ -0,0 +1,15 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/JoinMethods.R +\name{concatenate} +\alias{concatenate} +\title{Concatenate phenotype tables} +\usage{ +concatenate(x) +} +\arguments{ +\item{x}{A vector of phenotype objects.} +} +\description{ +Concatenate (e.g. bind rows) multiple phenotype objects based + on \code{Taxa} column. +} diff --git a/man/intersectJoin.Rd b/man/intersectJoin.Rd new file mode 100644 index 0000000..9a70cc0 --- /dev/null +++ b/man/intersectJoin.Rd @@ -0,0 +1,15 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/JoinMethods.R +\name{intersectJoin} +\alias{intersectJoin} +\title{Intersect join phenotype tables} +\usage{ +intersectJoin(x) +} +\arguments{ +\item{x}{A vector of phenotype objects.} +} +\description{ +Intersect join multiple phenotype objects based on \code{Taxa} + column. +} diff --git a/man/positionList.Rd b/man/positionList.Rd new file mode 100644 index 0000000..11c4010 --- /dev/null +++ b/man/positionList.Rd @@ -0,0 +1,15 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/PositionListFunctions.R +\name{positionList} +\alias{positionList} +\title{Get position list metadata from genotype table} +\usage{ +positionList(tasObj) +} +\arguments{ +\item{tasObj}{A \code{TasselGenotypePhenotype} object} +} +\description{ +Returns positional data from a \code{TasselGenotypePhenotype} + object +} diff --git a/man/readGenotypeTableFromGigwa.Rd b/man/readGenotypeTableFromGigwa.Rd new file mode 100644 index 0000000..088d38f --- /dev/null +++ b/man/readGenotypeTableFromGigwa.Rd @@ -0,0 +1,15 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/GenotypeTableFunctions.R +\name{readGenotypeTableFromGigwa} +\alias{readGenotypeTableFromGigwa} +\title{Read genotype data from GIGWA using QBMS} +\usage{ +readGenotypeTableFromGigwa(gigwa) +} +\arguments{ +\item{gigwa}{A \code{QBMS}-formatted GIGWA data frame object} +} +\description{ +Reads and stores genotype information from a + \code{QBMS}-formatted data frame from a GIGWA server +} diff --git a/man/siteSummary.Rd b/man/siteSummary.Rd new file mode 100644 index 0000000..f0154ae --- /dev/null +++ b/man/siteSummary.Rd @@ -0,0 +1,15 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/GenotypeTableFunctions.R +\name{siteSummary} +\alias{siteSummary} +\title{Get site summary of genotype table} +\usage{ +siteSummary(tasObj) +} +\arguments{ +\item{tasObj}{A \code{TasselGenotypePhenotype} object} +} +\description{ +Returns positional data from a \code{TasselGenotypePhenotype} + object +} diff --git a/man/taxaList.Rd b/man/taxaList.Rd new file mode 100644 index 0000000..9f98d08 --- /dev/null +++ b/man/taxaList.Rd @@ -0,0 +1,15 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/TaxaListFunctions.R +\name{taxaList} +\alias{taxaList} +\title{Get list of taxa from TASSEL data} +\usage{ +taxaList(tasObj) +} +\arguments{ +\item{tasObj}{A \code{TasselGenotypePhenotype} object} +} +\description{ +Returns a list of taxa from a \code{TasselGenotypePhenotype} + object +} diff --git a/man/taxaSummary.Rd b/man/taxaSummary.Rd new file mode 100644 index 0000000..c68b6e8 --- /dev/null +++ b/man/taxaSummary.Rd @@ -0,0 +1,15 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/GenotypeTableFunctions.R +\name{taxaSummary} +\alias{taxaSummary} +\title{Get taxa summary of genotype table} +\usage{ +taxaSummary(tasObj) +} +\arguments{ +\item{tasObj}{A \code{TasselGenotypePhenotype} object} +} +\description{ +Returns taxa data from a \code{TasselGenotypePhenotype} + object +} diff --git a/man/unionJoin.Rd b/man/unionJoin.Rd new file mode 100644 index 0000000..45b0651 --- /dev/null +++ b/man/unionJoin.Rd @@ -0,0 +1,15 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/JoinMethods.R +\name{unionJoin} +\alias{unionJoin} +\title{Union join phenotype tables} +\usage{ +unionJoin(x) +} +\arguments{ +\item{x}{A vector of phenotype objects.} +} +\description{ +Union join multiple phenotype objects based on \code{Taxa} + column. +} From 4f47985e24a8029827b2b2157cdcb1e16c728714 Mon Sep 17 00:00:00 2001 From: Brandon Monier Date: Thu, 22 Sep 2022 19:14:22 -0400 Subject: [PATCH 02/15] Initial commit --- R/JoinMethods.R | 124 ++++++++++++++++++++++++ tests/testthat/test_genotype_coercion.R | 19 ++++ tests/testthat/test_gigwa.R | 21 ++++ tests/testthat/test_joining.R | 95 ++++++++++++++++++ tests/testthat/test_pca.R | 30 ++++++ 5 files changed, 289 insertions(+) create mode 100644 R/JoinMethods.R create mode 100644 tests/testthat/test_genotype_coercion.R create mode 100644 tests/testthat/test_gigwa.R create mode 100644 tests/testthat/test_joining.R create mode 100644 tests/testthat/test_pca.R diff --git a/R/JoinMethods.R b/R/JoinMethods.R new file mode 100644 index 0000000..480d674 --- /dev/null +++ b/R/JoinMethods.R @@ -0,0 +1,124 @@ +## ---- +#' @title Intersect join phenotype tables +#' +#' @description Intersect join multiple phenotype objects based on \code{Taxa} +#' column. +#' +#' @param x A vector of phenotype objects. +#' +#' @importFrom rJava .jnew +#' +#' @export +intersectJoin <- function(x) { + phenoBuilder <- rJava::.jnew("net.maizegenetics.phenotype.PhenotypeBuilder") + phenotypes <- rJava::.jnew("java.util.ArrayList") + + classes <- vapply(x, class, "character") + + if (all(classes == "TasselGenotypePhenotype")) { + capture <- lapply(x, function(i) phenotypes$add(i@jPhenotypeTable)) + + intersectPhenotype <- .tasselObjectConstructor( + phenoBuilder$ + fromPhenotypeList(phenotypes)$ + intersectJoin()$ + build()$ + get(0L) + ) + } else { + gp <- x[classes == "TasselGenotypePhenotype"] + capture <- lapply(gp, function(i) phenotypes$add(i@jPhenotypeTable)) + + lpca <- x[classes == "jobjRef"] + capture <- lapply(lpca, function(i) phenotypes$add(i)) + + intersectPhenotype <- rTASSEL:::.tasselObjectConstructor( + phenoBuilder$ + fromPhenotypeList(phenotypes)$ + intersectJoin()$ + build()$ + get(0L) + ) + } + + + return(intersectPhenotype) +} + + +## ---- +#' @title Union join phenotype tables +#' +#' @description Union join multiple phenotype objects based on \code{Taxa} +#' column. +#' +#' @param x A vector of phenotype objects. +#' +#' @importFrom rJava .jnew +#' +#' @export +unionJoin <- function(x) { + phenoBuilder <- rJava::.jnew("net.maizegenetics.phenotype.PhenotypeBuilder") + phenotypes <- rJava::.jnew("java.util.ArrayList") + + classes <- vapply(x, class, "character") + + if (all(classes == "TasselGenotypePhenotype")) { + capture <- lapply(x, function(i) phenotypes$add(i@jPhenotypeTable)) + + unionPhenotype <- .tasselObjectConstructor( + phenoBuilder$ + fromPhenotypeList(phenotypes)$ + unionJoin()$ + build()$ + get(0L) + ) + } else { + gp <- x[classes == "TasselGenotypePhenotype"] + capture <- lapply(gp, function(i) phenotypes$add(i@jPhenotypeTable)) + + lpca <- x[classes == "jobjRef"] + capture <- lapply(lpca, function(i) phenotypes$add(i)) + + unionPhenotype <- rTASSEL:::.tasselObjectConstructor( + phenoBuilder$ + fromPhenotypeList(phenotypes)$ + unionJoin()$ + build()$ + get(0L) + ) + } + + return(unionPhenotype) +} + + +## ---- +#' @title Concatenate phenotype tables +#' +#' @description Concatenate (e.g. bind rows) multiple phenotype objects based +#' on \code{Taxa} column. +#' +#' @param x A vector of phenotype objects. +#' +#' @importFrom rJava .jnew +#' +#' @export +concatenate <- function(x) { + phenoBuilder <- rJava::.jnew("net.maizegenetics.phenotype.PhenotypeBuilder") + phenotypes <- rJava::.jnew("java.util.ArrayList") + + capture <- lapply(x, function(i) phenotypes$add(i@jPhenotypeTable)) + + concatPhenotype <- .tasselObjectConstructor( + phenoBuilder$ + fromPhenotypeList(phenotypes)$ + concatenate()$ + build()$ + get(0L) + ) + + return(concatPhenotype) +} + + diff --git a/tests/testthat/test_genotype_coercion.R b/tests/testthat/test_genotype_coercion.R new file mode 100644 index 0000000..2048919 --- /dev/null +++ b/tests/testthat/test_genotype_coercion.R @@ -0,0 +1,19 @@ + +genoPathHMP <- system.file( + "extdata", + "mdp_genotype.hmp.txt", + package = "rTASSEL" +) +tasGeno <- readGenotypeTableFromPath( + path = genoPathHMP +) + + +test_that("Genotype table coercion to matrix returns correct data", { + m <- as.matrix(tasGeno) + + expect_equal(dim(m), c(281, 3093)) + +}) + + diff --git a/tests/testthat/test_gigwa.R b/tests/testthat/test_gigwa.R new file mode 100644 index 0000000..800e3f2 --- /dev/null +++ b/tests/testthat/test_gigwa.R @@ -0,0 +1,21 @@ + +exampleGigwa <- data.frame( + `rs#` = paste0("snp_id_", 1:5), + alleles = c("A/G", "A/G", "G/C", "G/C", "G/T"), + chrom = c("Sb01", "Sb01", "Sb02", "Sb02", "Sb03"), + pos = c(123, 5324, 235, 5678, 412), + ind1 = rep(0, 5), + ind2 = rep(1, 5), + ind3 = rep(2, 5), + ind4 = c(0, 1, 0, 2, 2), + check.names = FALSE +) + +test_that("`readGenotypeTableFromGigwa()` returns correct data", { + myGt <- readGenotypeTableFromGigwa(exampleGigwa) + + expect_equal(getTaxaIDs(myGt), c("ind1", "ind2", "ind3", "ind4")) +}) + + + diff --git a/tests/testthat/test_joining.R b/tests/testthat/test_joining.R new file mode 100644 index 0000000..25c7918 --- /dev/null +++ b/tests/testthat/test_joining.R @@ -0,0 +1,95 @@ +## Intersect and union tests ----- +phA <- readPhenotypeFromDataFrame( + data.frame( + taxa = c("a", "b", "c", "d"), + weight = c(120, 150, 100, 70) + ), "taxa" +) + +phB <- readPhenotypeFromDataFrame( + data.frame( + taxa = c("a", "b", "c"), + height = c(12, 15, 10) + ), "taxa" +) + +test_that("Intersect join returns correct values", { + + intersectPheno <- intersectJoin(c(phA, phB)) + expect_equal(getTaxaIDs(intersectPheno), c("a", "b", "c")) + + phenoAttrib <- extractPhenotypeAttDf(intersectPheno@jPhenotypeTable) + expect_equal(phenoAttrib$traitName, c("Taxa", "weight", "height")) +}) + +test_that("Union join returns correct values", { + unionPheno <- unionJoin(c(phA, phB)) + expect_equal(getTaxaIDs(unionPheno), c("a", "b", "c", "d")) + + phenoAttrib <- extractPhenotypeAttDf(unionPheno@jPhenotypeTable) + expect_equal(phenoAttrib$traitName, c("Taxa", "weight", "height")) +}) + + + +## Concatenation tests ---- +phA1 <-readPhenotypeFromDataFrame( + data.frame( + taxa = c("a", "b", "c"), + height = c(12, 15, 10) + ), "taxa" +) + +phA2 <- readPhenotypeFromDataFrame( + data.frame( + taxa = c("d", "e", "f", "g"), + height = c(14, 50, 13, 23) + ), "taxa" +) + +test_that("Concatenation returns correct values", { + concatPheno <- concatenate(c(phA1, phA2)) + expect_equal(getTaxaIDs(concatPheno), c("a", "b", "c", "d", "e", "f", "g")) + + phenoAttrib <- extractPhenotypeAttDf(concatPheno@jPhenotypeTable) + expect_equal(phenoAttrib$traitName, c("Taxa", "height")) +}) + + + +## PCA testing ---- +genoPathHMP <- system.file( + "extdata", + "mdp_genotype.hmp.txt", + package = "rTASSEL" +) +phenoPath <- system.file( + "extdata", + "mdp_traits_nomissing.txt", + package = "rTASSEL" +) +tasGeno <- readGenotypeTableFromPath( + path = genoPathHMP +) +tasPheno <- readPhenotypeFromPath( + path = phenoPath +) +pcaRes <- pca(tasGeno) + +test_that("Joining returns correct values with PCA objects", { + intersectPheno <- intersectJoin(c(pcaRes, tasPheno)) + phenoAttrib <- extractPhenotypeAttDf(intersectPheno@jPhenotypeTable) + expect_equal( + phenoAttrib$traitName, + c("Taxa", "EarHT", "dpoll", "EarDia", "PC1", "PC2", "PC3", "PC4", "PC5") + ) + + unionPheno <- unionJoin(c(pcaRes, tasPheno)) + phenoAttrib <- extractPhenotypeAttDf(unionPheno@jPhenotypeTable) + expect_equal( + phenoAttrib$traitName, + c("Taxa", "EarHT", "dpoll", "EarDia", "PC1", "PC2", "PC3", "PC4", "PC5") + ) +}) + + diff --git a/tests/testthat/test_pca.R b/tests/testthat/test_pca.R new file mode 100644 index 0000000..51dabe5 --- /dev/null +++ b/tests/testthat/test_pca.R @@ -0,0 +1,30 @@ + +genoPathHMP <- system.file( + "extdata", + "mdp_genotype.hmp.txt", + package = "rTASSEL" +) +tasGeno <- readGenotypeTableFromPath( + path = genoPathHMP +) + + +test_that("pca() returns correct data", { + pcaRes <- pca(tasGeno) + + expect_equal( + names(pcaRes), + c("PC_Datum", "Eigenvalues_Datum", "Eigenvectors_Datum", "jPcaObj") + ) + + expect_equal( + rJava::.jclass(pcaRes$jPcaObj), + "net.maizegenetics.phenotype.CorePhenotype" + ) +}) + + + + + + From 4c9a910c2d7ec7a00bde644d19dfb96e1e43234a Mon Sep 17 00:00:00 2001 From: Brandon Monier Date: Thu, 22 Sep 2022 19:14:42 -0400 Subject: [PATCH 03/15] Add genotype reading and extraction methods --- NAMESPACE | 9 ++ R/AnalysisRelatednessFunctions.R | 5 +- R/GenotypeTableFunctions.R | 150 +++++++++++++++++++++++++++++++ R/PositionListFunctions.R | 34 +++++++ R/TaxaListFunctions.R | 20 +++++ R/Utilities.R | 3 +- inst/java/sTASSEL.jar | Bin 3774442 -> 3776037 bytes tests/testthat/test_phenotype.R | 2 +- 8 files changed, 220 insertions(+), 3 deletions(-) diff --git a/NAMESPACE b/NAMESPACE index bcdd907..a03fd42 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -1,8 +1,10 @@ # Generated by roxygen2: do not edit by hand S3method(as.matrix,TasselDistanceMatrix) +S3method(as.matrix,TasselGenotypePhenotype) export(asTasselDistanceMatrix) export(assocModelFitter) +export(concatenate) export(createTree) export(distanceMatrix) export(exportGenotypeTable) @@ -13,6 +15,7 @@ export(getPhenotypeDF) export(getSumExpFromGenotypeTable) export(imputeLDKNNi) export(imputeNumeric) +export(intersectJoin) export(kinshipMatrix) export(ldJavaApp) export(ldPlot) @@ -20,14 +23,20 @@ export(linkageDiseq) export(manhattanPlot) export(mds) export(pca) +export(positionList) export(readGenotypePhenotype) +export(readGenotypeTableFromGigwa) export(readGenotypeTableFromPath) export(readPhenotypeFromDataFrame) export(readPhenotypeFromPath) export(readTasselDistanceMatrix) export(seqDiversity) +export(siteSummary) export(startLogger) +export(taxaList) +export(taxaSummary) export(treeJavaApp) +export(unionJoin) exportClasses(TasselDistanceMatrix) exportClasses(TasselGenotypePhenotype) exportMethods(colnames) diff --git a/R/AnalysisRelatednessFunctions.R b/R/AnalysisRelatednessFunctions.R index 04c3091..895d691 100644 --- a/R/AnalysisRelatednessFunctions.R +++ b/R/AnalysisRelatednessFunctions.R @@ -304,8 +304,11 @@ pca <- function( names(reportBody) <- unlist(reportNames) colnames(reportBody$Eigenvalues_Datum) <- gsub(" ", "_", colnames(reportBody$Eigenvalues_Datum)) + # Add `CorePhenotype` object to return + reportBody$jPcaObj <- pcaRes$getDataWithName("PC_Datum")$get(0L)$getData() + if (!reportEigenvalues && !reportEigenvectors) { - return(reportBody[[1]]) + return(reportBody[c("PC_Datum", "jPcaObj")]) } else { return(reportBody) } diff --git a/R/GenotypeTableFunctions.R b/R/GenotypeTableFunctions.R index 5cd8a03..7179189 100644 --- a/R/GenotypeTableFunctions.R +++ b/R/GenotypeTableFunctions.R @@ -46,6 +46,7 @@ readGenotypeTableFromPath <- function(path, keepDepth = FALSE, sortPositions = F } +## ---- #' @title Create Summarized Experiment from a TASSEL Genotype Table #' #' @description This function will generate an object of @@ -114,6 +115,7 @@ getSumExpFromGenotypeTable <- function(tasObj, } +## ---- ## Get a GenotypeTable - not exported (house keeping) getGenotypeTable <- function(jtsObject) { if(is(jtsObject, "TasselGenotypePhenotype")) { @@ -130,6 +132,7 @@ getGenotypeTable <- function(jtsObject) { } +## ---- ## Return min/max physical positions from genotype tables (house keeping) #' @importFrom rJava .jevalArray #' @importFrom rJava is.jnull @@ -159,6 +162,7 @@ getMinMaxPhysPositions <- function(tasObj) { } +## ---- ## Return min/max physical positions from genotype tables (house keeping) #' @importFrom rJava .jevalArray #' @importFrom rJava is.jnull @@ -183,3 +187,149 @@ getMinMaxVarSites <- function(tasObj) { } +##---- +#' @title Read genotype data from GIGWA using QBMS +#' +#' @description Reads and stores genotype information from a +#' \code{QBMS}-formatted data frame from a GIGWA server +#' +#' @param gigwa A \code{QBMS}-formatted GIGWA data frame object +#' +#' @importFrom rJava .jarray +#' @importFrom rJava J +#' +#' @export +readGenotypeTableFromGigwa <- function(gigwa) { + plugin <- rJava::J("net/maizegenetics/plugindef/GenerateRCode") + + matrixSub <- as.matrix(gigwa[, 5:ncol(gigwa)]) + mode(matrixSub) <- "integer" + + myGt <- plugin$createGenotypeFromRDataFrameElements( + rJava::.jarray(colnames(gigwa[, 5:ncol(gigwa)])), + rJava::.jarray(gigwa$chrom), + rJava::.jarray(as.integer(gigwa$pos)), + rJava::.jarray(gigwa$`rs#`), + rJava::.jarray(gigwa$alleles), + rJava::.jarray(matrixSub, dispatch = TRUE) + ) + + return(.tasselObjectConstructor(myGt)) +} + + +## ---- +#' @title Coerce genotype table to R matrix +#' +#' @description Converts a \code{TasselGenotypePhenotype} class into an R +#' matrix if it contains genotype data. +#' +#' @param tasObj A \code{TasselGenotypePhenotype} object +#' @param ... Additional arguments to be passed to or from methods. +#' +#' @importFrom rJava .jevalArray +#' +#' @export +as.matrix.TasselGenotypePhenotype <- function(tasObj, ...) { + plugin <- rJava::J("net/maizegenetics/plugindef/GenerateRCode") + + if (class(tasObj) != "TasselGenotypePhenotype") { + stop("`tasObj` must be of class `TasselGenotypePhenotype`") + } + + if (rJava::is.jnull(tasObj@jGenotypeTable)) { + stop("`tasObj` must contain genotype data") + } + + jg <- tasObj@jGenotypeTable + m <- rJava::.jevalArray(plugin$genotypeTableToDosageByteArray(jg), simplify = TRUE) + mode(m) <- "integer" + + siteNames <- positionList(tasObj) + + m[m == 128] <- NA + colnames(m) <- siteNames$Name + rownames(m) <- getTaxaIDs(tasObj) + + return(m) +} + + +## ---- +#' @title Get site summary of genotype table +#' +#' @description Returns positional data from a \code{TasselGenotypePhenotype} +#' object +#' +#' @param tasObj A \code{TasselGenotypePhenotype} object +#' +#' @export +siteSummary <- function(tasObj) { + if (class(tasObj) != "TasselGenotypePhenotype") { + stop("`tasObj` must be of class `TasselGenotypePhenotype`") + } + + if (rJava::is.jnull(tasObj@jGenotypeTable)) { + stop("`tasObj` must contain genotype data") + } + + plugin <- rJava::new( + rJava::J("net.maizegenetics.analysis.data.GenotypeSummaryPlugin"), + rJava::.jnull(), + FALSE + ) + + plugin$setParameter("overview", tolower(as.character(FALSE))) + plugin$setParameter("siteSummary", tolower(as.character(TRUE))) + plugin$setParameter("taxaSummary", tolower(as.character(FALSE))) + + dataSet <- rJava::J("net.maizegenetics.plugindef.DataSet") + summaryResults <- plugin$processData(dataSet$getDataSet(tasObj@jGenotypeTable)) + + return( + tableReportToDF( + summaryResults$getData(0L)$getData() + ) + ) +} + + +## ---- +#' @title Get taxa summary of genotype table +#' +#' @description Returns taxa data from a \code{TasselGenotypePhenotype} +#' object +#' +#' @param tasObj A \code{TasselGenotypePhenotype} object +#' +#' @export +taxaSummary <- function(tasObj) { + if (class(tasObj) != "TasselGenotypePhenotype") { + stop("`tasObj` must be of class `TasselGenotypePhenotype`") + } + + if (rJava::is.jnull(tasObj@jGenotypeTable)) { + stop("`tasObj` must contain genotype data") + } + + plugin <- rJava::new( + rJava::J("net.maizegenetics.analysis.data.GenotypeSummaryPlugin"), + rJava::.jnull(), + FALSE + ) + + plugin$setParameter("overview", tolower(as.character(FALSE))) + plugin$setParameter("siteSummary", tolower(as.character(FALSE))) + plugin$setParameter("taxaSummary", tolower(as.character(TRUE))) + + dataSet <- rJava::J("net.maizegenetics.plugindef.DataSet") + summaryResults <- plugin$processData(dataSet$getDataSet(tasObj@jGenotypeTable)) + + return( + tableReportToDF( + summaryResults$getData(0L)$getData() + ) + ) +} + + diff --git a/R/PositionListFunctions.R b/R/PositionListFunctions.R index 063e26f..4f0e346 100644 --- a/R/PositionListFunctions.R +++ b/R/PositionListFunctions.R @@ -31,6 +31,7 @@ getPositionList <- function(jtsObject) { } +## ---- ## Constructor for GRanges (GenomicRanges) class object - not exported () genomicRanges <- function(genoTable) { jtsPL <- .getTASSELClass(genoTable, "PositionList") @@ -47,3 +48,36 @@ genomicRanges <- function(genoTable) { ) return(gr2) } + + +## ---- +#' @title Get position list metadata from genotype table +#' +#' @description Returns positional data from a \code{TasselGenotypePhenotype} +#' object +#' +#' @param tasObj A \code{TasselGenotypePhenotype} object +#' +#' @importFrom rJava is.jnull +#' @importFrom rJava J +#' @importFrom rJava new +#' +#' @export +positionList <- function(tasObj) { + if (class(tasObj) != "TasselGenotypePhenotype") { + stop("`tasObj` must be of class `TasselGenotypePhenotype`") + } + + if (rJava::is.jnull(tasObj@jGenotypeTable)) { + stop("`tasObj` must contain genotype data") + } + + sites <- rJava::new( + rJava::J("net.maizegenetics.dna.map.PositionListTableReport"), + getPositionList(tasObj) + ) + + return(tableReportToDF(sites)) +} + + diff --git a/R/TaxaListFunctions.R b/R/TaxaListFunctions.R index e862c89..1745a4d 100644 --- a/R/TaxaListFunctions.R +++ b/R/TaxaListFunctions.R @@ -12,6 +12,7 @@ # necessary for extracting TASSEL taxa lists from TASSEL objects. #-------------------------------------------------------------------- +## ---- ## Get Taxa - not exported (house keeping) getTaxaList <- function(jtsObject) { if(is(jtsObject, "TasselGenotypePhenotype")) { @@ -32,6 +33,25 @@ getTaxaList <- function(jtsObject) { } +## ---- +#' @title Get list of taxa from TASSEL data +#' +#' @description Returns a list of taxa from a \code{TasselGenotypePhenotype} +#' object +#' +#' @param tasObj A \code{TasselGenotypePhenotype} object +#' +#' @export +taxaList <- function(tasObj) { + if (class(tasObj) != "TasselGenotypePhenotype") { + stop("`tasObj` must be of class `TasselGenotypePhenotype`") + } + + return(getTaxaIDs(tasObj)) +} + + + ## Methods for pulling Taxa or Samples - not exported (house keeping) #' @importFrom rJava J getTaxaIDs <- function(tasObj) { diff --git a/R/Utilities.R b/R/Utilities.R index 20c122c..8164d64 100644 --- a/R/Utilities.R +++ b/R/Utilities.R @@ -27,7 +27,8 @@ tableReportToDF <- function(x) { tabRepCols <- do.call("data.frame", c(tabRepCols, stringsAsFactors = FALSE)) colnames(tabRepCols) <- tabRep$columnNames colnames(tabRepCols) <- gsub(" ", "_", colnames(tabRepCols)) - return(S4Vectors::DataFrame(tabRepCols, check.names = FALSE)) + # return(S4Vectors::DataFrame(tabRepCols, check.names = FALSE)) + return(tabRepCols) } diff --git a/inst/java/sTASSEL.jar b/inst/java/sTASSEL.jar index 0306022f0b2a95608a351e27833a2e27f81df884..d8478ae5433847308fd87715f0d71f1d91297c1e 100644 GIT binary patch delta 136535 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 tFBm^n}9L)VZWWu0e^O2W`~2y(*|k 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 Date: Fri, 23 Sep 2022 09:34:49 -0400 Subject: [PATCH 04/15] Version bump --- DESCRIPTION | 2 +- NEWS | 17 +++++++++++++++++ NEWS.md | 17 +++++++++++++++++ 3 files changed, 35 insertions(+), 1 deletion(-) diff --git a/DESCRIPTION b/DESCRIPTION index a26a489..0ee52ee 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,5 +1,5 @@ Package: rTASSEL -Version: 0.9.28 +Version: 0.9.29 Date: 2018-12-21 Title: R Front-End for TASSEL Authors@R: c( diff --git a/NEWS b/NEWS index fe364ce..7a5da51 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,20 @@ +# CHANGES IN VERSION 0.9.29 +* Added genotype table summary methods: + + `positionList()` + + `taxaSummary()` + + `siteSummary()` +* `TasselGenotypePhenotype` objects containing genotype table data can now + be coerced into R `matrix` objects using the function `as.matrix()` + + This will return a taxa x site matrix where taxa is the number of rows and + sites is the number of columns. +* Added generalized join methods: + + `intersectJoin()` + + `unionJoin()` + + Joins phenotype data data based on taxa ID - similar to the TASSEL API +* Added read method for importing GIGWA data through `QBMS`: + + `readGenotypeTableFromGigwa()` + + # CHANGES IN VERSION 0.9.28 * Fixed `log4j` warning issue + This removes `log4j` warning messages when the `startLogger()` function diff --git a/NEWS.md b/NEWS.md index 96a948a..03a95b3 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,3 +1,20 @@ +# rTASSEL 0.9.29 +* Added genotype table summary methods: + + `positionList()` + + `taxaSummary()` + + `siteSummary()` +* `TasselGenotypePhenotype` objects containing genotype table data can now + be coerced into R `matrix` objects using the function `as.matrix()` + + This will return a taxa x site matrix where taxa is the number of rows and + sites is the number of columns. +* Added generalized join methods: + + `intersectJoin()` + + `unionJoin()` + + Joins phenotype data data based on taxa ID - similar to the TASSEL API +* Added read method for importing GIGWA data through `QBMS`: + + `readGenotypeTableFromGigwa()` + + # rTASSEL 0.9.28 * Fixed `log4j` warning issue + This removes `log4j` warning messages when the `startLogger()` function From adbc9814541b7d41ff8f78e947294d8927d10d78 Mon Sep 17 00:00:00 2001 From: Brandon Monier Date: Fri, 23 Sep 2022 09:35:21 -0400 Subject: [PATCH 05/15] Simplify inheritance checks --- R/GenomicPrediction.R | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/R/GenomicPrediction.R b/R/GenomicPrediction.R index c031010..944acfb 100644 --- a/R/GenomicPrediction.R +++ b/R/GenomicPrediction.R @@ -68,7 +68,7 @@ #' @export genomicPrediction <- function(tasPhenoObj, kinship, doCV = FALSE, kFolds, nIter) { ## Check for correct rTASSEL class - if (class(tasPhenoObj) != "TasselGenotypePhenotype") { + if (!inherits(tasPhenoObj, "TasselGenotypePhenotype")) { stop("`tasObj` must be of class `TasselGenotypePhenotype`", call. = FALSE) } @@ -82,7 +82,8 @@ genomicPrediction <- function(tasPhenoObj, kinship, doCV = FALSE, kFolds, nIter) tasPhenoObj <- tasPhenoObj@jPhenotypeTable ## Check to see if kinship parameter is of rJava and DistanceMatrix class - if (class(kinship) != "TasselDistanceMatrix") { + ## class(kinship) != "TasselDistanceMatrix" + if (!inherits(kinship, "TasselDistanceMatrix")) { stop("TASSEL kinship object is not of TasselDistanceMatrix class", call. = FALSE) } kinship <- kinship@jDistMatrix From aecaaa66908f465a91205500f76c5bed19394819 Mon Sep 17 00:00:00 2001 From: Brandon Monier Date: Fri, 23 Sep 2022 09:35:49 -0400 Subject: [PATCH 06/15] Remove unnecessary colon operators --- R/JoinMethods.R | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/R/JoinMethods.R b/R/JoinMethods.R index 480d674..a369dd1 100644 --- a/R/JoinMethods.R +++ b/R/JoinMethods.R @@ -32,7 +32,7 @@ intersectJoin <- function(x) { lpca <- x[classes == "jobjRef"] capture <- lapply(lpca, function(i) phenotypes$add(i)) - intersectPhenotype <- rTASSEL:::.tasselObjectConstructor( + intersectPhenotype <- .tasselObjectConstructor( phenoBuilder$ fromPhenotypeList(phenotypes)$ intersectJoin()$ @@ -80,7 +80,7 @@ unionJoin <- function(x) { lpca <- x[classes == "jobjRef"] capture <- lapply(lpca, function(i) phenotypes$add(i)) - unionPhenotype <- rTASSEL:::.tasselObjectConstructor( + unionPhenotype <- .tasselObjectConstructor( phenoBuilder$ fromPhenotypeList(phenotypes)$ unionJoin()$ From 55bfa207c95aa9d4d6f05a98a8c31a4c50af809b Mon Sep 17 00:00:00 2001 From: Brandon Monier Date: Fri, 23 Sep 2022 09:36:16 -0400 Subject: [PATCH 07/15] Fix method overload grammar --- R/GenotypeTableFunctions.R | 18 +++++++++--------- man/as.matrix.TasselGenotypePhenotype.Rd | 4 ++-- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/R/GenotypeTableFunctions.R b/R/GenotypeTableFunctions.R index 7179189..026d82d 100644 --- a/R/GenotypeTableFunctions.R +++ b/R/GenotypeTableFunctions.R @@ -224,32 +224,32 @@ readGenotypeTableFromGigwa <- function(gigwa) { #' @description Converts a \code{TasselGenotypePhenotype} class into an R #' matrix if it contains genotype data. #' -#' @param tasObj A \code{TasselGenotypePhenotype} object +#' @param x A \code{TasselGenotypePhenotype} object #' @param ... Additional arguments to be passed to or from methods. #' #' @importFrom rJava .jevalArray #' #' @export -as.matrix.TasselGenotypePhenotype <- function(tasObj, ...) { +as.matrix.TasselGenotypePhenotype <- function(x, ...) { plugin <- rJava::J("net/maizegenetics/plugindef/GenerateRCode") - if (class(tasObj) != "TasselGenotypePhenotype") { - stop("`tasObj` must be of class `TasselGenotypePhenotype`") + if (class(x) != "TasselGenotypePhenotype") { + stop("`x` must be of class `TasselGenotypePhenotype`") } - if (rJava::is.jnull(tasObj@jGenotypeTable)) { - stop("`tasObj` must contain genotype data") + if (rJava::is.jnull(x@jGenotypeTable)) { + stop("`x` must contain genotype data") } - jg <- tasObj@jGenotypeTable + jg <- x@jGenotypeTable m <- rJava::.jevalArray(plugin$genotypeTableToDosageByteArray(jg), simplify = TRUE) mode(m) <- "integer" - siteNames <- positionList(tasObj) + siteNames <- positionList(x) m[m == 128] <- NA colnames(m) <- siteNames$Name - rownames(m) <- getTaxaIDs(tasObj) + rownames(m) <- getTaxaIDs(x) return(m) } diff --git a/man/as.matrix.TasselGenotypePhenotype.Rd b/man/as.matrix.TasselGenotypePhenotype.Rd index fa2c2b9..753b13e 100644 --- a/man/as.matrix.TasselGenotypePhenotype.Rd +++ b/man/as.matrix.TasselGenotypePhenotype.Rd @@ -4,10 +4,10 @@ \alias{as.matrix.TasselGenotypePhenotype} \title{Coerce genotype table to R matrix} \usage{ -\method{as.matrix}{TasselGenotypePhenotype}(tasObj, ...) +\method{as.matrix}{TasselGenotypePhenotype}(x, ...) } \arguments{ -\item{tasObj}{A \code{TasselGenotypePhenotype} object} +\item{x}{A \code{TasselGenotypePhenotype} object} \item{...}{Additional arguments to be passed to or from methods.} } From 52c9274bb30fe97a31d456cd263da735e7ffd139 Mon Sep 17 00:00:00 2001 From: Brandon Monier Date: Fri, 23 Sep 2022 15:11:29 -0400 Subject: [PATCH 08/15] Testing GitHub actions --- .github/workflows/R-CMD-check.yaml | 29 +++ .github/workflows/check-release.yaml | 29 +++ README.md | 2 +- vignettes/rtassel_walkthrough.R | 376 ++++++++++++++++++++++++--- 4 files changed, 399 insertions(+), 37 deletions(-) create mode 100644 .github/workflows/R-CMD-check.yaml create mode 100644 .github/workflows/check-release.yaml diff --git a/.github/workflows/R-CMD-check.yaml b/.github/workflows/R-CMD-check.yaml new file mode 100644 index 0000000..b32be55 --- /dev/null +++ b/.github/workflows/R-CMD-check.yaml @@ -0,0 +1,29 @@ +# Workflow derived from https://github.com/r-lib/actions/tree/v2/examples +# Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help +on: + push: + branches: [main, master] + pull_request: + branches: [main, master] + +name: R-CMD-check + +jobs: + R-CMD-check: + runs-on: ubuntu-latest + env: + GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} + R_KEEP_PKG_SOURCE: yes + steps: + - uses: actions/checkout@v2 + + - uses: r-lib/actions/setup-r@v2 + with: + use-public-rspm: true + + - uses: r-lib/actions/setup-r-dependencies@v2 + with: + extra-packages: any::rcmdcheck + needs: check + + - uses: r-lib/actions/check-r-package@v2 diff --git a/.github/workflows/check-release.yaml b/.github/workflows/check-release.yaml new file mode 100644 index 0000000..b32be55 --- /dev/null +++ b/.github/workflows/check-release.yaml @@ -0,0 +1,29 @@ +# Workflow derived from https://github.com/r-lib/actions/tree/v2/examples +# Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help +on: + push: + branches: [main, master] + pull_request: + branches: [main, master] + +name: R-CMD-check + +jobs: + R-CMD-check: + runs-on: ubuntu-latest + env: + GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} + R_KEEP_PKG_SOURCE: yes + steps: + - uses: actions/checkout@v2 + + - uses: r-lib/actions/setup-r@v2 + with: + use-public-rspm: true + + - uses: r-lib/actions/setup-r-dependencies@v2 + with: + extra-packages: any::rcmdcheck + needs: check + + - uses: r-lib/actions/check-r-package@v2 diff --git a/README.md b/README.md index 2f78a3e..2691c98 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # rTASSEL -[![Build Status](https://travis-ci.com/maize-genetics/rTASSEL.svg?branch=master)](https://travis-ci.com/maize-genetics/rTASSEL) [![Life Cycle Status](https://img.shields.io/badge/lifecycle-maturing-blue.svg)](https://www.tidyverse.org/lifecycle/#maturing) [![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/btmonier/rTASSEL_sandbox/HEAD?labpath=getting_started.ipynb) [![DOI](https://joss.theoj.org/papers/10.21105/joss.04530/status.svg)](https://doi.org/10.21105/joss.04530) +[![Build Status](https://travis-ci.com/maize-genetics/rTASSEL.svg?branch=master)](https://travis-ci.com/maize-genetics/rTASSEL) [![Life Cycle Status](https://img.shields.io/badge/lifecycle-maturing-blue.svg)](https://www.tidyverse.org/lifecycle/#maturing) [![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/btmonier/rTASSEL_sandbox/HEAD?labpath=getting_started.ipynb) [![DOI](https://joss.theoj.org/papers/10.21105/joss.04530/status.svg)](https://doi.org/10.21105/joss.04530) [![R-CMD-check](https://github.com/maize-genetics/rTASSEL/actions/workflows/R-CMD-check.yaml/badge.svg)](https://github.com/maize-genetics/rTASSEL/actions/workflows/R-CMD-check.yaml) ## Objective diff --git a/vignettes/rtassel_walkthrough.R b/vignettes/rtassel_walkthrough.R index ff94d9d..dab6fde 100644 --- a/vignettes/rtassel_walkthrough.R +++ b/vignettes/rtassel_walkthrough.R @@ -1,36 +1,340 @@ -## ----setup, include=FALSE----------------------------------------------------- -library(rTASSEL) - -knitr::opts_chunk$set( - fig.path='figure/graphics-', - cache.path='cache/graphics-', - fig.align='center', - external=TRUE, - echo=TRUE, - warning=FALSE - # fig.pos="H" -) - -## ---- eval=FALSE, echo=TRUE--------------------------------------------------- -# options(java.parameters = c("-Xmx", "-Xms")) - -## ---- eval=FALSE, echo=TRUE--------------------------------------------------- -# rTASSEL::startLogger(fullPath = NULL, fileName = NULL) - -## ---- eval=TRUE, echo=TRUE---------------------------------------------------- -# Load hapmap data -genoPathHMP <- system.file( - "extdata", - "mdp_genotype.hmp.txt", - package = "rTASSEL" -) -genoPathHMP - -# Load VCF data -genoPathVCF <- system.file( - "extdata", - "maize_chr9_10thin40000.recode.vcf", - package = "rTASSEL" -) -genoPathVCF - +## ----setup, include=FALSE----------------------------------------------------- +library(rTASSEL) + +knitr::opts_chunk$set( + fig.path='figure/graphics-', + cache.path='cache/graphics-', + fig.align='center', + external=TRUE, + echo=TRUE, + warning=FALSE + # fig.pos="H" +) + +## ---- eval=FALSE, echo=TRUE--------------------------------------------------- +# options(java.parameters = c("-Xmx", "-Xms")) + +## ---- eval=FALSE, echo=TRUE--------------------------------------------------- +# rTASSEL::startLogger(fullPath = NULL, fileName = NULL) + +## ---- eval=TRUE, echo=TRUE---------------------------------------------------- +# Load hapmap data +genoPathHMP <- system.file( + "extdata", + "mdp_genotype.hmp.txt", + package = "rTASSEL" +) +genoPathHMP + +# Load VCF data +genoPathVCF <- system.file( + "extdata", + "maize_chr9_10thin40000.recode.vcf", + package = "rTASSEL" +) +genoPathVCF + +## ---- eval=TRUE, echo=TRUE---------------------------------------------------- +# Load in hapmap file +tasGenoHMP <- rTASSEL::readGenotypeTableFromPath( + path = genoPathHMP +) + +# Load in VCF file +tasGenoVCF <- rTASSEL::readGenotypeTableFromPath( + path = genoPathVCF +) + +## ---- eval=TRUE, echo=TRUE---------------------------------------------------- +tasGenoHMP + +## ---- eval=TRUE, echo=TRUE---------------------------------------------------- +class(tasGenoHMP) +slotNames(tasGenoHMP) + +## ---- eval=TRUE, echo=TRUE---------------------------------------------------- +tasGenoHMP@jGenotypeTable + +## ---- eval=TRUE, echo=TRUE---------------------------------------------------- +# Read from phenotype path +phenoPath <- system.file("extdata", "mdp_traits.txt", package = "rTASSEL") +phenoPath + +# Load into rTASSEL `TasselGenotypePhenotype` object +tasPheno <- rTASSEL::readPhenotypeFromPath( + path = phenoPath +) + +# Inspect object +tasPheno + +## ---- eval=TRUE, echo=TRUE---------------------------------------------------- +# Create phenotype data frame +phenoDF <- read.table(phenoPath, header = TRUE) +colnames(phenoDF)[1] <- "Taxon" + +# Inspect first few rows +head(phenoDF) + +# Load into rTASSEL `TasselGenotypePhenotype` object +tasPhenoDF <- rTASSEL::readPhenotypeFromDataFrame( + phenotypeDF = phenoDF, + taxaID = "Taxon", + attributeTypes = NULL +) + +# Inspect new object +tasPhenoDF + +## ---- eval=TRUE, echo=TRUE---------------------------------------------------- +tasGenoPheno <- rTASSEL::readGenotypePhenotype( + genoPathOrObj = tasGenoHMP, + phenoPathDFOrObj = tasPheno +) +tasGenoPheno + +## ---- eval=TRUE, echo=TRUE---------------------------------------------------- +tasGenoPhenoDF <- rTASSEL::readGenotypePhenotype( + genoPathOrObj = genoPathHMP, + phenoPathDFOrObj = phenoDF, + taxaID = "Taxon", + attributeTypes = NULL +) +tasGenoPhenoDF + +## ---- eval=TRUE, echo=TRUE---------------------------------------------------- +## Get toy kinship data from package ---- +kinshipPath <- system.file( + "extdata", + "mdp_kinship.txt", + package = "rTASSEL" +) + +## Read ---- +rTASSEL::readTasselDistanceMatrix(kinshipPath) + +## ---- eval=TRUE, echo=TRUE---------------------------------------------------- +tasSumExp <- rTASSEL::getSumExpFromGenotypeTable( + tasObj = tasGenoPheno +) +tasSumExp + +## ---- eval=TRUE, echo=TRUE---------------------------------------------------- +SummarizedExperiment::colData(tasSumExp) + +## ---- eval=TRUE, echo=TRUE---------------------------------------------------- +SummarizedExperiment::rowData(tasSumExp) + +## ---- eval=TRUE, echo=TRUE---------------------------------------------------- +SummarizedExperiment::rowRanges(tasSumExp) + +## ---- eval=TRUE, echo=TRUE---------------------------------------------------- +tasExportPhenoDF <- rTASSEL::getPhenotypeDF( + tasObj = tasGenoPheno +) +tasExportPhenoDF + +## ---- eval=TRUE, echo=TRUE---------------------------------------------------- +tasGenoPhenoFilt <- rTASSEL::filterGenotypeTableSites( + tasObj = tasGenoPheno, + siteMinCount = 150, + siteMinAlleleFreq = 0.05, + siteMaxAlleleFreq = 1.0, + siteRangeFilterType = "none" +) +tasGenoPhenoFilt + +## ---- eval=TRUE, echo=TRUE---------------------------------------------------- +tasGenoPheno + +## ---- eval=TRUE, echo=TRUE---------------------------------------------------- +tasKin <- rTASSEL::kinshipMatrix(tasObj = tasGenoPheno) + +## ---- eval=TRUE, echo=TRUE---------------------------------------------------- +tasDist <- rTASSEL::distanceMatrix(tasObj = tasGenoPheno) + +## ---- eval=TRUE, echo=TRUE---------------------------------------------------- +tasKin + +## ---- eval=TRUE, echo=TRUE---------------------------------------------------- +library(magrittr) + +tasKin %>% colnames() %>% head() +tasKin %>% rownames() %>% head() + +tasKin %>% dim() + +tasKin %>% nrow() +tasKin %>% ncol() + +## ---- eval=TRUE, echo=TRUE---------------------------------------------------- +library(magrittr) + +tasKinR <- tasKin %>% as.matrix() + +## Inspect first 5 rows and columns ---- +tasKinR[1:5, 1:5] + +## ---- eval=TRUE, echo=TRUE---------------------------------------------------- +library(magrittr) + +## Create a dummy pairwise matrix object ---- +set.seed(123) +m <- 10 +s <- matrix(rnorm(100), m) +s[lower.tri(s)] <- t(s)[lower.tri(s)] +diag(s) <- 2 + +## Add sample IDs ---- +colnames(s) <- rownames(s) <- paste0("s_", seq_len(m)) + +testTasselDist <- s %>% asTasselDistanceMatrix() +testTasselDist + +## ---- eval=TRUE, echo=TRUE---------------------------------------------------- +tasGenoHMP + +pcaRes <- pca(tasGenoHMP) + +## ---- eval=TRUE, echo=TRUE---------------------------------------------------- +tasDist + +mdsRes <- mds(tasDist) + +## ---- eval=TRUE, echo=TRUE---------------------------------------------------- +pcaRes + +## ---- echo=TRUE, eval=TRUE---------------------------------------------------- +# Read in phenotype data +phenoPathCov <- system.file("extdata", "mdp_phenotype.txt", package = "rTASSEL") +tasPhenoCov <- rTASSEL::readPhenotypeFromPath(phenoPathCov) + +# Calculate BLUEs +tasBLUE <- rTASSEL::assocModelFitter( + tasObj = tasPhenoCov, + formula = . ~ ., # <- All data is used! + fitMarkers = FALSE, + kinship = NULL, + fastAssociation = FALSE +) + +# Return BLUE output +str(tasBLUE) + +## ---- echo=TRUE, eval=TRUE---------------------------------------------------- +# Calculate GLM +tasGLM <- rTASSEL::assocModelFitter( + tasObj = tasGenoPheno, # <- our prior TASSEL object + formula = list(EarHT, dpoll) ~ ., # <- only EarHT and dpoll are ran + fitMarkers = TRUE, # <- set this to TRUE for GLM + kinship = NULL, + fastAssociation = FALSE +) + +# Return GLM output +str(tasGLM) + +## ---- echo=TRUE, eval=TRUE---------------------------------------------------- +# Calculate MLM +tasMLM <- rTASSEL::assocModelFitter( + tasObj = tasGenoPheno, # <- our prior TASSEL object + formula = EarHT ~ ., # <- run only EarHT + fitMarkers = TRUE, # <- set this to TRUE for GLM + kinship = tasKin, # <- our prior kinship object + fastAssociation = FALSE +) + +# Return GLM output +str(tasMLM) + +## ---- echo=TRUE, eval=TRUE---------------------------------------------------- +# Read data - need only non missing data! +phenoPathFast <-system.file( + "extdata", + "mdp_traits_nomissing.txt", + package = "rTASSEL" +) + +# Creat rTASSEL object - use prior TASSEL genotype object +tasGenoPhenoFast <- rTASSEL::readGenotypePhenotype( + genoPathOrObj = tasGenoHMP, + phenoPathDFOrObj = phenoPathFast +) + + +# Calculate MLM +tasFAST <- rTASSEL::assocModelFitter( + tasObj = tasGenoPhenoFast, # <- our prior TASSEL object + formula = . ~ ., # <- run all of the phenotype data + fitMarkers = TRUE, # <- set this to TRUE for GLM + kinship = NULL, + fastAssociation = TRUE # <- set this to TRUE for fast assoc. +) + +# Return GLM output +str(tasFAST) + +## ---- echo=TRUE, eval=TRUE---------------------------------------------------- +phyloTree <- createTree( + tasObj = tasGenoHMP, + clustMethod = "Neighbor_Joining" +) + +## ---- echo=TRUE, eval=TRUE---------------------------------------------------- +phyloTree + +## ---- echo=TRUE, eval=FALSE--------------------------------------------------- +# # Generate Manhattan plot for ear height trait +# manhattanEH <- manhattanPlot( +# assocStats = tasMLM$MLM_Stats, +# trait = "EarHT", +# threshold = 5 +# ) +# +# manhattanEH + +## ---- echo=TRUE, eval=FALSE--------------------------------------------------- +# # Filter genotype table by position +# tasGenoPhenoFilt <- filterGenotypeTableSites( +# tasObj = tasGenoPheno, +# siteRangeFilterType = "position", +# startPos = 228e6, +# endPos = 300e6, +# startChr = 2, +# endChr = 2 +# ) +# +# # Generate and visualize LD +# myLD <- ldPlot( +# tasObj = tasGenoPhenoFilt, +# ldType = "All", +# plotVal = "r2", +# verbose = FALSE +# ) +# +# myLD + +## ---- echo=TRUE, eval=FALSE--------------------------------------------------- +# library(magrittr) +# +# tasGenoHMP %>% ldJavaApp(windowSize = 100) + +## ---- echo=TRUE, eval=FALSE--------------------------------------------------- +# library(magrittr) +# +# tasGenoHMP %>% +# filterGenotypeTableTaxa( +# taxa = c("33-16", "38-11", "4226", "4722", "A188", "A214N") +# ) %>% +# treeJavaApp() + +## ---- echo=TRUE, eval=FALSE--------------------------------------------------- +# tasCV <- genomicPrediction( +# tasPhenoObj = tasGenoPheno, +# kinship = tasKin, +# doCV = TRUE, +# kFolds = 5, +# nIter = 1 +# ) +# head(tasCV) + From 86a7950d2a55d047e16566064473ecde3e87098f Mon Sep 17 00:00:00 2001 From: Brandon Monier Date: Fri, 23 Sep 2022 15:14:53 -0400 Subject: [PATCH 09/15] Testing GitHub actions --- .github/workflows/check-release.yaml | 29 ---------------------------- 1 file changed, 29 deletions(-) delete mode 100644 .github/workflows/check-release.yaml diff --git a/.github/workflows/check-release.yaml b/.github/workflows/check-release.yaml deleted file mode 100644 index b32be55..0000000 --- a/.github/workflows/check-release.yaml +++ /dev/null @@ -1,29 +0,0 @@ -# Workflow derived from https://github.com/r-lib/actions/tree/v2/examples -# Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help -on: - push: - branches: [main, master] - pull_request: - branches: [main, master] - -name: R-CMD-check - -jobs: - R-CMD-check: - runs-on: ubuntu-latest - env: - GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} - R_KEEP_PKG_SOURCE: yes - steps: - - uses: actions/checkout@v2 - - - uses: r-lib/actions/setup-r@v2 - with: - use-public-rspm: true - - - uses: r-lib/actions/setup-r-dependencies@v2 - with: - extra-packages: any::rcmdcheck - needs: check - - - uses: r-lib/actions/check-r-package@v2 From 308d74b53c76c407c2eea4deaa65851e2a91c221 Mon Sep 17 00:00:00 2001 From: Brandon Monier Date: Fri, 23 Sep 2022 15:22:27 -0400 Subject: [PATCH 10/15] Testing GitHub actions --- .github/workflows/R-CMD-check.yaml | 53 ++++++++++++++++++------------ 1 file changed, 32 insertions(+), 21 deletions(-) diff --git a/.github/workflows/R-CMD-check.yaml b/.github/workflows/R-CMD-check.yaml index b32be55..01450fe 100644 --- a/.github/workflows/R-CMD-check.yaml +++ b/.github/workflows/R-CMD-check.yaml @@ -1,29 +1,40 @@ -# Workflow derived from https://github.com/r-lib/actions/tree/v2/examples -# Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help +# This workflow uses actions that are not certified by GitHub. +# They are provided by a third-party and are governed by +# separate terms of service, privacy policy, and support +# documentation. +# +# See https://github.com/r-lib/actions/tree/master/examples#readme for +# additional example workflows available for the R community. + +name: R + on: push: - branches: [main, master] + branches: [ "master" ] pull_request: - branches: [main, master] + branches: [ "master" ] -name: R-CMD-check +permissions: + contents: read jobs: - R-CMD-check: - runs-on: ubuntu-latest - env: - GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} - R_KEEP_PKG_SOURCE: yes - steps: - - uses: actions/checkout@v2 + build: + runs-on: macos-latest + strategy: + matrix: + r-version: ['3.6.3', '4.1.1'] - - uses: r-lib/actions/setup-r@v2 - with: - use-public-rspm: true - - - uses: r-lib/actions/setup-r-dependencies@v2 + steps: + - uses: actions/checkout@v3 + - name: Set up R ${{ matrix.r-version }} + uses: r-lib/actions/setup-r@f57f1301a053485946083d7a45022b278929a78a with: - extra-packages: any::rcmdcheck - needs: check - - - uses: r-lib/actions/check-r-package@v2 + r-version: ${{ matrix.r-version }} + - name: Install dependencies + run: | + install.packages(c("remotes", "rcmdcheck")) + remotes::install_deps(dependencies = TRUE) + shell: Rscript {0} + - name: Check + run: rcmdcheck::rcmdcheck(args = "--no-manual", error_on = "error") + shell: Rscript {0} From 99260451c37ac29c9c71fa37e568337daaf1a732 Mon Sep 17 00:00:00 2001 From: Brandon Monier Date: Fri, 23 Sep 2022 15:39:09 -0400 Subject: [PATCH 11/15] Testing --- .github/workflows/R-CMD-check.yaml | 40 ------------------------------ 1 file changed, 40 deletions(-) delete mode 100644 .github/workflows/R-CMD-check.yaml diff --git a/.github/workflows/R-CMD-check.yaml b/.github/workflows/R-CMD-check.yaml deleted file mode 100644 index 01450fe..0000000 --- a/.github/workflows/R-CMD-check.yaml +++ /dev/null @@ -1,40 +0,0 @@ -# This workflow uses actions that are not certified by GitHub. -# They are provided by a third-party and are governed by -# separate terms of service, privacy policy, and support -# documentation. -# -# See https://github.com/r-lib/actions/tree/master/examples#readme for -# additional example workflows available for the R community. - -name: R - -on: - push: - branches: [ "master" ] - pull_request: - branches: [ "master" ] - -permissions: - contents: read - -jobs: - build: - runs-on: macos-latest - strategy: - matrix: - r-version: ['3.6.3', '4.1.1'] - - steps: - - uses: actions/checkout@v3 - - name: Set up R ${{ matrix.r-version }} - uses: r-lib/actions/setup-r@f57f1301a053485946083d7a45022b278929a78a - with: - r-version: ${{ matrix.r-version }} - - name: Install dependencies - run: | - install.packages(c("remotes", "rcmdcheck")) - remotes::install_deps(dependencies = TRUE) - shell: Rscript {0} - - name: Check - run: rcmdcheck::rcmdcheck(args = "--no-manual", error_on = "error") - shell: Rscript {0} From 2b2ae03609e183de527e7831d0e886d0fa391d5c Mon Sep 17 00:00:00 2001 From: Brandon Monier Date: Fri, 23 Sep 2022 15:57:46 -0400 Subject: [PATCH 12/15] Initial commit --- .github/workflows/R-CMD-check.yaml | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 .github/workflows/R-CMD-check.yaml diff --git a/.github/workflows/R-CMD-check.yaml b/.github/workflows/R-CMD-check.yaml new file mode 100644 index 0000000..b32be55 --- /dev/null +++ b/.github/workflows/R-CMD-check.yaml @@ -0,0 +1,29 @@ +# Workflow derived from https://github.com/r-lib/actions/tree/v2/examples +# Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help +on: + push: + branches: [main, master] + pull_request: + branches: [main, master] + +name: R-CMD-check + +jobs: + R-CMD-check: + runs-on: ubuntu-latest + env: + GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} + R_KEEP_PKG_SOURCE: yes + steps: + - uses: actions/checkout@v2 + + - uses: r-lib/actions/setup-r@v2 + with: + use-public-rspm: true + + - uses: r-lib/actions/setup-r-dependencies@v2 + with: + extra-packages: any::rcmdcheck + needs: check + + - uses: r-lib/actions/check-r-package@v2 From 3280df9d9615267ec0472c446a065ded7d085060 Mon Sep 17 00:00:00 2001 From: Brandon Monier Date: Fri, 23 Sep 2022 16:16:11 -0400 Subject: [PATCH 13/15] Testing GitHub actions --- .github/workflows/R-CMD-check.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/R-CMD-check.yaml b/.github/workflows/R-CMD-check.yaml index b32be55..2ea944b 100644 --- a/.github/workflows/R-CMD-check.yaml +++ b/.github/workflows/R-CMD-check.yaml @@ -2,7 +2,8 @@ # Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help on: push: - branches: [main, master] + branches: + - 'feature/senegal' pull_request: branches: [main, master] From aaaf678b2a421a0f8302a69b2d72cd18edc86ae4 Mon Sep 17 00:00:00 2001 From: Brandon Monier Date: Fri, 23 Sep 2022 16:57:53 -0400 Subject: [PATCH 14/15] Initial commit --- .github/workflows/pkgdown.yaml | 35 ++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 .github/workflows/pkgdown.yaml diff --git a/.github/workflows/pkgdown.yaml b/.github/workflows/pkgdown.yaml new file mode 100644 index 0000000..f5bfa99 --- /dev/null +++ b/.github/workflows/pkgdown.yaml @@ -0,0 +1,35 @@ +# Workflow derived from https://github.com/r-lib/actions/tree/master/examples +# Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help +on: + push: + branches: [main, master] + release: + types: [published] + workflow_dispatch: + +name: pkgdown + +jobs: + pkgdown: + runs-on: ubuntu-latest + env: + GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} + steps: + - uses: actions/checkout@v2 + + - uses: r-lib/actions/setup-pandoc@v1 + + - uses: r-lib/actions/setup-r@v1 + with: + use-public-rspm: true + + - uses: r-lib/actions/setup-r-dependencies@v1 + with: + extra-packages: pkgdown + needs: website + + - name: Deploy to GitHub pages 🚀 + run: | + git config --local user.name "$GITHUB_ACTOR" + git config --local user.email "$GITHUB_ACTOR@users.noreply.github.com" + Rscript -e 'pkgdown::deploy_to_branch(new_process = FALSE)' From dcfb8f4867b980d79327135623814c758ac44080 Mon Sep 17 00:00:00 2001 From: Brandon Monier Date: Fri, 23 Sep 2022 17:00:01 -0400 Subject: [PATCH 15/15] Change branches --- .github/workflows/R-CMD-check.yaml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/R-CMD-check.yaml b/.github/workflows/R-CMD-check.yaml index 2ea944b..b32be55 100644 --- a/.github/workflows/R-CMD-check.yaml +++ b/.github/workflows/R-CMD-check.yaml @@ -2,8 +2,7 @@ # Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help on: push: - branches: - - 'feature/senegal' + branches: [main, master] pull_request: branches: [main, master]