Ответ 1
within
позволяет использовать ранее определенную переменную позже, но не transform
:
within(BOD, { a <- demand; b <- a }) # ok
transform(BOD, a = demand, b = a) # error
Обратите внимание, что я определил вариант transform
, который больше напоминает within
несколько лет назад здесь, где он называется my.transform
. Используя это, мы могли бы написать выше:
my.transform(BOD, a = demand, b = a) # ok
В приведенных выше примерах within
(или my.transform
) было бы лучше, но в следующем transform
было бы лучше:
transform(BOD, Time = demand, demand = Time) # swap columns
within(BOD, { Time <- demand; demand <- Time }) # oops
(Для выполнения подкачки с within
потребуется определить временную.)