0
나는 2 개의 엽서 사이의 거리를 측정 해왔다. 약 ~ 30,000 개의 레코드가 있습니다. Google은 하루에 2,500 건의 쿼리 만 허용하므로 API가 제공됩니다. 어떤 이유로 API 키를 코드에 삽입하는 데 어려움을 겪고 있습니다. 나도 googleway라고하는 또 다른 패키지를 발견했다 - 나는 mapdist의 형식을 좋아하지만 똑같은 일을한다. 방법이 있나요 :mapdist 및 googleway in R
이A))이 코드 또는
B로 API를 사용
사전에 지원을 감사합니다 mapdist
에서와 유사한 결과를 채우기 위해 구글 방법 패키지를 사용 할 수 있습니다.library(ggmap)
library(plyr)
library(googleway)
key <- "XXX"
file_loc <- "C:/Users/Owner/Desktop/distance.csv"
x <- read.csv(file_loc, header = TRUE)
from <- x[1]
to <- x[2]
DF <- cbind(from, to); DF <- as.data.frame(DF) # create data frame
DF$from <- as.character(DF$from) # mapdist demands input to be character type
DF$to <- as.character(DF$to) # mapdist demands input to be character type
remove (from, to) #remove input to avoid confusion
DF$row.number <- 1:nrow(DF) #create an index number for each row
for (i in DF$row.number){
orig <- DF[i,c('from')]
dest <- DF[i,c('to')]
a <- mapdist(from = orig, to = dest, mode = "driving",output = c("simple", "all"), override_limit = FALSE)
a$row.number <- i
DF$minutes[match(a$row.number, DF$row.number)] <- a$minutes
DF$hours[match(a$row.number, DF$row.number)] <- a$hours
DF$km[match(a$row.number, DF$row.number)] <- a$km
DF$miles[match(a$row.number, DF$row.number)] <- a$miles
}
write.csv(DF, "newdata.csv") #Save dataset
API를 직접 호출하려면 httr을 사용하십시오. 또한, 'x'에서 'to'/ 'to'to 'DF'비트는 원으로 이어집니다. 그리고 [귀하의 모범을 재현 가능하게하십시오] (http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example). – alistaire