String 提取两列中匹配的值
我有两列大小不同的data.frame:String 提取两列中匹配的值,string,r,dataframe,String,R,Dataframe,我有两列大小不同的data.frame: type1 type2 user1 user1 user2 user4 user3 user6 user4 如何得到火柴?结果是 user1 user4 请参阅?匹配或类似的?%in%“: 请参阅?匹配或类似的?%in%“: 首先,data.frame中的列必须都具有相同的长度(请参阅),因此我将假设示例中的最后一个条目只是一个空字符串“” 您要查找的是两列的“交集”,即可以在两列中找到的元素。您可以使用intersect功能: d
type1 type2
user1 user1
user2 user4
user3 user6
user4
如何得到火柴?结果是
user1
user4
请参阅
?匹配
或类似的?%in%“
:
请参阅
?匹配
或类似的?%in%“
:
首先,data.frame中的列必须都具有相同的长度(请参阅),因此我将假设示例中的最后一个条目只是一个空字符串“” 您要查找的是两列的“交集”,即可以在两列中找到的元素。您可以使用
intersect
功能:
df <- data.frame(type1 = c("user1", "user2", "user3", "user4"),
type2 = c("user1", "user4", "user6", ""))
df
# type1 type2
# 1 user1 user1
# 2 user2 user4
# 3 user3 user6
# 4 user4
intersect(df$type1, df$type2)
# [1] "user1" "user4"
df首先,data.frame中的列必须都具有相同的长度(请参阅),因此我将假设示例中的最后一个条目只是一个空字符串“”
您要查找的是两列的“交集”,即可以在两列中找到的元素。您可以使用intersect
功能:
df <- data.frame(type1 = c("user1", "user2", "user3", "user4"),
type2 = c("user1", "user4", "user6", ""))
df
# type1 type2
# 1 user1 user1
# 2 user2 user4
# 3 user3 user6
# 4 user4
intersect(df$type1, df$type2)
# [1] "user1" "user4"
df