У меня есть кадр данных, который включает столбец Reference
. Это 10-значное число, которое может начинаться с нулей. При ввозе R, ведущие нули исчезают, которые я хотел бы добавить обратно.Добавление начального нуля после импорта в R
Я попытался с помощью sprintf
и formatC
, но у меня есть разные проблемы, связанные с каждым из них.
DF=data.frame(Reference=c(102030405,2567894562,235648759), Data=c(10,20,30))
Выходы я получаю следующее:
> sprintf('%010d', DF$Reference)
[1] "0102030405" " NA" "0235648759"
Warning message:
In sprintf("%010d", DF$Reference) : NAs introduced by coercion
> formatC(DF$Reference, width=10, flag="0")
[1] "001.02e+08" "02.568e+09" "02.356e+08"
Первый выход дает NA, когда число уже имеет 10 цифр, а вторая сохраняет результат в стандартной форме.
Что мне нужно:
[1] 0102030405 2567894562 0235648759
Я думаю, что ваш ожидаемый результат не отражает с ведущими нулями .. – akrun
работе с примерами в http://stackoverflow.com/questions/5812493/adding -leading-zeros-using-r, приводит к 'library (stringr); str_pad (DF $ Reference, 10, pad = "0") ' – user20650
Я просто заметил это и отредактировал сообщение. Раньше я не встречался с «str_pad», но, похоже, это трюк. Спасибо. – sym246