
Benilton, Obrigado pela resposta. Eu deveria ter especificado melhor, mas o que eu preciso é que o resultado final seja o número original precedido por zeros, ie, "000012023422344" em vez de
sprintf("%.14f", 12023422344) [1] "12023422344.00000000000000"
Sei que é possível escrever uma função que faça essa manipulação, mas imagino que haja uma forma mais direta. Att., Rubem ________________________________ De: Benilton Carvalho <beniltoncarvalho@gmail.com> Para: r-br <r-br@listas.c3sl.ufpr.br>; Rubem Kaipper Ceratti <rubem_ceratti@yahoo.com.br> Enviadas: Quarta-feira, 7 de Maio de 2014 12:26 Assunto: Re: [R-br] Formatação com sprintf vc deve notar que o seu numero "12023422344", qdo representado no R, nao e' um inteiro... is.integer(12023422344) Entao, use a sugestao dada pelo proprio erro sprintf("%.14f", 12023422344) b Em 7 de maio de 2014 11:56, Rubem Kaipper Ceratti <rubem_ceratti@yahoo.com.br> escreveu: Caros listeiros,
Tenho um problema que consiste em transformar um certo número para formato 'character' com comprimento 14. Para isso tentei usar a função base::sprintf, mas para números com mais de 10 dígitos, recebo a mensagem de erro abaixo:
sprintf('%.14d', 1202342234) [1] "00001202342234"
sprintf('%.14d', 12023422344) Error in sprintf("%.14d", 12023422344) : invalid format '%.14d'; use format %f, %e, %g or %a for numeric objects
Alguém sabe uma forma de contornar isso?
Grato, Rubem _______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.