首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用readr::parse_double()解析双组号

用readr::parse_double()解析双组号
EN

Stack Overflow用户
提问于 2017-11-25 15:10:03
回答 1查看 332关注 0票数 4

代码显示如下:

代码语言:javascript
运行
复制
readr::parse_double("123,456,789.987", 
                    locale = locale(decimal_mark = ".", 
                                    grouping_mark = ","))

预期结果是: 123456789.987

但事实证明,这引发了一个错误:

代码语言:javascript
运行
复制
1 parsing failure.
row # A tibble: 1 x 4 col     row   col               expected       actual 
expected   <int> <int>                  <chr>        <chr> actual 1     1    
NA no trailing characters ,456,789.987
[1] NA
attr(,"problems")

我在想为什么会发生这种事,怎么解决呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-11-25 15:24:44

我不确定,但看起来你需要parse_number:来自?parse_number

在数字中忽略由区域设置指定的分组标记。

parse_double()的帮助页面没有说它没有忽略分组标记,但是它没有说它忽略了.

代码语言:javascript
运行
复制
print(parse_number("123,456,789.987"),digits=20)
## [1] 123456789.98700000346

(由于这个数字不能精确地用双精度浮点表示,所以在结尾处会出现额外的数字)

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47487424

复制
相关文章

相似问题

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