[R] R (3.1.2) sub-setting code related to "NA" on Windows not working!

peter dalgaard pdalgd at gmail.com
Mon Apr 13 17:32:10 CEST 2015


This is almost unreadable due to HTML posting (do read the posting guide!). However, it would seem that you somehow got your data converted to factors of which one level is NA. 

This may be surprising, but the difference is like that of

> factor(c("NA", 18))
[1] NA 18
Levels: 18 NA
> factor(c("NA", 18), exclude="NA")
[1] <NA> 18  
Levels: 18

Notice that NA can be a real factor level, for instance abbreviating "North America" or "Noradrenaline".

It is fairly easy to generate this situation during data input, e.g.

> read.table(text="
+ NA
+ 18", na.strings="")$V1
[1] NA 18
Levels: 18 NA
 
-pd

On 13 Apr 2015, at 15:33 , Sarada Samantaray <sarada at greenhorizon.in> wrote:

> My AirQuality[4,1] is equal to 18 and AirQuality[5,1] is equal to NA.
> When I type the following
>> is.na(AirQuality[5,1])[1] FALSE> AirQuality[5,1][1] NA68 Levels: 1 10 108 11 110 115 118 12 122 13 135 ... NA> is.na(AirQuality[4,1])[1] FALSE> AirQuality[4,1][1] 1868 Levels: 1 10 108 11 110 115 118 12 122 13 135 ... NA> 
> For is.na(AirQuality[5,1]) I am expecting a TRUE (but False is the output from R). Can you please help. Or Let me know what I am doing wrong!
> RegardsSarada 		 	   		  
> 	[[alternative HTML version deleted]]
> 
> ______________________________________________
> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.

-- 
Peter Dalgaard, Professor,
Center for Statistics, Copenhagen Business School
Solbjerg Plads 3, 2000 Frederiksberg, Denmark
Phone: (+45)38153501
Office: A 4.23
Email: pd.mes at cbs.dk  Priv: PDalgd at gmail.com



More information about the R-help mailing list