meta data for this page
- en
This is an old revision of the document!
Fundamentos e Aplicações em Recursos Florestais

5.1. Programação Orientada a Objetos
5.1.1. Funções
Como os diferentes tipos de objetos de dados já vistos, as funções do R também são objetos, mas de uma classe especial: “function”:
1 ###################################################### 2 ########### 5 NOÇÕES DE PROGRAMAÇÃO 3 ########### 5.1 Programação Orientada para Objetos 4 ###################################################### 5 # 5.1.1. Funções 6 7 class( ls ) 8 class( log ) 9 class( sin ) 10
No caso das funções, podemos associar a elas os argumentos que elas necessitam para serem executadas:
11 args( ls ) 12 args( log ) 13 class( args( log ) ) 14
Algumas funções matemáticas, no entanto, tem sempre apenas um argumento e são consideradas funções primitivas:
15 args( sin ) 16 sin 17 args( exp ) 18 exp 19
5.1.2. O Mundo dos Objetos
Um aspecto importante num ambiente orientado a objetos é que tudo o que o ambiente trabalha é um objeto e o ambiente não pode trabalhar com nada que não seja um objeto conhecido. Inclui nessa categoria tudo aquilo que o R apresenta na tela, por isso toda saída do R pode ser guardada num objeto:
20 # 5.1.2. O Mundo dos Objetos 21 22 zoo = c(7, 9, 1, 4) 23 names(zoo) = c("onça", "anta", "tatu", "guará") 24 length( zoo ) 25 zoo.comp = length( zoo ) 26 zoo.comp 27 class( zoo ) 28 zoo.class = class( zoo ) 29 zoo.class 30 class( zoo.class ) 31 names( zoo ) 32 class( names( zoo ) ) 33 length( names( zoo ) ) 34
Quando o R nos mostra, como resultado de uma operação, valores como NULL
e integer(0)
ele está dizendo que o resultado é vazio, isto é, não há resultado. Mas, no caso de NULL
ele indica uma classe de objeto (a classe vazia), enquanto que no caso do integer(0)
ele indica que o resultado é um vetor de númerios inteiros (integer
) como comprimento igual a zero.
35 b = 1:8 36 b 37 b.nm = names( b ) 38 b.nm 39 b.10 = b[ b > 10 ] 40 b.10 41 class(b.nm) 42 class(b.10) 43
Veja que o NULL
é um valor válidos para a atribuição:
44 zoo2 = zoo 45 zoo2 46 names( zoo2 ) 47 names( zoo2 ) = NULL 48 zoo2 49 names( zoo2 ) 50