Die Daten.Tabelle-Teilmenge von NaN funktioniert nicht

Ich habe eine Spalte in einer Datentabelle mitNaN Werte. So etwas wie:

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)

Ich kann das benutzenJ() Funktion, um alle Fälle zu finden, in denen diex Spalte ist gleich .2

> my.dt[J(.2)]

     x  y
1: 0.2 10
2: 0.2 12

Aber wenn ich das Gleiche versucheNaN es funktioniert nicht

> my.dt[J(NaN)]

     x  y
1: NaN NA

Ich würde erwarten:

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

Was gibt? Ich kann nichts in der data.table-Dokumentation finden, um zu erklären, warum dies geschieht (obwohl es nur sein kann, dass ich nicht weiß, wonach ich suchen soll). Gibt es eine Möglichkeit, das zu bekommen, was ich will? Letztendlich möchte ich alle ersetzenNaN Werte mit Null, mit etwas wiemy.dt[J(NaN), x := 0]

Antworten auf die Frage(3)

Ihre Antwort auf die Frage