El subconjunto de data.table por NaN no funciona

Tengo una columna en una tabla de datos conNaN valores. Algo como:

my.dt <- data.table(x = c(NaN, NaN, NaN, .1, .2, .2, .3), y = c(2, 4, 6, 8, 10, 12, 14))
setkey(my.dt, x)

Puedo usar elJ() función para encontrar todas las instancias donde elx columna es igual a .2

> my.dt[J(.2)]

     x  y
1: 0.2 10
2: 0.2 12

Pero si intento hacer lo mismo conNaN no funciona

> my.dt[J(NaN)]

     x  y
1: NaN NA

Yo esperaría:

     x  y
1: NaN  2
2: NaN  4
3: NaN  6

¿Lo que da? No puedo encontrar nada en la documentación de la tabla de datos para explicar por qué sucede esto (aunque puede ser que no sepa qué buscar). ¿Hay alguna manera de conseguir lo que quiero? En última instancia, me gustaría reemplazar todos losNaN valores con cero, usando algo comomy.dt[J(NaN), x := 0]

Respuestas a la pregunta(3)

Su respuesta a la pregunta