Управление десятичными разрядами отображается в таблице. Понимание того, что делает pillar.sigfig - PullRequest
2 голосов
/ 06 марта 2019

У меня есть CSV-файл weight.csv со следующим содержимым.

weight,weight_selfreport
81.5,81.66969147005445
72.6,72.59528130671505
92.9,93.01270417422867
79.4,79.4010889292196
94.6,96.64246823956442
80.2,79.4010889292196
116.2,113.43012704174228
95.4,95.73502722323049
99.5,99.8185117967332

Если я делаю

library(readr)
Df <- read_csv('weight.csv')
Df

Я получаю

# A tibble: 9 x 2
  weight weight_selfreport
   <dbl>             <dbl>
1   81.5              81.7
2   72.6              72.6
3   92.9              93.0
4   79.4              79.4
5   94.6              96.6
6   80.2              79.4
7  116.              113. 
8   95.4              95.7
9   99.5              99.8

Если я преобразую этот тиббл в обычный фрейм данных, я увижу больше цифр.

as.data.frame(Df)
  weight weight_selfreport
1   81.5          81.66969
2   72.6          72.59528
3   92.9          93.01270
4   79.4          79.40109
5   94.6          96.64247
6   80.2          79.40109
7  116.2         113.43013
8   95.4          95.73503
9   99.5          99.81851

Первоначально я думал, что если бы я хотел получить этот тип дисплея для стола, я думал, что я бы сделал options(pillar.sigfig = 5).

Однако это не то, что он делает.

options(pillar.sigfig = 5)
Df
# A tibble: 9 x 2
   weight weight_selfreport
    <dbl>             <dbl>
1  81.5              81.670
2  72.600            72.595
3  92.9              93.013
4  79.4              79.401
5  94.6              96.642
6  80.2              79.401
7 116.2             113.43 
8  95.4              95.735
9  99.5              99.819

Итак, я вижу, что pillar.sigfig - это контроль значащих цифр, а не десятичных знаков.

Хорошо, но

  • Почему (строка 2, столбец 1) 72,6 отображается как 72,600?
  • Что я могу сделать или могу сделать что-нибудь, чтобы получить пять знаков после запятой?
...