View source: R/chargeCalculations.R
chargeCalculationGlobal | R Documentation |
This function will determine the charge of a peptide using the Henderson-Hasselbalch Equation. The output is a data frame (default) or a plot of charge calculations along the peptide sequence. Charges are determined globally, or along the entire chain.
chargeCalculationGlobal( sequence, pKaSet = "IPC_protein", pH = 7, plotResults = FALSE, includeTermini = TRUE, sumTermini = TRUE, proteinName = NA, printCitation = FALSE, ... )
sequence |
amino acid sequence as a character string or vector of individual residues. alternatively, a character string of the path to a .fasta / .fa file |
pKaSet |
A character string or data frame. "IPC_protein" by default. Character string to load specific, preloaded pKa sets. c("EMBOSS", "DTASelect", "Solomons", "Sillero", "Rodwell", "Lehninger", "Toseland", "Thurlkill", "Nozaki", "Dawson", "Bjellqvist", "ProMoST", "Vollhardt", "IPC_protein", "IPC_peptide") Alternatively, the user may supply a custom pKa dataset. The format must be a data frame where: Column 1 must be a character vector of residues named "AA" AND Column 2 must be a numeric vector of pKa values. |
pH |
numeric value, 7.0 by default. The environmental pH used to calculate residue charge. |
plotResults |
logical value, FALSE by default.
This determines what is returned. If |
includeTermini, sumTermini |
Logical values, both TRUE by default. This
determines how the calculation handles the N- and C- terminus.
includeTermini determines if the calculation will use the charge of the
amine and carboxyl groups at the ends of the peptide (When TRUE). These
charges are ignored when |
proteinName |
character string with length = 1. optional setting to include the name in the plot title. |
printCitation |
Logical value. FALSE by default.
When |
... |
any additional parameters, especially those for plotting. |
If plotResults = FALSE
, a data frame
is returned with the position, residue, and charge (-1 to +1). If
plotResults = TRUE
, a graphical output is returned (ggplot) showing
the charge distribution.
For users who wish to keep a common aesthetic, the following colors are
used when plotResults = TRUE.
Dynamic line colors:
Close to -1 = "#92140C"
Close to +1 = "#348AA7"
Close to 0 (midpoint) = "grey65" or "#A6A6A6"
pKaData
for residue pKa values and
hendersonHasselbalch
for charge calculations.
Other charge functions:
chargeCalculationLocal()
,
hendersonHasselbalch()
,
netCharge()
#Amino acid sequences can be character strings aaString <- "ACDEFGHIKLMNPQRSTVWY" #Amino acid sequences can also be character vectors aaVector <- c("A", "C", "D", "E", "F", "G", "H", "I", "K", "L", "M", "N", "P", "Q", "R", "S", "T", "V", "W", "Y") #Alternatively, .fasta files can also be used by providing #a character string of the path to the file. exampleDF <- chargeCalculationGlobal(aaString) head(exampleDF) exampleDF <- chargeCalculationGlobal(aaVector) head(exampleDF) #Changing pKa set or pH used for calculations exampleDF_pH5 <- chargeCalculationGlobal(aaString, pH = 5) head(exampleDF_pH5) exampleDF_pH7 <- chargeCalculationGlobal(aaString, pH = 7) head(exampleDF_pH7) exampleDF_EMBOSS <- chargeCalculationGlobal(aaString, pH = 7, pKa = "EMBOSS") head(exampleDF_EMBOSS) #If the termini charge should not be included with includeTermini = F exampleDF_NoTermini <- chargeCalculationGlobal(aaString, includeTermini = FALSE) head(exampleDF_NoTermini) #and how the termini should be handeled with sumTermini exampleDF_SumTermini <- chargeCalculationGlobal(aaString, sumTermini = TRUE) head(exampleDF_SumTermini) exampleDF_SepTermini <- chargeCalculationGlobal(aaString, sumTermini = FALSE) head(exampleDF_SepTermini) #plotResults = TRUE will output a ggplot as a line plot chargeCalculationGlobal(aaString, plot = TRUE) #since it is a ggplot, you can change or annotate the plot gg <- chargeCalculationGlobal(aaVector, window = 3, plot = TRUE) gg <- gg + ggplot2::ylab("Residue Charge") gg <- gg + ggplot2::geom_text(data = exampleDF, ggplot2::aes(label = AA, y = Charge + 0.1)) plot(gg) #alternatively, you can pass the data frame to sequenceMap() sequenceMap(sequence = exampleDF$AA, property = exampleDF$Charge)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.