<style type='text/css'>.TerraceMsg { font-size: 12px; font-family:Dotum, Arial, Verdana, Sans-Serif;}.Bold { font-weight: bold; }</style><div class='TerraceMsg'><p>I am trying to perform ordinary Kriging using gstat package on a hourly particulate matter(PM) concentration dataset. my dataset contains PM concentration for 1 hour of 107 sites. You can download dataset from <a href="https://drive.google.com/drive/folders/0ByY3OAw62EShfkFtUl9yaDB2WjdWSGYzZFZjR0t5RFVheV9ENEtGQnBzZGd4Q2N6dkI3T28" target="_self">here</a>. After performing ordinary kriging, I did cross validation. but I got the correlation coefficient between observed values and predicted values is ver low (.15~.30). I checked many combination of model (Gau,Exp,Sph), width, cutoff, intial parameter value but still correlation coefficient is low. Am I doing any mistake in my code? Is there anything to do, to get high correlation coefficient?</p><p> </p><p>My r code using gstat package:</p><p> </p><p>library(sp)<br>library(gstat)<br>library(rgdal)</p><p>seoul030101.cv <- read.csv("seoul311.csv")<br>seoul030101.cv<-na.omit(seoul030101.cv)</p><p> </p><p>#Coordinates<br>coordinates(seoul030101.cv) <- ~LON+LAT<br>proj4string(seoul030101.cv) =  "+proj=longlat +datum=WGS84" <br>seoul030101.cv<-spTransform(seoul030101.cv, <br>                            CRS("+proj=utm +north +zone=52 +datum=WGS84"))<br>seoul030101.cv <- as.data.frame(seoul030101.cv)</p><p> </p><p>#Variogram modeling<br>seoul030101.cv_var<-variogram(log(PM10)~1, data=seoul030101.cv,locations = ~LON+LAT, width = 6600, cutoff = 66000)<br>seoul030101.cv_var   #to see the number of pairs<br>plot(seoul030101.cv_var, cex = 1.5, pch= 16, col = "black")<br>model.311.cv<- fit.variogram(seoul030101.cv_var,vgm(psill=0.10,model="Gau",range=40000,nugget=0.02), fit.method = 2)<br>model.311.cv&
nbsp;  #give the parameter values<br>plot(seoul030101.cv_var,model=model.311.cv, col="black", pch=16,cex=1.3, xlab="Distance",ylab="Semivariance",main="Omnidirectional Variogram for seoul 311")</p><p> </p><p>#Cross Validation                            <br>cv_pr<- krige.cv(log(PM10) ~1, data=as.data.frame(seoul030101.cv),locations = ~LON+LAT, model=model.311.cv,nfold=10)</p><p> </p><p><strong>#Correlation coefficient</strong></p><p>#correlation observed and predicted, ideally 1<br>cor(cv_pr$observed, cv_pr$var1.pred)</p><p> </p><p># correlation predicted and residual, ideally 0<br>cor(cv_pr$var1.pred, cv_pr$residual)</p><p> </p><p>#other statistics</p><p># mean error, ideally 0:<br>(mean(cv_pr$residual))</p><p>#rmse</p><p>(rmse <- sqrt(mean(cv_pr$residual^2)))</p><p># Mean square normalized error, ideally close to 1<br>(mean(cv_pr$zscore^2))</p><p> </p><p>Thanks in advance.</p><p>Orpheus</p><p> </p></div><br><br/><br/><table border=0 cellpadding=0 cellspacing=0 ><tr><td style='vertical-align: top;font-size:9pt;'><div jquery1411706373835="566"><br></div></td></tr></table><br>
<div id='TMSMDN' style="background:url('http://mail.gist.ac.kr:80/mail/receiveMDN.do?mdnData=oGhEpHGdw7UD%2BvJWe%2BEHzkggFWdbf7oq1H4ees0gG0J0zFr8WhxqQHRdcf38wcQHE6tbxJm5W7NR%0AGHT8AASGHdC0LRFH2KLUQmfUK61JygODMGvG%2Fe9TKl0LdC%2BrHiy21VkJ8fVDCp%2Fy3dDMaHhRFA%3D%3D%0A')"></div>