我正在尝试从{readxl“包中使用read_excel()
函数将Excel文件读取到R中。
excel文件中单元格中的数字有3个小数位,例如
0,684 1,338 74,296
。在R数据框中,相同的数字为0,684 1,34 74,3
。
为什么只剩下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
请让我知道是否知道原因:)
答案 0 :(得分:3)
请注意不要混淆“那里有多少位数”与“ R向您显示多少位数”相混淆。很难确定没有看到您的代码,但是我怀疑您正在打印小标题,如下所示:
.wrapper {
position: relative;
width: 400px;
height: 400px;
margin: auto auto;
background: black;
}
.circle {
width: 100px;
height: 100px;
border-radius: 50%;
background-color: grey;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}
.circle-1 {
width: 108px;
height: 108px;
border-radius: 50%;
background-color: transparent;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
border: 2px;
border-style: solid;
border-color: white white white transparent;
transition: 1.5s all ease-in-out;
}
.circle-2 {
width: 118px;
height: 118px;
border-radius: 50%;
background-color: transparent;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
border: 2px;
border-style: solid;
border-color: white transparent white white;
transition: 1.5s all ease-in-out;
}
.circle:hover .circle-2 {
transform: rotate(360deg);
}
.circle:hover .circle-1 {
transform: rotate(-360deg);
}
小标题的默认打印方法仅显示几位有效数字。并且它似乎没有响应<div class="wrapper">
<div class="circle">
<div class="circle-1"></div>
<div class="circle-2"></div>
</div>
</div>
中的数字设置。但是,如果我们将其转换为data.frame,您将看到数字始终存在:
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
所以您的数字可能在那儿,只是没有显示。