Bert, your solution seems to presuppose that the programmer knows beforehand that the leading digit in the number is "0" (which in fact is clearly the case in Nabila Arbi's original query). However, the sequence might arise from some process outside of the progammer's contgrol, and may then either have a leading 0 or not.In that case, I think Jim's solution is safer! Best wishes, Ted.
On 07-Feb-2017 16:02:18 Bert Gunter wrote: > No need for sprintf(). Simply: > >> paste0("DQ0",seq.int(60054,60060)) > > [1] "DQ060054" "DQ060055" "DQ060056" "DQ060057" "DQ060058" "DQ060059" > [7] "DQ060060" > > > Cheers, > Bert > > Bert Gunter > > "The trouble with having an open mind is that people keep coming along > and sticking things into it." > -- Opus (aka Berkeley Breathed in his "Bloom County" comic strip ) > > > On Mon, Feb 6, 2017 at 5:45 AM, jim holtman <jholt...@gmail.com> wrote: >> You need the leading zeros, and 'numerics' just give the number without >> leading zeros. You can use 'sprintf' for create a character string with >> the leading zeros: >> >>> # this is using 'numeric' and drops leading zeros >>> >>> seq1 <- paste("DQ", seq(060054, 060060), sep = "") >>> seq1 >> [1] "DQ60054" "DQ60055" "DQ60056" "DQ60057" "DQ60058" "DQ60059" "DQ60060" >>> >>> # use 'sprintf' to create leading zeros >>> seq2 <- paste0("DQ", sprintf("%06d", seq(060054, 060060))) >>> seq2 >> [1] "DQ060054" "DQ060055" "DQ060056" "DQ060057" "DQ060058" "DQ060059" >> "DQ060060" >>> >> >> >> Jim Holtman >> Data Munger Guru >> >> What is the problem that you are trying to solve? >> Tell me what you want to do, not how you want to do it. >> >> On Sun, Feb 5, 2017 at 8:50 PM, Nabila Arbi <nabilaelarbi1...@gmail.com> >> wrote: >> >>> Dear R-Help Team! >>> >>> I have some trouble with R. It's probably nothing big, but I can't find a >>> solution. >>> My problem is the following: >>> I am trying to download some sequences from ncbi using the ape package. >>> >>> seq1 <- paste("DQ", seq(060054, 060060), sep = "") >>> >>> sequences <- read.GenBank(seq1, >>> seq.names = seq1, >>> species.names = TRUE, >>> gene.names = FALSE, >>> as.character = TRUE) >>> >>> write.dna(sequences, "mysequences.fas", format = "fasta") >>> >>> My problem is, that R doesn't take the whole sequence number as "060054" >>> but it puts it as DQ60054 (missing the zero in the beginning, which is >>> essential). >>> >>> Could please tell me, how I can get R to accepting the zero in the >>> beginning of the accession number? >>> >>> Thank you very much in advance and all the best! >>> >>> Nabila >>> >>> [[alternative HTML version deleted]] >>> >>> ______________________________________________ >>> R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see >>> 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. >>> >> >> [[alternative HTML version deleted]] >> >> ______________________________________________ >> R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see >> 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. > > ______________________________________________ > R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see > 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. ------------------------------------------------- E-Mail: (Ted Harding) <ted.hard...@wlandres.net> Date: 07-Feb-2017 Time: 16:48:41 This message was sent by XFMail ______________________________________________ R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see 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.