7.1 Propriedades
typeof()
para descobrir o tipo de dadolength()
para descobrir o tamanho de um tipo de dadoattributes
(informações acionais específicas do dado), entre eles o atributo mais comum está onames()
.
7.1.1 Nomeando vetores
As 3 formas equivalentes mais comuns de criar vetores com nomes são demostradas abaixo com um exemplo de dados mensais de precipitação.
- Durante a criação, com a função
c()
incluindo os nomes nos argumentos
# vetor de chuva mensal para um dado ano
prec <- c(
jan = 300,
fev = 150,
mar = 210,
abr = 12,
mai = 0,
jun = 0,
jul = 12,
ago = 22,
set = 100,
out = 120,
nov = 10,
dez = 280
)
- Modificando um vetor com a função
names()<-
prec <- c(300, 200, 210, 12, 0, 0, 12, 22, 100, 120, 10, 280)
meses <- c("jan", "fev", "mar", "abr", "mai", "jun", "jul", "ago", "set", "out", "nov", "dez")
names(prec) <- meses
prec
#> jan fev mar abr mai jun jul ago set out nov dez
#> 300 200 210 12 0 0 12 22 100 120 10 280
- Criando um vetor modificado
prec <- setNames(
object = c(300, 200, 210, 12, 0, 0, 12, 22, 100, 120, 10, 280),
nm = c("jan", "fev", "mar", "abr", "mai", "jun", "jul", "ago", "set", "out", "nov", "dez")
)
prec
#> jan fev mar abr mai jun jul ago set out nov dez
#> 300 200 210 12 0 0 12 22 100 120 10 280
Nomes não podem ser repetidos entre os elementos, porque a seleção de um subconjunto do vetor baseada nos nomes retornará somente o primeiro elemento que tiver nome repetido.
Embora não faça muito sentido, nem todos elementos precisam ter nomes. A saída da função names()
retornará um vetor caractere vazio ("") para aqueles elementos sem nomes especificados.
(meses <- c(jan = 1, fev = 2, 3:12))
#> jan fev
#> 1 2 3 4 5 6 7 8 9 10 11 12
names(meses)
#> [1] "jan" "fev" "" "" "" "" "" "" "" "" "" ""
Quando nenhum nome é especificado, names()
retornará NULL
23.
names(1:12)
#> NULL
Para remover os nomes de um vetor, podemos usar a função unname()
ou names() <- NULL
.
prec_clim <- c(230, 205, 160, 100, 60, 30, 40, 60, 110, 165, 200, 220)
names(prec_clim) <- names(prec)
prec_clim
#> jan fev mar abr mai jun jul ago set out nov dez
#> 230 205 160 100 60 30 40 60 110 165 200 220
unname(prec_clim)
#> [1] 230 205 160 100 60 30 40 60 110 165 200 220
names(prec_clim) <- NULL
prec_clim
#> [1] 230 205 160 100 60 30 40 60 110 165 200 220
Nas próximas seções frequentemente usaremos os vetores prec
e prec_clim
. É importante então contextualizar essas variáveis. A variável prec
consiste na precipitação mensal observada em um ano qualquer em um dado local. A variável prec_clim
refere-se aos valores esperados de precipitação mensal24 (médias de pelo menos 30 anos) do mesmo local.