将数字分配给类别

时间:2018-10-13 06:57:35

标签: r

我必须为包含特定单词的句子分配一个ID。

下面是R数据帧,其中包含每个位置的ID。我需要扫描:

Place       ID
Ladakh      12
Mumbai      14
Bangalore   17

我还有另一个包含以下句子的数据框:

说明

Vinod is coming to Ladakh
Rahul is coming to Mumbai

例如,我需要以下输出(基本上,列Place应该从Description列中提取信息):

Description                 Place   ID
Vinod is coming to Ladakh   Ladakh  12
Rahul is coming to Mumbai   Mumbai  14

任何对此的帮助将不胜感激。谢谢

1 个答案:

答案 0 :(得分:1)

df1 = read.table(text = "
Place      ID
Ladakh     12
Mumbai     14
Bangalore  17
", header=T, stringsAsFactors=F)

df2 = data.frame(Description = c("Vinod is coming to Ladakh",
                                 "Rahul is coming to Mumbai"),
                 stringsAsFactors = F)

library(tidyverse)

df2 %>%
  mutate(Place = Description) %>%
  separate_rows(Place) %>%
  inner_join(df1, by="Place")

#                 Description  Place ID
# 1 Vinod is coming to Ladakh Ladakh 12
# 2 Rahul is coming to Mumbai Mumbai 14