#r
#r
Вопрос:
Если вы объявите числовой вектор со смесью десятичных и целых значений и распечатаете его, все они преобразуются в десятичное число.
s <- c(0, 1.1, 2, 3)
print(s)
[1] 0.0 1.1 2.0 3.0
но если вы используете cat вместо print, каждое число форматируется в соответствии со своим типом.
cat(s, sep=" ")
0 1.1 2 3
Как вы можете распечатать числовой вектор с помощью cat, но преобразовать значения в десятичные числа, как это делает print?
Лучшие
Ответ №1:
например:
> cat(sprintf("%.01f", s))
0.0 1.1 2.0 3.0
Ответ №2:
Вы можете использовать формат:
cat(format(s,digits=2))
Комментарии:
1. Это больше не будет работать для целочисленных векторов, вместо этого используйте
cat(format(s, nsmall = 2))