2016-01-27 2 views
1

Я хочу использовать функцию stack в базе R, как показано на этом answer моего предыдущего вопроса. Тем не менее, я также использую raster пакет (который содержит также stack функции), и этот пакет получает всегда ошибку:R: Как использовать «стек» вместо «стека» (из растрового пакета)?

Error in (function (classes, fdef, mtable) : 
    unable to find an inherited method for function ‘raster’ for signature ‘"numeric"’ 

Есть ли способ, чтобы назначить пакет для функции? Или идея, как использовать функцию стека в базе R, а не растровом пакете?

Здесь воспроизводимый пример моего предыдущего вопроса:

library(raster) 
group1 <- c(101, 106) 
group2 <- c(102, 104) 
group3 <- c(105, 103) 
S <- stack(list(group1 = group1, group2 = group2, group3 = group3)) 

Спасибо за ваши идеи.

ответ

2

Вы можете использовать префикс utils:: как этот

S <- utils::stack(list(group1 = group1, group2 = group2, group3 = group3)) 
+0

Спасибо, я видел этот тип кодирования уже, но я не понял этого раньше. –

+0

Я мало знаю о теории кодирования (я скорее использую эти вещи практически). Я считаю, что правильная терминология заключается в том, что '::' задает пространство имен, из которого выбрана функция, но я буду рад быть исправлен, если будет более точное объяснение. – RHertel

Смежные вопросы