Округлить число и разбить на разряды
Добавлено: 17 июл 2020, 12:01
Добрый день!
Подскажите как из вектора n <- c(1001:1003, 1004.3)
Получить: 1'001, 1'002, 1'003, 1'004.3
Пока получаю: "1'001" "1'002" "1'003" "1'004" или "1'001.0" "1'002.0" "1'003.0" "1'004.3"
У всех чисел одинаковое количество знаков после запятой, а нужно, чтоб нулей после запятой не было.
Пока делаю так:
Но не уверен, что это хороший способ. Еще и выводится непонятное для меня предупреждение:
Предупреждение:
В n[substring(n, nchar(n) - 1, nchar(n)) == ".0"] <- substring(n, :
число единиц для замены не является произведением длины замены
Спасибо!
Подскажите как из вектора n <- c(1001:1003, 1004.3)
Получить: 1'001, 1'002, 1'003, 1'004.3
Код: Выделить всё
n <- c(1001:1003, 1004.3)
n <- round(n, digits = 1)
format(n, big.mark = "'")
У всех чисел одинаковое количество знаков после запятой, а нужно, чтоб нулей после запятой не было.
Пока делаю так:
Код: Выделить всё
n <- c(1001:1003, 1004.3)
n <- round(n, digits = 1)
n <- format(n, big.mark = "'")
n[substring(n, nchar(n)-1, nchar(n)) == ".0"] <-
substring(n, 1, nchar(n)-2)
Предупреждение:
В n[substring(n, nchar(n) - 1, nchar(n)) == ".0"] <- substring(n, :
число единиц для замены не является произведением длины замены
Спасибо!