Calculate Ka, Ks, and Ka/Ks from duplicate gene pairs
Usage
pairs2kaks(
gene_pairs_list,
cds,
model = "MYN",
bp_param = BiocParallel::SerialParam()
)
Arguments
- gene_pairs_list
List of data frames containing duplicated gene pairs as returned by
classify_gene_pairs()
.- cds
List of DNAStringSet objects containing the coding sequences of each gene.
- model
Character scalar indicating which codon model to use. Possible values are "Li", "NG86", "NG", "LWL", "LPB", "MLWL", "MLPB", "GY", "YN", "MYN", "MS", "MA", "GNG", "GLWL", "GLPB", "GMLWL", "GMLPB", "GYN", and "GMYN". Default: "MYN".
- bp_param
BiocParallel back-end to be used. Default:
BiocParallel::SerialParam()
.
Examples
data(diamond_intra)
data(diamond_inter)
data(yeast_annot)
data(yeast_seq)
data(cds_scerevisiae)
blast_list <- diamond_intra
blast_inter <- diamond_inter
pdata <- syntenet::process_input(yeast_seq, yeast_annot)
#> Warning: Direct call of 'as.data.frame.factor()' is deprecated. Use 'as.data.frame.vector()' or 'as.data.frame()' instead
#> Warning: Direct call of 'as.data.frame.integer()' is deprecated. Use 'as.data.frame.vector()' or 'as.data.frame()' instead
#> Warning: Direct call of 'as.data.frame.factor()' is deprecated. Use 'as.data.frame.vector()' or 'as.data.frame()' instead
#> Warning: Direct call of 'as.data.frame.integer()' is deprecated. Use 'as.data.frame.vector()' or 'as.data.frame()' instead
annot <- pdata$annotation["Scerevisiae"]
# Binary classification scheme
pairs <- classify_gene_pairs(annot, blast_list)
td_pairs <- pairs[[1]][pairs[[1]]$type == "TD", ]
gene_pairs_list <- list(
Scerevisiae = td_pairs[seq(1, 3, by = 1), ]
)
cds <- list(Scerevisiae = cds_scerevisiae)
kaks <- pairs2kaks(gene_pairs_list, cds)