공항 거리 (IATA 코드)를 비교할 수있는 방법이 있는지 궁금합니다. 이 일부 스크립트는하지만, R.을 사용하지 않는 것은 그래서 나는 시도 그와 API를 사용하여 :API를 사용하여 R 내의 두 공항 (두 열) 간의 거리를 계산 하시겠습니까?
예 데이터 :
library(curl) # for curl post
departure <- c("DRS","TXL","STR","DUS","LEJ","FKB","LNZ")
arrival <- c("FKB","HER","BOJ","FUE","PMI","AYT","FUE")
flyID <- c(1,2,3,4,5,6,7)
df <- data.frame(departure,arrival,flyID)
departure arrival flyID
1 DRS FKB 1
2 TXL HER 2
3 STR BOJ 3
4 DUS FUE 4
5 LEJ PMI 5
6 FKB AYT 6
7 LNZ FUE 7
api<- curl_fetch_memory("https://airport.api.aero/airport/distance/DRS/FUE?user_key=d805e84363494ca03b9b52d5a505c4d1")
cat(rawToChar(api$content))
callback({"processingDurationMillis":0,"authorisedAPI":true,"success":true,"airline":null,"errorMessage":null,"distance":"3,416.1","units":"km"})
DRS 출발 및 FUE 도착 공항에 해당
그래서 나는 df
을 반복하여 URL에 붙여 넣습니다. 그러나 그는 R 위해 어떻게 든 어려운 보인다 - 신참
df$distance<- list(length = nrow(df))
for (i in 1:nrow(df)){
url <- paste0("https://airport.api.aero/airport/distance/", i, "FUE ?user_key=d805e84363494ca03b9b52d5a505c4d1")
myData[[i]] <- read.table(url, header=T,sep="|")
}
원하는 출력 :
departure arrival flyID distance
1 DRS FKB 1 1000
2 TXL HER 2 499
3 STR BOJ 3 300
4 DUS FUE 4 200
5 LEJ PMI 5 586
6 FKB AYT 6 10292
7 LNZ FUE 7 3939
'read.table'을 실행할 때 거리를 얻었습니까? 질문은 data.frame에 저장하는 방법입니다. 아니면 당신은 공항의 좌표계 만 얻으십니까? 당신의 질문은 그것들을 거리로 변형시키는 방법에 관한 것입니까? 또는 IATA 코드를 geocoordinates에 연결하는 것에 대한 질문입니까? – Qaswed
명확화 요청에 대한 긍정적 인 응답이있는 경우 closevote 제안에 참여하지 않았지만 코드의 두 번째 섹션에서 throw 된 오류로 인해 실제로 무엇이 요청되는지 명확하지 않습니다. –