Заставить R не использовать экспоненциальную нотацию (например, e+10)?
могу ли я заставить R использовать обычные числа вместо использования e+10
-нотации? У меня есть:
1.810032e+09
# and
4
в том же векторе и хотите увидеть:
1810032000
# and
4
Я создаю вывод для старомодной программы, и я должен написать текстовый файл с помощью cat
.
Это прекрасно работает до сих пор, но я просто не могу использовать e+10
есть нотация.
4 ответа:
Это немного серая область. Вы должны помнить, что R всегда будет вызывать метод печати, и эти методы печати прослушивают некоторые параметры. В том числе и "сципен" - штраф за научную демонстрацию. От
help(options)
:‘scipen’: целое число. Штраф, который будет применяться при принятии решения о печати числовые значения в фиксированной или экспоненциальной нотации. Положительный смещение ценностей в сторону фиксированных и отрицательных в сторону научных Примечание: фиксированной нотации будет предпочтительным, если это не больше чем’ scipen ' цифры шире.
пример:
R> ran2 <- c(1.810032e+09, 4) R> options("scipen"=-100, "digits"=4) R> ran2 [1] 1.81e+09 4.00e+00 R> options("scipen"=100, "digits"=4) R> ran2 [1] 1810032000 4
тем не менее, я все еще считаю его fudgeworthy. Самый страшный способ-использовать
sprintf()
с явными ширину.
мой любимый ответ:
format(1810032000, scientific = FALSE) # [1] "1810032000"
Это дает то, что вы хотите, без необходимости возиться в настройках R.
обратите внимание, что он возвращает символьную строку, а не объект номер
Put
options(scipen = 999)
в своем .Rprofile file таким образом, он автоматически выполняется по умолчанию. (Не полагайтесь на выполнение этого вручную.)(Это говорит что-то отличное от других ответов: как?
- это держит вещи в здравом уме, когда вы думаете между несколькими проектами, несколькими языками на ежедневной или ежемесячной основе. Не забудьте ввести свои настройки для каждого проекта, которые подвержены ошибкам и не масштабируются. Вы можете иметь глобальный ~/.Rprofile или для каждого проекта .Rprofile. Или и то и другое, причем последнее преобладает над первым.
- сохранение всей конфигурации в рамках проекта или глобального .Rprofile автоматически выполняет его. Это полезно, например, для загрузки пакетов по умолчанию, данных.конфигурация таблицы, окружающая среда etc. Опять же, эта конфигурация может запускаться на страницу настроек, и есть нулевой шанс, что вы запомните их и их синтаксис и введите их в