2014-11-18 6 views
1

Когда я выполняю интерполяцию в R, используя пакет gstat, появляется сообщение, подобное этой [интерполяции с обратным расстоянием], или это [обычное или взвешенное предсказание наименьших квадратов] '. Например:Пространственная интерполяция в R gstat без сообщения

library('sp') 
library('gstat') 
data(meuse) 
coordinates(meuse) = ~x + y 
data(meuse.grid) 
coordinates(meuse.grid) = ~x + y 
gridded(meuse.grid) <- TRUE 
zn.tr1 <- krige(log(zinc) ~ x + y , meuse, meuse.grid) 

[предсказания обычной или взвешенных наименьших квадратов]

Как отключить это сообщение?

ответ

2

Существуют различные способы остановки выхода - самое прекрасное бытие, если функция имеет возможность ее подавить. Но krige, похоже, не имеет этого.

capture.output работает здесь:

> rm(zn.tr1) 
> zn.tr1 # there is no zn.tr1 
Error: object 'zn.tr1' not found 
> z = capture.output(zn.tr1 <- krige(log(zinc) ~ x + y , meuse, meuse.grid)) 
> str(zn.tr1) # there is now 
Formal class 'SpatialPixelsDataFrame' [package "sp"] with 7 slots 
    [email protected] data  :'data.frame': 3103 obs. of 2 variables: 
    .. ..$ var1.pred: num [1:3103] 6.16 6.18 6.14 6.1 6.19 ... 

Выходной само сообщение возвращается и хранится в z

> z 
[1] "[ordinary or weighted least squares prediction]" 

Но если вы не печатаете его вы не увидите.

3

Или установить уровень отладки только один ниже по умолчанию:

zn.tr1 <- krige(log(zinc) ~ x + y , meuse, meuse.grid, debug.level = 0)