Я не верю, что zipRadius
векторизовано, и более одного почтового индекса, указанного в векторе, может быть проигнорировано (для попытки # 1).
Ваш l oop работает, но вы перезаписываете ваш c
со вторым вызовом zipRadius
.
Если вам нужен один фрейм данных со всеми результатами, вы можете добавить второй фрейм данных к первому и использовать rbind
для их объединения.
library(ZipRadius)
x <- c("30316", "66061")
mylist = list()
for (i in seq_along(x)) {
mylist[[i]] <- zipRadius(x[i], 3.5)
}
do.call(rbind, mylist)
Вывод
zip city state latitude longitude Distance
1 30303 Atlanta GA 33.75286 -84.39013 3.26
2 30307 Atlanta GA 33.76821 -84.33786 2.68
3 30312 Atlanta GA 33.74574 -84.37640 2.33
4 30315 Atlanta GA 33.70960 -84.38365 2.82
5 30316 Atlanta GA 33.72951 -84.34087 0.00
6 30317 Atlanta GA 33.75001 -84.31854 1.91
7 30335 Atlanta GA 33.75241 -84.38968 3.22
8 31120 Atlanta GA 33.74000 -84.38000 2.36
9 66051 Olathe KS 38.89990 -94.83199 1.45
10 66061 Olathe KS 38.88978 -94.85558 0.00
11 66063 Olathe KS 38.89990 -94.83199 1.45
12 66222 Shawnee Mission KS 38.89990 -94.83199 1.45
13 66225 Shawnee Mission KS 38.89990 -94.83199 1.45
14 66250 Shawnee Mission KS 38.89990 -94.83199 1.45
15 66251 Shawnee Mission KS 38.89990 -94.83199 1.45
16 66276 Shawnee Mission KS 38.89990 -94.83199 1.45
17 66279 Shawnee Mission KS 38.89990 -94.83199 1.45
18 66282 Shawnee Mission KS 38.89990 -94.83199 1.45
19 66283 Shawnee Mission KS 38.89990 -94.83199 1.45
20 66285 Shawnee Mission KS 38.89990 -94.83199 1.45
21 66286 Shawnee Mission KS 38.89990 -94.83199 1.45
Или вы можете пропустить l oop и использовать lapply
, и вы получите результаты в списке:
lapply(x, zipRadius, 3.5)
Выход
[[1]]
zip city state latitude longitude Distance
1 30303 Atlanta GA 33.75286 -84.39013 3.26
2 30307 Atlanta GA 33.76821 -84.33786 2.68
3 30312 Atlanta GA 33.74574 -84.37640 2.33
4 30315 Atlanta GA 33.70960 -84.38365 2.82
5 30316 Atlanta GA 33.72951 -84.34087 0.00
6 30317 Atlanta GA 33.75001 -84.31854 1.91
7 30335 Atlanta GA 33.75241 -84.38968 3.22
8 31120 Atlanta GA 33.74000 -84.38000 2.36
[[2]]
zip city state latitude longitude Distance
1 66051 Olathe KS 38.89990 -94.83199 1.45
2 66061 Olathe KS 38.88978 -94.85558 0.00
3 66063 Olathe KS 38.89990 -94.83199 1.45
4 66222 Shawnee Mission KS 38.89990 -94.83199 1.45
5 66225 Shawnee Mission KS 38.89990 -94.83199 1.45
6 66250 Shawnee Mission KS 38.89990 -94.83199 1.45
7 66251 Shawnee Mission KS 38.89990 -94.83199 1.45
8 66276 Shawnee Mission KS 38.89990 -94.83199 1.45
9 66279 Shawnee Mission KS 38.89990 -94.83199 1.45
10 66282 Shawnee Mission KS 38.89990 -94.83199 1.45
11 66283 Shawnee Mission KS 38.89990 -94.83199 1.45
12 66285 Shawnee Mission KS 38.89990 -94.83199 1.45
13 66286 Shawnee Mission KS 38.89990 -94.83199 1.45