我有两列,如果两列之间存在部分匹配,我想创建一个二进制列。
例如:
X Y Match
hello hello 1
hi hello hi 1
NA bye NA
bye hi bye 1
good bad 0
我使用了以下代码
df['Match'] <- ifelse(with(df, str_detect(x, y)|str_detect(y, x)), 1, 0)
适用于前几行,但是当我在整个数据集(n = 14000)上使用它时,我不断收到此错误:
Error in stri_detect_regex(string, pattern, opts_regex = opts(pattern)) :
Incorrectly nested parentheses in regexp pattern. (U_REGEX_MISMATCHED_PAREN)
我应该如何解决这个问题?
答案 0 :(得分:0)
您的数据中可能带有括号或导致此错误的特殊字符。
尝试如下循环:
# First retrieve the file from the API.
print()
file = DRIVE.files().get(fileId=file_id).execute()
print(file)
file['name'] = 'A'
print(file)
# Send the request to the API.\
updated_file = DRIVE.files().update(fileId=file_id, body=file).execute()
最后打印的for(i in 1:nrow(df)) {
print(i)
str_detect(df$x[i], df$y[i])
}
会告诉您问题所在的行。