Hi, I'm currently trying to calculate local Getis-Ord Gi* statistics for a 169x315 cell matrix of temperature values, below is the code I currently have (diffc is the data vector I am removing NaN values from, and I am moving said values to diffD; -999 represents NaN values; id contains ID values for cells I want to use in the calculation, which I already know to contain 25064 values):
/counter = 1 diffD = array(0,25064) id = array(0,25064) for(i in 1:53235){ if(diffc[i]!=-999){ diffD[counter] = diffc[i] id[counter] = i counter = counter+1 } } ##Isolates values I want to use in localG calculation neigh = cell2nb(169,315,type=='queen') neigh2 = subset.nb(neigh,(1:length(neigh) %in% id) mylist = nb2listw(neigh2,style="B") stats = localG(diffD,mylist)/ Unfortunately, when I get to the last line of the code, I receive the following error: /"Error in matrix(0, nrow = nrow(x), ncol = ncol(x)) : invalid 'ncol' value (too large or NA)"/ I can't figure out what it is referring to, as I have verified that there are no NA values and "ncol" should only be 1, as diffD and mylist are the same size (25064 data regions). My data works when I don't remove the cells with values of -999, however it returns some ridiculous Z-values (as expected). All I can think of is that I'm either using subset.nb() incorrectly or subset.nb() isn't returning a useable nb object in localG(). I'm basically trying to mimic ArcGIS' "Hot Spot Analysis" to locate cold and hot spots spatially in this code. Thanks, Dan -- View this message in context: http://r.789695.n4.nabble.com/Subsetting-NaN-values-in-localG-tp3662781p3662781.html Sent from the R help mailing list archive at Nabble.com. ______________________________________________ R-help@r-project.org mailing list 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.