one way is using function strsplit(), e.g.,
x <- c("100100110", "1001001", "1101", "00101")
sapply(strsplit(x, ""), function (x) sum(x == 1))
I hope it helps.
Best,
Dimitris
On 3/4/2011 2:18 PM, drflxms wrote:
Dear R colleagues,
I face a seemingly simple problem I couldn't find a solution for myself
so far:
I have to sum the digits of numbers. Example: 1010 ->2 100100110 -> 4
Unfortunately there seems not to be a function for this task. So my idea
was to use sum(x) for it. But I did not figure out how to slice a number
to a vector of its digits. Example (continued from above): 1010 ->
c(1,0,1,0) 100100110 -> (1,0,0,1,0,0,1,1,0).
Does anyone know either a function for calculating the sum of the digits
of a bumber, or how to slice a number into a vector of its digits as
described above?
I'd appreciate any kind of help very much!
Thanx in advance and greetings from cloudy Munich,
Felix
______________________________________________
[email protected] mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
--
Dimitris Rizopoulos
Assistant Professor
Department of Biostatistics
Erasmus University Medical Center
Address: PO Box 2040, 3000 CA Rotterdam, the Netherlands
Tel: +31/(0)10/7043478
Fax: +31/(0)10/7043014
Web: http://www.erasmusmc.nl/biostatistiek/
______________________________________________
[email protected] mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.