this used to work in data.table v1.9.4 but now throws an error in v1.9.6:
dt <- data.table(i=1:10, f=as.factor(1:10))
dt[f==3]
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.
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.