使用parse_number将百分比转换为十进制?

时间:2019-06-19 01:49:52

标签: r tidyverse readr

parse_number是当我解析具有以“%”格式设置的列的html表时的完美功能。很多时候,我想使用parse_number并在一个完整的操作中转换为小数。我知道有不使用parse-number来解析函数的替代方法,但是parse_number是否可以执行我正在寻找的内置函数?否则,我的大多数mutate_at命令最终都会在两个单独的操作中运行。

下面的示例代码:

library(readr)

x <- "10.5%"

parsed <- parse_number(x)

parsed_decimal <- parsed / 100

1 个答案:

答案 0 :(得分:1)

为什么不只编写自己的函数:

x <- "10.5%"
y <- c("9.0%", "8.3%", "51.2%")

parse_pct <- function(x) {
    parsed <- readr::parse_number(x)
    parsed_decimal <- parsed / 100
    parsed_decimal
}

parse_pct(x)
#> [1] 0.105
purrr::map_dbl(y, parse_pct)
#> [1] 0.090 0.083 0.512

reprex package(v0.3.0)于2019-06-18创建