Многопроцессорная обработка в цикле Nested for с условием if
Я пытаюсь проверить и заменить значения из большого набора данных. Но это занимает слишком много времени для того же.
Я пытаюсь написать функцию в многопроцессорной, но не знаю, как это сделать.
Может кто-нибудь предложить, какие изменения я должен внести в мой код, чтобы запустить его параллельно?
В приведенном ниже коде ty1 - это набор данных, который содержит названия городов и их коды. Я хочу проверить эти коды с другими значениями, хранящимися в df1, и заменить имена в ty1 на имена из df1.
for (i in 1:nrow(ty1)) {
print(paste('i=',i))
b<-ty1[i,'level_3_code']
b1<-ty1[ty1$level_3_code==b,]
row.names(b1)<-NULL
df1<-l6[l6$level_3_code==b,]
row.names(df1)<-NULL
for (j in 1:nrow(b1)) {
if(is.na(b1$level_4_code)[j]){
for (k in 1:nrow(df1)) {
if(b1$iu_code[j]==df1$level_6_code[k]){
ty1[which(ty1$iu_code==b1$iu_code[j]),'level_6_id']=df1$level_6_id[k]
ty1[which(ty1$iu_code==b1$iu_code[j]),'level_6_name']=df1$level_6_name[k]
ty1[which(ty1$iu_code==b1$iu_code[j]),'level_6_code']=df1$level_6_code[k]
ty1[which(ty1$iu_code==b1$iu_code[j]),'level_5_id']=df1$level_5_id[k]
ty1[which(ty1$iu_code==b1$iu_code[j]),'level_5_name']=df1$level_5_name[k]
ty1[which(ty1$iu_code==b1$iu_code[j]),'level_5_code']=df1$level_5_code[k]
ty1[which(ty1$iu_code==b1$iu_code[j]),'level_4_id']=df1$level_4_id[k]
ty1[which(ty1$iu_code==b1$iu_code[j]),'level_4_name']=df1$level_4_name[k]
ty1[which(ty1$iu_code==b1$iu_code[j]),'level_4_code']=df1$level_4_code[k]
}
}
}
}
}