# Calculating the charge of a peptide computationally

I was wondering how I can calculate the charge of a protein peptide (e.g. "RKTTLVPNTQTASPR") computationally in R or another tool.

• Have you done any search already? What have you found? Jul 4, 2017 at 14:50

A quick google search turns up protcalc, which is able to give a nice pH-dependent table of peptide charges (yours ranges from 3.1 at pH 4 to 1.5 at pH 10). It's on sourceforge, so hopefully the source code (and maybe a publication) is somewhere in there. Granted, this isn't R, but it's not clear from your post how necessary that really is.

BTW, in general "best and most accurate" turns out to be highly subjective (at least the "best" part of that).

• Actually somewhere I read that a method to calculate the charge was taking in mind the pkAs of the free amino acids and not the residues on the chain. That's why I wrote "best". I think that the pkA change when the a.a is on the chain. Maybe I should have mentioned it. Also R environment will be preferred. Jul 4, 2017 at 13:37
• I would be surprised if pH still didn't affect things, though I agree that using a calculation based on free amino acid charges is going to yield wrong values. Jul 4, 2017 at 13:39
• Taking in mind the pH is standard but pH value is known and can be found. The thing is if there is an algorithm to calculate the pkA of the non free a.a Jul 4, 2017 at 13:46
• @J.Doe asking for "the best" is not a good question for this site since "the best" is almost always going to be a matter of opinion, and/or depend on the specifics of the sequence you are analyzing. See bioinformatics.stackexchange.com/help/dont-ask
– terdon
Jul 4, 2017 at 14:55

Another quick Google search reveals the Peptides R package.

library(Peptides)
s <- "RKTTLVPNTQTASPR"
charge(s)

[1] 2.997683


Optional arguments to charge() are pH (default = 7) and pKscale (choice of nine, default = "Lehninger"). See ?charge for details.

Another (non-R) option is the EMBOSS suite program iep. I highly recommend installing EMBOSS, it provides a suite of useful command-line tools with output that can be easily read and processed by other sofware, including R.

I've used PropKa in the past to get isoelectric points. Pretty simple to use:

https://github.com/jensengroup/propka-3.1