小编Mat*_*ett的帖子

检查列是否包含另一列的值

R 有没有办法检查一列中的值是否包含另一列中的值?

在下面的示例中,我试图查看 col2 中的值是否包含在 col1 中的值中(在每行中独立),但收到一条警告消息:“参数 'pattern' 的长度 > 1 并且仅使用第一个元素”。

标志列应在第一行/最后一行显示“是”,在第二行和第三行显示“否”。任何关于如何解决的想法将不胜感激。

col1 <- c("R.S.U.L.C","S.I.W","P.U.E","A.E.N")
col2 <- c("R","U","I","N")

df2 <- data.frame(col1,col2)

df2$Flag <- ifelse(grepl(df2$col2,df2$col1),"Yes","No")
Run Code Online (Sandbox Code Playgroud)

r contains dataframe grepl

3
推荐指数
1
解决办法
7656
查看次数

R lapply 从数据帧列表中删除列

我正在尝试使用 lapply 和以下代码从数据帧列表中删除单个列(想要从 df1 和 df2 中删除列名“ID”)。通过命令提示符运行时,我收到以下错误消息:

eval(substitute(select), nl,parent.frame()) 中的错误:找不到对象“ID”调用:lapply -> FUN ->subset.data.frame -> eval -> eval

关于为什么代码会产生错误有什么想法吗?

df1 <- data.frame(
 "Qty" = c(15,29,12,53),
 "Type"   = c("A","B","B","E"),
 "ID"   = c("x123","y121","x556","y119"))

df2 <- data.frame(
 "Qty" = c(5,92,25,31),
 "Type"   = c("I","L","Z","K"),
 "ID"   = c("p433","q232","y344","l598"))

df_list <- mget(ls(pattern= "^df"))

df_list <- lapply(df_list, function(x) subset.data.frame(x, select=-c(ID)))

list2env(df_list, .GlobalEnv)
Run Code Online (Sandbox Code Playgroud)

r subset lapply

1
推荐指数
1
解决办法
1537
查看次数

标签 统计

r ×2

contains ×1

dataframe ×1

grepl ×1

lapply ×1

subset ×1