如何根据两个条件在R中映射值?

时间:2016-08-23 12:11:40

标签: r data-conversion

我一直在使用R中的mapvalues函数将预定义的字符串转换为所需的形式。 但是,其中一些字符串并不是唯一的,我想将它们转换为依赖于另一列中的标准。

例如,请使用以下数据框:

df <- data.frame(Name = c("Audrey", "Belinda", "Caroline", "Caroline" "Dina", "Erica"),
             Country = c("China", "Germany", "England", "America", "India", "America"))

我想使用另一个数据框(指定所需的表格)将American Caroline转换为'Caz':

dfmap <- data.frame(Name = c("Audrey", "Belinda", "Caroline", "Caroline", "Dina", "Erica"), 
                Country = c("China", "Germany", "England", "America", "India", "America"),
                NameCorrect = c("Audrey", "Belinda", "Caroline", "Caz", "Dina", "Erica"), 
                CountryCorrect = c("China", "Germany", "England", "America", "India", "America"))

我不能简单地使用mapvaluesName列上的NameCorrect功能,因为它无法区分英国卡罗琳和美国卡罗琳。

如何让R区分American Caroline和English Caroline,然后将值映射到dfmap数据帧中存储的所需输出?

0 个答案:

没有答案