У меня есть два фрейма данных - один содержит набор почтовых индексов и присвоенных им опросов (df1
), другой содержит все возможные почтовые индексы и зоны, в которых они содержатся (df2
). По сути, мне нужно удалить почтовые индексы и распределить каждый опрос по зоне (используя почтовые индексы для перекрестных ссылок). В настоящее время я рассчитываю, что моя программа займет 5 часов. как я могу ускорить это?
for (i in 1:nrows(df1)) {
index <- which(df2$postcodes == toString(df1$postcodes[i])
if (length(index)) {
df1$zone <- toString(df2[index])
} else {
df1$zone <- 'UNMATCHED'
}
}
В настоящее время я обнаружил, что запуск 100 почтовых индексов занимает около 6 секунд.
За последние пару часов я попробовал кучу вещей с небольшим прогрессом или без него, поэтому любая помощь будет высоко ценится!