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.