【发布时间】:2026-01-14 20:15:01
【问题描述】:
我有这个循环,我试图尽可能地改进它,遗憾的是,我不知道如何让它变得更好。
你有什么改进的想法吗?
#partial is a data frame that look like this
partial = data.frame(
partial.regex = c("european construction industry federation",
" zentralverband des deutschen baugewerbes",
"hauptverband der deutschen bauindustrie",
"1 1 drillisch ag 439568220616 04"))
> summary(partial)
partial.name regex full.name
Length:13202 Length:13202 Length:13202
Class :character Class :character Class :character
Mode :character Mode :character Mode :character
#full is also a df
full = data.frame(
full.name = c("International Lead Association (ILA)", "Airborne Wind Europe", "Sazka Group a.s",
regex = c("international lead association (ila)", "airborne wind europe", "sazka group a.s.")
> summary(full)
full.name regex
Length:9779 Length:9779
Class :character Class :character
Mode :character Mode :character
循环来了。对不起,如果这很愚蠢,我是一个真正的初学者!
for(y in 1:dim(partial)[1]){
a = 0
b = ""
for(i in 1:dim(full)[1]){
vec = c(partial$regex[y], full$regex[i])
if(length(Reduce(`intersect`,stri_extract_all_regex(vec,"\\w+"))) > a){
a = length(Reduce(`intersect`,stri_extract_all_regex(vec,"\\w+")))
partial$full[y] = full$full.name[i]
}
}
}
提前感谢您为我提供的所有帮助!
最好的问候,
PS: 部分.csv = https://github.com/JMcrocs/MeetingMEPs/blob/main/partial.csv
full.csv = https://github.com/JMcrocs/MeetingMEPs/blob/main/full.csv
【问题讨论】:
标签: r dataframe loops for-loop