控制Tibble中显示的小数位数。了解illar.sigfig的作用 [英] Controlling decimal places displayed in a tibble. Understanding what pillar.sigfig does

查看:9
本文介绍了控制Tibble中显示的小数位数。了解illar.sigfig的作用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个包含以下内容的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

如果我将Tibble转换为普通数据框,我将看到更多数字。

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

最初我以为如果我想为Tibble获得这种类型的显示器,我想我会做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?
  • 我能做什么,或者我能做什么,才能得到五位小数?

推荐答案

我遇到了同样的问题。使用illar.sigfig会有所帮助。您还可以将其与round()一起使用,并且您可以进行更多的控制。但如果最后一个数字为0,则不会显示它。

我使用的";技巧是将结果保存在变量中,然后使用print.data.frame()。那么它工作得很好。但也许有一个更简单的解决方案.

这篇关于控制Tibble中显示的小数位数。了解illar.sigfig的作用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆