从文字字符串数字传递到 R 中的数字

Pass from literal string numeric to numeric in R

假设我有

list_of_literals <- c('six', 'seven', 'eight' ... )

我想传递给

list_of_numerics <- c(6, 7, 9 ...)

我知道我可以将每个可能的字符串值映射到它的数值,但是,假设我没有这些值的先验知识,所以映射效率会非常低,是否有任何包已经这样做了这个解析?

我们可以使用english。创建一个初始数字向量 ('v1'),将其转换为 english 并检查它是否是 %in% 和 'list_of_literals' 以获得逻辑 vector 并基于'v1'

的那个子集
library(english)
v1 <- 1:10
v1[as.character(english(1:10)) %in% list_of_literals]
#[1] 6 7 8

数据

list_of_literals <- c("six", "seven", "eight")