Ich habe festgestellt, dass sich data.frame
und data.table
Zeilenunterset- zungen unterscheiden, wenn es um NA-Werte geht.R data.table - Zeilen-Subsetting-Verhalten - NA-Werte
Sauberer Code:
DF <- data.frame(COL1 = c(1, 2, NA))
DF[DF$COL1 == 1, ]
DF[DF$COL1 != 1, ]
DT <- data.table::data.table(COL1 = c(1, 2, NA))
DT[COL1 == 1, ]
DT[COL1 != 1, ]
Code mit Ergebnissen:
> DF <- data.frame(COL1 = c(1, 2, NA))
> DF[DF$COL1 == 1, ]
[1] 1 NA
> DF[DF$COL1 != 1, ]
[1] 2 NA
> DT <- data.table::data.table(COL1 = c(1, 2, NA))
> DT[COL1 == 1, ]
COL1
1: 1
> DT[COL1 != 1, ]
COL1
1: 2
Gibt es besondere Gründe dafür?
Dank
Nein, nur verschiedene Möglichkeiten, damit umzugehen –
Neben dem dupe Link gibt es auch mehr Diskussion hier: http://stackoverflow.com/questions/16239153/dtx-and-dtx-treat-na-in-x -inkonsistent – Frank
Oh, danke. Entschuldigung für das Duplikat. –