gpt4 book ai didi

R:根据多列中的特定单词删除行

转载 作者:行者123 更新时间:2023-12-02 04:11:53 25 4
gpt4 key购买 nike

这些问题似乎重复,但我已经彻底搜索过,但找不到答案。这是我的查询:

当用户给出某种类型的关键字时,我必须删除数据框中的行。我的数据如下所示,其中 sourcetarget 是列名称。

  source target
1 mike john
2 john ram
3 shyam mike
4 mike mike
5 rat cat
6 mouse dog
7 mike cat
8 cat mike

现在,如果我将“mike”作为单词,那么所有以“mike”作为关键字的行都应该被删除,无论它属于哪一列。如果我给出两个或三个单词,例如“mike”和“cat”等,以下内容也应该有效。

最佳答案

我们可以使用rowSums

keyword <- "mike"
df1[!rowSums(df1==keyword),]
# source target
#2 john ram
#5 rat cat
#6 mouse dog

如果关键字有多个元素,请使用 %in%lapply

keywords <-  c("mike", "cat")
df1[!Reduce(`|`,lapply(df1, `%in%`, keywords)),]
# source target
#2 john ram
#6 mouse dog

数据

df1 <- data.frame(source= c("mike", "john", "shyam", 
"mike", "rat", "mouse", "mike", "cat"),
target = c("john", "ram", "mike", "mike", "cat", "dog",
"cat", "mike"), stringsAsFactors=FALSE)

关于R:根据多列中的特定单词删除行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36257711/

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