我最近一直在使用ggmap包中的mapdist函数。
对于少量查询,它对我来说很好,但是对于较大的数字(仍然低于2,500的限制),它会失败并且我不确定原因。
我有一位老同事尝试这个脚本,他们得到与我相同的结果(他们在不同的组织中,使用不同的计算机,在不同的网络等)。
这是我的测试脚本,它一次又一次地运行相同的请求,以查看它在失败之前管理了多少个查询。它一直在返回129,最近它已经开始返回127(尽管这个数字在某个测试中仍然是一致的)。
请注意,虽然这会重复使用相同的邮政编码,但我尝试使用随机选择的目标邮政编码,并获得相同的结果。
library("ggmap")
# Setup ----------
no.of.pcd.to.check <- 500
a <- rep("SW1A 1AA",no.of.pcd.to.check) # Use a repeating list of the same postcode to remove it as a causal factor
b <- rep("WC2H 0HE",no.of.pcd.to.check) # As above
test.length <- 5 # How many iterations should the test run over
# Create results dataframe ----------
# and pre-set capacity to speed up the for loop
results.df <- data.frame(
Iteration=seq(1:test.length),
Result=as.integer(rep(0,test.length)),
Remaining=as.integer(rep(0,test.length)))
# Run the test ----------
for(i in 1:test.length){
x <- distQueryCheck() # Get remaining number of queries pre submission
try(mapdist(a, b, mode="driving", output="simple",override_limit=TRUE))
y <- distQueryCheck() # Get remaining number of queries post submission
query.use <- (x-y) # Difference between pre and post (ie number of successful queries submitted)
print(paste(query.use, "queries used"))
results.df[i,"Result"] <- query.use # Save successful number of queries for each test iteration
results.df[i,"Remaining"] <- y
}
我真的很感激有关我在哪里出错的见解。
答案 0 :(得分:0)
所以我有同样的错误信息,最后修复它只是改变了#&#39;#&#39;在号码&#39;的地址中。我没有专家,甚至没有查看mapdist代码,但是消除了#&#39;#&#39;允许我毫无问题地使用mapdist。