NaN wird entfernt, wenn na.rm = TRUE verwendet wird

8

Dieses reproduzierbare Beispiel ist eine sehr vereinfachte Version meines Codes:

%Vor%

Für mich sind NA (fehlender Wert) und NaN (keine Zahl) zwei völlig verschiedene Entitäten. Warum entfernt na.rm NaN ? Wie kann ich NA und nicht NaN ignorieren?

ps: Ich verwende 64-Bit-R-Version 3.0.0 unter Windows7.

Bearbeiten: Bei einigen weiteren Studien habe ich festgestellt, dass is.na auch für NaN wahr ist! Dies ist die Ursache der Verwirrung für mich.

%Vor%     
Nishanth 16.04.2013, 03:49
quelle

2 Antworten

6

Es ist eine Sprachentscheidung:

%Vor%

is.nan unterscheidet:

%Vor%

Sie müssen also möglicherweise beide anrufen.

    
Matthew Lundberg 16.04.2013, 03:51
quelle
3

na.rm Argumente in Funktionen verwenden im Allgemeinen is.na() oder eine analoge Funktion.
Und seit is.na(NaN) == TRUE erhalten Sie dann das Verhalten, das Sie beobachten.

Nun sollte NaN wie auch NA behandelt werden? Das ist eine andere Frage;)

Der beste Weg ist, explizit R anzugeben, wie mit NaN umzugehen ist. Ein Beispiel:

%Vor%     
Ricardo Saporta 16.04.2013 03:53
quelle

Tags und Links