You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
if (grepl(":=.*defined for use in j.*only", e$message))
stop("Operator := detected in i, the first argument inside DT[...], but is only valid in the second argument, j. Most often, this happens when forgetting the first comma (e.g. DT[newvar := 5] instead of DT[ , new_var := 5]). Please double-check the syntax. Run traceback(), and debugger() to get a line number.")
else
.checkTypos(e, names_x)
})
The text was updated successfully, but these errors were encountered:
#4304 is meant to provide an alternative interface for this kind of operations, which should be more reliable.
It takes out eval call from i. Note that arguments of env are not lazily evaluated. So this version is more like computing y==5 and then providing to i, which may not be exactly what you want.
Note that arguments of env are not lazily evaluated. So this version is more like computing y==5 and then providing to i, which may not be exactly what you want.
@jangorecki , it means the below codes (this is what I really want to do) won't work then, correct? As eval() can't find the value of A in your example provided.
local({
y=5
fun(A%in%y)
})
I'll see if there's an easy and straightforward fix for this.
See the example below
Created on 2020-11-04 by the reprex package (v0.3.0)
The error is thrown from
data.table/R/data.table.R
Lines 357 to 364 in 70b6b13
The text was updated successfully, but these errors were encountered: