2017-08-03 55 views
0

我有機場數據框中的位置和日期列表,需要通過天氣數據(24列)對其進行擴展,其中每行必須通過getWeatherForDate函數。R:通過向數據幀添加多個列的函數處理每行

Location Date 
AMS 2017-08-01 
AMS 2017-08-02 
EDI 2017-08-02 
... 

因爲我想有這些地方額外24列由該函數返回被加入了與我的數據幀數據幀結果。 每行已被類似處理:

getWeatherForDate(aiports$Location, aiports$Date, opt_all_columns = TRUE)

所需的輸出:

Location Date Min_temp Max_temp Max_humidity ... 
AMS 2017-08-01 21 30 88 
AMS 2017-08-02 23 28 87 
EDI 2017-08-02 12 18 77 
... 

什麼做的聰明和最佳的方式?通過? lapply?的foreach? 任何建議,將不勝感激。

感謝,米哈爾

+0

如果它的每一行,然後'lapply'不會做它,因爲它處理'data.frame '專欄。也許'應用(機場,1,FUN)'。 –

回答

0

我設法用by功能來做到這一點:

output <- do.call("rbind", by(aiports, 1:nrow(aiports), function(row) cbind(row, getWeatherForDate(row$Location, row$Date)))) 
相關問題