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
the thrown error is: Error in bmerge(i, x, leftcols, rightcols, io <- FALSE, xo, roll = 0, : x.'f' is a factor column being joined to i.'V1' which is type 'double'. Factor columns must join to factor or character columns.
the error can be avoided by adding additional conditions, e.g. dt[f==3 & TRUE] or by comparing to characters (as indicated by the error itself): dt[f=="3"]. not sure, whether this is a bug or a feature, but I though it's worthwhile reporting.
The text was updated successfully, but these errors were encountered:
The problem seems to be that on line 471 of data.table.R, you check
mode(x[[isub2]]) != mode(RHS)
However, both factors and integers have mode "numeric", so it skips this part and moves on to the standard auto-indexing, where bmerge chokes. I'm not sure what the right substitution is for line 471 but that is where the fix should go.
this used to work in data.table v1.9.4 but now throws an error in v1.9.6:
the thrown error is:
Error in bmerge(i, x, leftcols, rightcols, io <- FALSE, xo, roll = 0, : x.'f' is a factor column being joined to i.'V1' which is type 'double'. Factor columns must join to factor or character columns.
the error can be avoided by adding additional conditions, e.g.
dt[f==3 & TRUE]
or by comparing to characters (as indicated by the error itself):dt[f=="3"]
. not sure, whether this is a bug or a feature, but I though it's worthwhile reporting.The text was updated successfully, but these errors were encountered: