When I do cbind(DT, DF), where DT has a key, the result loses the key. cbind can't change ordering though, so why does that happen? I can understand if you are trying to combine two keyed DT's that the result is ambiguous, but it isn't in this case.