//¤³¤Î¥Ú¡¼¥¸¤¬É½¼¨¤µ¤ì¤ëÊý¤Ï¡¢URL¤«¤é¡Öaction=SOURCE&¡×¤òºï½ü¤·¤Æ¤ß¤Æ¤¯¤À¤µ¤¤ [[£ÒÈ÷˺Ͽ - µ­»ö°ìÍ÷]] !!!¶õ´ÖÅý·× ­¤ - ¡Úgstat¡Û¥Ð¥ê¥ª¥°¥é¥à¤«¤éÆÃÄê¤Î°ÌÃ֤ˤª¤±¤ëÃͤò¿äÄꤹ¤ë *Åê¹Æ¼Ô¡§ ¤ß¤å *¥«¥Æ¥´¥ê¡§ ¤Ê¤· *Í¥ÀèÅÙ¡§ ÉáÄÌ *¾õÂÖ¡§ ´°Î» *Æü»þ¡§ 2009ǯ06·î30Æü 16»þ35ʬ14Éà //{{bugstate}} !!ÆâÍÆ *¶õ´ÖÅý·× ­¤ *¡Úgstat¡Û¥Ð¥ê¥ª¥°¥é¥à¤«¤éÆÃÄê¤Î°ÌÃ֤ˤª¤±¤ëÃͤò¿äÄꤹ¤ë !!¿äÄê *¡ÖThe R Book¡×¤è¤ê°úÍÑ *Ä̾﷿¥¯¥ê¥®¥ó¥°¥·¥¹¥Æ¥à¤Ï {{ref_image ss_4_2.png}} *¤È¤¤¤¦ÉÔÊÐÀ­¤ò³ÎÊݤ·¤¿¿äÄêʬ»¶¤ÎºÇ¾®²½¤ò²ò¤¯¤³¤È¤Ë¤è¤Ã¤ÆÆÀ¤é¤ì¤ë°Ê²¼¤Î¥·¥¹¥Æ¥à¤ò²ò¤¯¤À¤±¡¢¤é¤·¤¤¡¥ {{ref_image ss_4_3.png}} *¤³¤ì¤Çµá¤Þ¤Ã¤¿£÷¤ò¥¦¥¨¥¤¥È¤À¤È»×¤Ã¤Æ¡¢´Ñ¬¤µ¤ì¤¿¥Ç¡¼¥¿¤ò²Ã½ÅÊ¿¶Ñ¤¹¤ë¡¥¤È¡¢x0¤Î°ÌÃ֤οäÄêÃͤ¬µá¤Þ¤ë¡¥ library(gstat) library(lattice) # - ¥á¥¦¥¹Àî data(meuse) data(meuse.grid) x <- variogram(object=log(zinc)~1, locations=~x+y, data=meuse, cutoff=3000) plot(x) model1 <- vgm(psill=0.6, model="Sph", range=600, nugget=0) plot(x, model=model1) model2 <- fit.variogram(object=x, model=vgm(psill=0.6, model="Sph", range=600, nugget=0)) plot(x, model=model2) g <- gstat(id="logzn", formula=log(zinc)~1, locations=~x+y, data=meuse, model=model2) xo <- predict.gstat(g, meuse.grid[,1:2]) # - ¿äÄê krig_mat <- diag(0, nrow(meuse)) krig_mat[lower.tri(krig_mat)] <- variogramLine(model2, dist_vector=dist(meuse[,c("x","y")]))[,2] krig_mat <- t(krig_mat) krig_mat[lower.tri(krig_mat)] <- variogramLine(model2, dist_vector=dist(meuse[,c("x","y")]))[,2] krig_mat <- rbind(krig_mat, 1) krig_mat <- cbind(krig_mat, 1) krig_mat[nrow(meuse)+1,nrow(meuse)+1] <- 0 solve_krig_mat <- solve(krig_mat) y <- apply(meuse.grid[,c("x","y")], 1, function(x, meuse, solve_krig_mat){ x <- c(x[1], x[2]) n <- nrow(meuse) ret <- variogramLine(model2, dist_vector=sqrt((meuse[,"x"] - x[1])^2 + (meuse[,"y"] - x[2])^2)) krig_vec <- c(ret[,2], 1) ret <- solve_krig_mat %*% krig_vec sum(log(meuse$zinc) * ret[1:n]) }, meuse=meuse, solve_krig_mat=solve_krig_mat ) mean(xo[,3] - y) plot(xo[,3], y) *¤³¤Î¤è¤¦¤Ë°ì½ï¤Ë¤Ê¤Ã¤¿ {{ref_image ss_4_1.png}} *¤Þ¤¢gstat¤Ê¤é°Ê²¼¤è¤¦¤Ë¤¹¤ì¤Ð¤¤¤¤¤À¤±¤Ê¤ó¤À¤¬¡¥ g <- gstat(id="logzn", formula=log(zinc)~1, locations=~x+y, data=meuse, model=model2) xo <- predict.gstat(g, meuse.grid[,1:2]) !!¥³¥á¥ó¥È //{{comment}}