我有一個數據框與數字緯度和經度值。 data.frame有14K行和40列。什麼是更快的方式來逐行操作data.frame中的一列?
我想在數據框中添加一個名爲「hemisphere」的類別列,以便輕鬆區分北部(緯度> 0)和南部位置(緯度< 0)。這是我做的:
for (r in 1:nrow(myDataFrame)) {
if (myDataFrame[r, "latitude"] > 0) {
myDataFrame[r, "hemisphere"] <- "North"
} else {
myDataFrame[r, "hemisphere"] <- "South"
}
}
運行這段代碼塊需要大約一分鐘,也許兩個,在我的MacBook Pro - 更長的時間比我期望。看起來好像有些東西使它效率很低,應該有更好的方法。任何提示?
myDataFrame = transform(myDataFrame,hemisphere = ifelse(latitude> 0,「North」,「South」))'? – baptiste
@baptiste是的,那真的很快。謝謝!爲什麼不把它作爲一個真正的答案? – Marian