Ich habe gerade ein seltsames Verhalten von R, die ich gerne verstehen würde.Warum ist NA^0 in R gibt 1 und nicht NA
Wenn ich tun NA^0
gibt es 1 und nicht NA, wie ich es erwartet hätte.
Beispiel:
v1 <- c(2,NA,1)
v1^0
[1] 1 1 1
v1**0
[1] 1 1 1
^
und **
sind arithmetische Operatoren (help("^")
) wie -
, +
usw., die in ihrem Fall gibt NA:
v1+0
[1] 2 NA 1
v1-0
[1] 2 NA 1
Warum die verschiedenen Betreiber performe anders mit NAs?
Ich erinnere mich an meinen Mathematiklehrer sagen *** "Alles auf 0 ist 1". *** –
Dies ist, was es tut. Dieses Ergebnis wurde für eine Reihe von SO-Antworten genutzt, um vektorisierte Lösungen in Gegenwart von NA-Werten zu erzeugen. – lmo
Sie können dies betrachten: http://StackOverflow.com/Questions/17863619/Why-Does-Nan0-1 – PKumar