[R] Stop Warnings for Invalid Factor Level, NAs generated?

From: <khobson_at_fd9ns01.okladot.state.ok.us>
Date: Thu 23 Jun 2005 - 23:09:11 EST

How can I stop the following warning from occuring? invalid factor level, NAs generated in: "[<-.factor"(`*tmp*`, iseq, value = structure(1, .Label = "12", class = "factor"))

The Label messages are for "5", "8", "12" and "46". I want the NAs to be generated as needed.

Is this causing R to slow down by generating the warning messages? There are over 50. I loop through up to 10 datasets and append one row from each to create a summary dataset.

The full code and data is too long to post. The snippet below might explain what I'm doing somewhat. I'll work up some sample data and code if no solutions are found.

...snip
> # Get info on first and last pair sets and lab names in last pair
> nlabs <- labdata[["LABNUMBER"]] #e.g. 1, 2, 5, 6, ...
> nolabs <- length(nlabs) #Total number of labs in last pair of labdata
> #dpdata <- labdata[which(labdata[["LABNUMBER"]] == 13),] #Dummy paired
data row
> dpdata <- rbind(labdata[0,], NA)
> pdata <- dpdata
> # Loop through pairs of labdata to build pdata for pairs (last 10 years

or less)
> k=0
> for(j in nlabs){

+   for(i in ifpair:ilpair){
+     k <- k + 1  #Counter for number of pairs.  Start at 1.
+     setwd(dirs[i]); load("labdata.Rdata")    #No trailing "/" in wd
+     setwd(cdir) #Go back to original ESN pair (last pair's folder in
analysis)
+     tpdata <- labdata[which(labdata[["LABNUMBER"]] == j),]
+     if(NROW(tpdata) == 0){
+       tpdata <- dpdata
+       tpdata[which(names(labdata) == "LABNUMBER")] <- j
+       tpdata[which(names(labdata) == "ESN")] <-
ESN-((ilpair-ifpair)+1-k)*2
+             tpdata[which(names(labdata) == "ESNm1")] <-
ESN-((ilpair-ifpair)+1-k)*2-1
+     }
+   #pdata[nrow(pdata)+1,names(tpdata)] <- NA
+   pdata[nrow(pdata)+1,names(tpdata)] <- tpdata
+ }
+ }
There were 50 or more warnings (use warnings() to see the first 50) ...snip

mailto:khobson@odot.org
Kenneth Ray Hobson, P.E.
Oklahoma DOT - QA & IAS Manager
200 N.E. 21st Street
Oklahoma City, OK 73105-3204
(405) 522-4985, (405) 522-0552 fax

Visit our website at:
http://www.okladot.state.ok.us/materials/materials.htm



R-help@stat.math.ethz.ch mailing list
https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html Received on Thu Jun 23 23:12:18 2005

This archive was generated by hypermail 2.1.8 : Fri 03 Mar 2006 - 03:32:58 EST