2015-03-25 99 views
-1

我是R的新手,我試圖在R和GIS中制定污染模型。污染模型R

我有這樣的代碼:

setwd("D:/+gis/hranice") 
library("foreign", lib.loc="D:/Program Files/R/R-3.1.1/library") 
y <- read.csv("distancematrix.csv",header=T,sep= ",")    #load distance matrix 
sub_districts <- read.dbf("ku_pl.dbf")   #load sub_district data 

#Set-Up and Assumptions 
length <- 3550      #sets width of distance matrix 
width <- 9     #sets length of distance matrix 
x <- matrix(0,length,width)  #ground level concentration (micro-g/m^3) 
Q <- 1000      #assume source strength 
s <- 9       #assume 10 stacks per firm all at the same height 
alpha <- .008      #assumes neutral horizontal dispersion 
beta <- .006      #assumes neutral vertical dispersion 
u <- 3       #assumes constant wind speed in all directions 
PM_before <- 0     #sets initial PM Level Vector Before Intervention 
PM_after <- 0      #sets initial PM Level Vector After Intervention 
PM_data <- 0      #Sets initial value for final data 
set.seed(1)      #saves specific randomized values on next line 
H <- 100 #random stack heights between 5 and 30 meters 

#Gaussian Plume Model 
for (j in 1:width) { 
    for (i in 1:length) { 
    x[i,j] <- (Q*s/(pi*(y[i,j]*alpha/((1+.0001*y[i,j])^.5)*(y[i,j]*beta/(1+.00015*y[i,j])^.5))*u))* 
    (exp(-.5*(H[j]/(y[i,j]*beta/(1+.00015*y[i,j])^.5))^2)) 
    } 
} 

PM_before <- rowSums(x)*1000 #sum over all industry contributions to PM, convert from g to mg 
PM_after <- .60 * PM_before #assume the treatment reduces PM to 60% original concentration 
PM_data <- cbind(sub_districts,PM_before,PM_after) 
write.dbf(PM_data, "ku_pl.dbf")` 

如果我運行這個模式,我得到這個消息

Warning messages: 
1: In min(x) : no non-missing arguments to min; returning Inf 
2: In max(x) : no non-missing arguments to max; returning -Inf 
3: In min(x) : no non-missing arguments to min; returning Inf 
4: In max(x) : no non-missing arguments to max; returning -Inf 

它是什麼,告訴我?它適用於一個源,但不適用於此。根據我們沒有數據文件

+1

你的代碼運行。請發佈數據或其中的一小部分,以便我們有一個[可重現的示例](http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example)。 – Molx 2015-03-25 15:59:54

+0

我只在試圖繪製所有缺失數據時纔看到這個錯誤 - 例如'plot(NA,NA)',但我在這裏看不到任何繪圖。哪一行產生錯誤? – Spacedman 2015-03-25 16:56:20

回答

-1

你可能會被零某處將...

> 1/0 
[1] Inf 

> -1/0 
[1] -Inf