尝试使用名为hash_id
的变量合并两个数据帧。由于某种原因,R不识别其中一个数据帧中的hash-id,而另一个则识别另一个。
我已经检查过,但我还是没有得到它。请参阅下面我的检查方式:
> head(df1[46],1) # so I take the first 'hash-id' from df1
# hash_id
# 1 abab123123
> which(df2 == "abab123123", arr.ind=TRUE) # here it shows that row 6847 contains a match
# row col
# [1,] 6847 32`
> which(df1 == "abab123123", arr.ind=TRUE) # and here there is NO matching value!
# row col
#
答案 0 :(得分:1)
其中一个数据集的相关列中有trailing
或leading
个空格。你可以这样做:
library(stringr)
df1[, "hash_id"] <- str_trim(df1[,"hash_id"])
df2[, "hash_id"] <- str_trim(df2[, "hash_id"])
which(df1[, "hash_id"]=="abab123123", arr.ind=TRUE)
which(df2[, "hash_id"]=="abab123123", arr.ind=TRUE)
另一种方法是使用grep
grepl("\\babab123123\\b", df1[,"hash_id"])
grepl("\\babab123123\\b", df2[,"hash_id"])