首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >尽管设置了数字选项,read_excel还是会截断数字

尽管设置了数字选项,read_excel还是会截断数字
EN

Stack Overflow用户
提问于 2018-08-09 22:02:43
回答 1查看 3K关注 0票数 2

我试图从"readxl“包中读取一个带有read_excel()函数的excel文件到R中。excel文件中单元格中的数字有3位小数点,例如0,684 1,338 74,296。在R数据中,相同的数字是0,684 1,34 74,3。为什么只剩下三位数?

我已经设置了options(digits=5) (也尝试了不同的值)。

我也尝试过read_excel("file.xlsx", col_types = c("text", "text", "text")) (它给了我字符串:74.296000000000006 1.3380000000000001 0.68400000000000005),然后用as.numeric()转换成数字,但是数字还是被截断了:0,684 1,34 74,3

如果你知道原因,请告诉我:)

EN

Stack Overflow用户

回答已采纳

发布于 2018-08-09 23:18:52

注意不要混淆“有多少位数”和“R显示了多少位数”。在没有看到代码的情况下很难确切地知道这一点,但我怀疑您正在打印一个tibble,如下所示:

代码语言:javascript
运行
复制
library(readxl)
my_junk <- read_excel("~/Downloads/test.xlsx")
print(my_junk)
#> # A tibble: 3 x 1
#>    test
#>   <dbl>
#> 1 0.684
#> 2 1.000
#> 3 1.00

tibbles的默认打印方法只显示几个有效数字。而且它似乎对options中的数字设置没有响应。但是,如果我们将其转换为data.frame,您将看到这些数字始终存在:

代码语言:javascript
运行
复制
library(dplyr)
my_junk %>%
  data.frame %>%
  print( digits = 7)  
#>       test
#> 1 0.684000
#> 2 0.999950
#> 3 1.000001

所以你的数字很可能在那里,只是没有显示。

票数 5
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51776344

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档