gpt4 book ai didi

r - 在 R 中通过 gsub 解析街道地址

转载 作者:行者123 更新时间:2023-12-02 08:22:44 24 4
gpt4 key购买 nike

我想用 gsub 解析街道地址,但我很难理解正则表达式以及如何正确使用它们。主要问题是街道名称由一个或多个单词组成,有些地址有公寓号码和字母,有些则没有。我想将地址的所有部分解析为不同的变量。

这是一个例子:

Data1 <- data.frame(address = c("Wagon street 6", "Oscar de la Rosa Street 11 A", "Night street 35 B 2"))

Data1

>Data1$sname <- NA
>Data1$snumber <- NA
>Data1$anumber <- NA
>Data1$anumber <- NA

>Data1$sname <- gsub("(+.)\\s[^W]+$","\\1", Data1$address)
> Data1

address sname snumber anumber aletter
>1 Wagon street 6 Wagon NA NA NA
>2 Oscar de la Rosa Street 11 A Oscar NA NA NA
>3 Night street 35 B 2 Night NA NA NA

欢迎所有的帮助和想法。

最佳答案

前段时间我曾要求在 R 中解析很多美国地址。正如您所提到的,地址可能非常困惑。我也尝试过做正则表达式,但太难了,所以我放弃了。

我的解决方案是使用 python 的 usaddress library来自 R。请检查此示例:

library('rPython')

address = "Wagon street 6"

python.exec('import usaddress')

python.exec(paste0("addressObject = usaddress.parse('",address,"')"))

add <- python.get( "addressObject" )

当然你必须先安装那个python库。查看上一个链接中的文档以获取更多信息。希望这会有所帮助。

关于r - 在 R 中通过 gsub 解析街道地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35366533/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com