
talvez sprintf("%014.0f", 12023422344) ? Em 7 de maio de 2014 13:11, Marcus Nunes <marcus.nunes@gmail.com> escreveu:
Rodei o comando
sprintf("%.14d", 1202342234)
e meu resultado foi
[1] "00001202342234"
Estou usando o R no Mac, então não sei se isto tem alguma influência no resultado
sessionInfo() R version 3.0.3 (2014-03-06) Platform: x86_64-apple-darwin10.8.0 (64-bit)
locale: [1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8
attached base packages: [1] stats graphics grDevices utils datasets methods base
other attached packages: [1] gstat_1.0-19
loaded via a namespace (and not attached): [1] FNN_1.1 grid_3.0.3 intervals_0.14.0 lattice_0.20-29 [5] rgeos_0.3-4 sp_1.0-15 spacetime_1.1-0 tools_3.0.3 [9] xts_0.9-7 zoo_1.7-11
2014-05-07 13:01 GMT-03:00 Rubem Kaipper Ceratti < rubem_ceratti@yahoo.com.br>:
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.
_______________________________________________ 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.
-- Marcus Nunes http://marcusnunes.me/
_______________________________________________ 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.