[問題] 關於雙重迴圈
[問題類型]:
程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來)
[軟體熟悉度]:
入門(寫過其他程式,只是對語法不熟悉)
[問題描述]:
抱歉,剛學習R語言一個月還很菜,第一次上來發問,如果排版和問題敘述不好請多包涵
。
目前我有兩個dataframe先稱為a和b 兩個dataframe的資料量不相同,但欄位都一樣有三
個
分別為經度、緯度、和一個計算的值
然後目標是用gdist(a$long,a$lat,b$long,b$lat,units = "km")
來計算a的所有點到b的所有點的分別距離
如果某個b點有距離某個a點大於10公里的就捨棄掉那個b點
現在我是使用雙層迴圈來進行處理
想法大概如下
while(x<=a資料量){
y<-1
while(y<=b資料量){
if(a第x列和b第y列距離<=10)
保留b
y<-y+1
}
x<-x+1
}
但是只要a或是b的資料量大一點,速度就會非常慢
想請問版上大大有沒有比較好的辦法處理這方面的問題
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.150.150.3
※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1479911568.A.F76.html
→
11/23 22:40, , 1F
11/23 22:40, 1F
→
11/23 22:40, , 2F
11/23 22:40, 2F
已站內信資料,感謝大大
※ 編輯: yashawnya (118.150.150.3), 11/23/2016 23:07:21
R_Language 近期熱門文章
PTT數位生活區 即時熱門文章