gpt4 book ai didi

r - 为什么 as_tibble() 将 float 四舍五入到最接近的整数?

转载 作者:行者123 更新时间:2023-12-02 10:38:15 25 4
gpt4 key购买 nike

在 dplyr 0.7.4 和 R 3.4.1 中使用 as_tibble 时,我得到以下输出

mtcars %>% aggregate(disp ~ cyl, data=., mean) %>% as_tibble()

输出

# A tibble: 3 x 2
cyl disp
<dbl> <dbl>
1 4.00 105
2 6.00 183
3 8.00 353

同时

mtcars %>% aggregate(disp ~ cyl, data=., mean)

输出

  cyl     disp
1 4 105.1364
2 6 183.3143
3 8 353.1000

毫不奇怪,以下内容

mtcars %>% group_by(cyl) %>% summarise(disp=mean(disp))

再次给予

# A tibble: 3 x 2
cyl disp
<dbl> <dbl>
1 4.00 105
2 6.00 183
3 8.00 353

为什么会发生这种舍入以及如何避免它?

最佳答案

这不是四舍五入,它只是 {tibble} 以漂亮的方式显示数据的一种方式:

> mtcars %>% 
+ aggregate(disp ~ cyl, data=., mean) %>%
+ as_tibble() %>%
+ pull(disp)
[1] 105.1364 183.3143 353.1000

如果你想看到更多的数字,你必须打印一个data.frame:

> mtcars %>% 
+ aggregate(disp ~ cyl, data=., mean) %>%
+ as_tibble() %>%
+ as.data.frame()
cyl disp
1 4 105.1364
2 6 183.3143
3 8 353.1000

(是的,最后两行没用)

关于r - 为什么 as_tibble() 将 float 四舍五入到最接近的整数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48668064/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com