這是一個有點棘手,以顯示我的真實數據的問題,但我希望以下的介紹:dplyr ::發生變異:臨時貴變量輸入到其他幾個操作,橫行
data_frame(a=c(1,2), b=c(3,4)) %>%
rowwise %>%
mutate(c = a*b, d = c-1, e=c+2) %>%
ungroup
在上面的例子中當然rowwise
是不需要的。
現在讓我們假設c
的計算既耗時又耗時,c
是一個很大的對象而沒有向量化。 所以你不需要執行兩次,並且希望在每一行計算髮生後從內存中清除它。
有沒有一個聰明的方法來做到這一點?也許用purrr::map
?
有人請糾正我,如果我錯了,但對象沒有矢量化;它是矢量化的操作。在這種情況下,對於矢量'a'和'b',乘法,加法和減法都是矢量化的。因此,對於'c'。如果我說的話完全沒有了,那麼我可能不會理解這個問題。 – Abdou
是的,我的意思是創建c,d,e的計算/操作應該假設不是爲了我的目的而被矢量化的。 –