convert one digit numbers to two digits one
All these suggestions of using 'sprintf' might be right but you might be doing it wrong... If you are working with times, then use the date/time classes and the handy functions for working on them. Which means the lubridate package, most likely. Are these times part of a calendar time, or are they just clock times without reference to any day, or are they durations in hours and minutes?
On Wed, Nov 6, 2013 at 4:34 PM, Marc Schwartz <marc_schwartz at me.com> wrote:
On Nov 6, 2013, at 10:25 AM, Alaios <alaios at yahoo.com> wrote:
Hi all, the following returns the hour and the minutes paste(DataSet$TimeStamps[selectedInterval$start,4], DataSet$TimeStamps[selectedInterval$start,5],sep=":") [1] "12:3" the problem is that from these two I want to create a time stamp so 12:03. The problem is that the number 3 is not converted to 03. Is there an easy way when I have one digit integer to add a zero in the front? Two digits integers are working fine so far, 12:19, or 12:45 would appear correctly I would like to thank you in advance for your help Regards Alex
This is an example where using ?sprintf gives you more control:
sprintf("%02d:%02d", 12, 3)
[1] "12:03"
sprintf("%02d:%02d", 9, 3)
[1] "09:03" The syntax '%02d' tells sprintf to print the integer and pad with leading zeroes to two characters where needed. Regards, Marc Schwartz
______________________________________________ R-help at r-project.org 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.