R:根据参考文件将列中的名称转换为翻译名称

R: Converting names in a column to translated names based on a reference file

感谢您看我的问题,新年快乐!

我的 problem/question:我有一个数据框列,其中包含这样的名称列表(有些还重复):

Name (German)
Josef
Georg
Mathilde
Josef
Ludwig
Lorenz
Georg
... 

我想,例如将这些名称转换为对应的英文名称,相应的德文和英文名称包含在另一个参考文献 file/dataframe 中,如下所示:

Name (German)    Name (English)
Mathilde         Mathilda
Georg            George
Lorenz           Lawrence
Josef            Joseph
Ludwig           Lewis
...  

所以最后,我的带有新列的数据框将如下所示:

Name (German)    Name (English)
Josef            Joseph
Georg            George
Mathilde         Mathilda
Josef            Joseph
Ludwig           Lewis
Lorenz           Lawrence
Georg            George
... 

如果有人知道如何做到这一点,请帮我弄清楚如何去做,我将不胜感激。无论如何,感谢您的帮助!

谨致问候!

使用 read.table().

编写 dictionary
dict <- read.table(header=TRUE, text='
German   English
Mathilde         Mathilda
Georg            George
Lorenz           Lawrence
Josef            Joseph
Ludwig           Lewis
')

然后是match().

transform(dat, English=dict[match(dat$Name, dict$German), ]$English)
#       Name  English
# 1    Josef   Joseph
# 2    Georg   George
# 3 Mathilde Mathilda
# 4    Josef   Joseph
# 5   Ludwig    Lewis
# 6   Lorenz Lawrence
# 7    Georg   George

数据:

dat <- structure(list(Name = c("Josef", "Georg", "Mathilde", "Josef", 
"Ludwig", "Lorenz", "Georg")), class = "data.frame", row.names = c(NA, 
-7L))