如何基于R中字符串的前三个字删除重复行
我有一个问题还没有找到答案 假设我有以下数据帧。数据框包含以下3个观察结果如何基于R中字符串的前三个字删除重复行,r,string,text,R,String,Text,我有一个问题还没有找到答案 假设我有以下数据帧。数据框包含以下3个观察结果 data.frame (id = 1:3, sentence = c("Hi my name is John", "Hi my name is Jack", "Hi my name is Drew") ) 我想去掉下面的两个观察结果,只留下上面有John的那一个。如果每个字符串中的最后一个单词不同,则unique()解决方
data.frame (id = 1:3,
sentence = c("Hi my name is John", "Hi my name is Jack", "Hi my name is Drew")
)
我想去掉下面的两个观察结果,只留下上面有John的那一个。如果每个字符串中的最后一个单词不同,则unique()解决方案不起作用。我认为应该有一种方法来检查每个字符串中的前三个(或四个)单词是否相同。如果它们是相同的,那么它将删除除顶部观察之外的其他观察结果。我将感谢任何帮助 基于三个词:
gsub(“^(\\S+\\S+\\S+\\S+\\S+.*”,“\\1”,dat$语句)
#[1]“嗨,我的名字”“嗨,我的名字”“嗨,我的名字”
dat[!重复(gsub(“^(\\S+\\S+\\S+\\S+\\S+.*”,“\\1”,dat$语句)),]
#身份证判决
#嗨,我叫约翰
您需要更精确地定义“相似”观察在这里的实际含义。@TimBiegeleisen将“相似”一词改为“相同”。