vhcub is an R package to analyze the co-adaptation of codon usage between a virus and its host.
Please be aware that the current package is no longer being maintained. It has been updated and replaced by the parazitCUB package. Kindly review the new package at the following location: https://github.com/AliYoussef96/parazitCUB
1- Using devtools:
if (!requireNamespace("devtools", quietly=TRUE)){
install.packages("devtools")}
devtools::install_github('AliYoussef96/vhcub')
2- vhcub was developed using R and available on CRAN:
install.packages("vhcub")
3- If 1 and 2 installation instructions failed, please try:
if (!requireNamespace("BiocManager", quietly=TRUE))
install.packages("BiocManager")
BiocManager::install("coRdon")
BiocManager::install("Biostrings")
install.packages("vhcub")
Using vhcub to study the CUB of a virus, its host and the co-adaptation between them is straightforward.
For example;
coding sequences for both Escherichia virus T4 and its host Escherichia coli were downloaded in fasta format from the NCBI database.
# read virus and host fasta files
fasta <- fasta.read("EscherichiavirusT4.fasta","Escherichiacoli.fasta")
fasta.virus <- fasta[[1]]
fasta.host <- fasta[[2]]
# Calculate the GC overall all content as well as GC at first, second and third codon positions for the virus
gc.df <- GC.content(fasta.virus)
# Calculate zscore using syncodon model for statistical dinucleotide over- and underrepresentation
syncodon <- dinuc.syncodon(fasta.virus,permutations=100)
# Calculate zscore using base model for statistical dinucleotide over- and underrepresentation
base <- dinuc.base(fasta.virus,permutations=100)
# Calculate zscore using codon model for statistical dinucleotide over- and underrepresentation
codon <- dinuc.codon(fasta.virus,permutations=100)
# Calculate ENc values for the virus and its host
enc.df.virus <- ENc.values(fasta.virus)
enc.df.host <- ENc.values(fasta.host)
# Calculate SCUO values for the virus
scuo.df <- SCUO.values(fasta.virus)
# Calculate CAI values for the virus using the host sequences as a reference genes set
cai.df <- CAI.values(fasta.virus, enc.df.host, fasta.host, genetic.code="11")
# Calculate RSCU values for the virus and its host
rscu.virus <- RSCU.values(fasta.virus)
rscu.host <- RSCU.values(fasta.host)
# Calculate SiD value for the virus
SiD <- SiD.value(rscu.host,rscu.virus)
# Calculate RCDI values for the virus
rcdi.df <- RCDI.values(fasta.virus,fasta.host, enc.df.host)
Furthermore, vhcub uses ggplot to visualize two important plots named ENc-GC3 plot and PR2plot, which help to explain what are the factors influence a virus's evolution concerning its CUB.
ENc.GC3plot(enc.df.virus,gc.df)
# PR2.plot function need fasta sequences inputs that just only include the four-fold codons
PR2.plot(fasta.virus)
Contributions to the package are welcome
For bugs and suggestions, the most effective way is by raising an issue on the github issue tracker. Github allows you to classify your issues so that we know if it is a bug report, feature request or feedback to the authors.
If you wish to contribute some changes to the code then you should submit a pull request How to create a Pull Request? documentation on pull requests
Anwar AM, Soudy M and Mohamed R. vhcub: Virus-host codon usage co-adaptation analysis [version 1; peer review: 2 approved]. F1000Research 2019, 8:2137 (https://doi.org/10.12688/f1000research.21763.1)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.