我从文本语料库中创建了一个整洁的数据框。我想基于整齐的语料库文本中字符串向量的字符串的存在来创建一个新的二进制变量。我当前的for循环工作,但是600k观测得太慢了,尽管大多数观测结果只有5个左右。
整洁的df结构:8个变量,第8个是要搜索的文本,600k观察,第9个变量应该是1/0,基于具有滥用潜力的制药公司的存在。
abusepharma <- c('xanax', 'diazepam', 'alprazolam', 'adderall', 'oxycodone', 'viagra', 'oxycontin', 'valium', 'fentanyl', 'cialis', 'tramadol', 'amphetamine', 'hydromorphone', 'hydromorphon')
name.clean_tidy$AbusePharma <- NA
for(i in 1:nrow(name.clean_tidy)){
if(grepl(paste(abusepharma,collapse="|"), name.clean_tidy[i,8])){
name.clean_tidy[i,9] <- 1
}else{
name.clean_tidy[i,9] <- 0
}
}