gpt4 book ai didi

r - 在 R 中转换字符串

转载 作者:行者123 更新时间:2023-12-01 11:58:48 24 4
gpt4 key购买 nike

我必须合并到 R 中的数据框。这两个数据框共享一个公共(public) id 变量,即主题名称。但是,一个数据框中的名称部分大写,而另一个数据框中的名称则为小写。此外,名称以相反的顺序出现。这是数据框中的示例:

DataFrame1$Name:
"Van Brempt Kathleen"
"Gräßle Ingeborg"
"Gauzès Jean-Paul"
"Winkler Iuliu"

DataFrame2$Name:
"Kathleen VAN BREMPT"
"Ingeborg GRÄSSLE"
"Jean-Paul GAUZÈS"
"Iuliu WINKLER"

R 中有没有办法使这两个变量可用作合并数据框的标识符?

最好的,托马斯

最佳答案

您可以使用 gsub 来转换周围的名称:

> names
[1] "Kathleen VAN BREMPT" "jean-paul GAULTIER"
> gsub("([^\\s]*)\\s(.*)","\\2 \\1",names,perl=TRUE)
[1] "VAN BREMPT Kathleen" "GAULTIER jean-paul"
>

它的工作原理是首先匹配第一个空格,然后匹配之后的任何内容,然后切换它们。然后根据需要添加 tolower() 或 toupper(),并使用 match() 连接数据框。

不过祝你好运,将 Grassle 与 Graßle 相匹配。许多其他事情也可能会影响您,例如两个名字之间用空格分隔的人,或者列有头衔的人!

巴里

关于r - 在 R 中转换字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3590045/

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