无法在R中将字符转换为数字

1 r

我从维基百科拉了一张桌子,但是我得到了一堆垃圾,里面有我正在寻找的人口数量.例如,当我的实际数字仅为8,244,910时,我得到"!B9840748934017,8,244,910".我用正则表达式清理了字符向量sub('![[:alnum:]]*[[:space:]]', '', x)

这很好,给我留下了字符向量"8,244,910".as.numeric但是,当我尝试将其转换为数字时,它会被强制转换为NA,无论我尝试什么转换,我都无法获得整数.有什么想法吗?

A5C*_*2T1 6

请尝试以下方法:

as.numeric(gsub('![[:alnum:]]*[[:space:]]|[[:punct:]]', '', x))
Run Code Online (Sandbox Code Playgroud)

问题是你在第一次尝试的输出中有逗号.那些需要在转换之前删除as.numeric.