Vetores

Linguagem R

Os vetores são formados por elementos de dados, onde todos os elementos (componentes) são do mesmo tipo básico de dado. Os tipos de dados dos vetores são numérico, inteiro, complexo, lógico e caractere.

> # 1 elemento
> #
> x <- 1;               x; print(class(x)); print(typeof(x))
[1] 1
[1] "numeric"
[1] "double"
> x <- 1.00;            x; print(class(x)); print(typeof(x))
[1] 1
[1] "numeric"
[1] "double"
> x <- 1.e6;            x; print(class(x)); print(typeof(x))
[1] 1e+06
[1] "numeric"
[1] "double"
> x <- 1e-9;            x; print(class(x)); print(typeof(x))
[1] 1e-09
[1] "numeric"
[1] "double"
> x <- 1L;              x; print(class(x)); print(typeof(x))
[1] 1
[1] "integer"
[1] "integer"
> x <- as.integer(1);   x; print(class(x)); print(typeof(x))
[1] 1
[1] "integer"
[1] "integer"
> x <- as.double(1);    x; print(class(x)); print(typeof(x))
[1] 1
[1] "numeric"
[1] "double"
> x <- 3 + 2i;          x; print(class(x)); print(typeof(x))
[1] 3+2i
[1] "complex"
[1] "complex"
> x <- TRUE;            x; print(class(x)); print(typeof(x))
[1] TRUE
[1] "logical"
[1] "logical"
> x <- "abc";           x; print(class(x)); print(typeof(x))
[1] "abc"
[1] "character"
[1] "character"
> #
> # dois elementos
> #
> x <- c(1, 2);         x; print(class(x)); print(typeof(x))
[1] 1 2
[1] "numeric"
[1] "double"
> x <- c(1L, 2);        x; print(class(x)); print(typeof(x))
[1] 1 2
[1] "numeric"
[1] "double"
> x <- c(1L, 2L);       x; print(class(x)); print(typeof(x))
[1] 1 2
[1] "integer"
[1] "integer"
> x <- c(1, 2 + 3i);    x; print(class(x)); print(typeof(x))
[1] 1+0i 2+3i
[1] "complex"
[1] "complex"
> x <- c(TRUE, FALSE);  x; print(class(x)); print(typeof(x))
[1]  TRUE FALSE
[1] "logical"
[1] "logical"
> x <- c(1, FALSE);     x; print(class(x)); print(typeof(x))
[1] 1 0
[1] "numeric"
[1] "double"
> x <- c(1, "abc");     x; print(class(x)); print(typeof(x))
[1] "1"   "abc"
[1] "character"
[1] "character"
> #
> # dez elementos
> #
> x <- numeric(10);     x; print(class(x)); print(typeof(x))
[1] 0 0 0 0 0 0 0 0 0 0
[1] "numeric"
[1] "double"

Podem ser atribuídos nomes aos elementos dos vetores que podem, a partir daí, serem referenciados por esses nomes:

> # Presidente Eurico Gastar Dutra.
> # Mandato de 31 de janeiro de 1946 até 31 de janeiro de 1951.
> presidente <- c("Eurico", "Gaspar", "Dutra", "31/01/1946", "31/01/1951")
> # Mostrar os dados do vetor.
> print(presidente)
[1] "Eurico"     "Gaspar"     "Dutra"      "31/01/1946" "31/01/1951"
> # Atribuir nomes aos elementos do vetor.
> names(presidente) <- c("Primeiro Nome", "Nome do Meio", "Último Nome",
+ "Início do Mandato", "Fim do Mandato")
> # Mostrar os dados do vetor com o nomes dos elementos.
> print(presidente)
    Primeiro Nome      Nome do Meio       Último Nome Início do Mandato 
         "Eurico"          "Gaspar"           "Dutra"      "31/01/1946" 
   Fim do Mandato 
     "31/01/1951" 
> # Mostrar o último nome, seguido por vírgula, primeiro nome e nome do meio.
> paste0(presidente["Último Nome"], ", ", presidente["Primeiro Nome"], " ",
+ presidente["Nome do Meio"])
[1] "Dutra, Eurico Gaspar"
> # Converter as datas.
> inicio <- as.Date(presidente["Início do Mandato"], "%d/%m/%Y")
> fim <- as.Date(presidente["Fim do Mandato"], "%d/%m/%Y")
> dias = difftime(fim, inicio)
> # Início e fim do mandato e número de dias.
> paste(inicio, fim, dias)
[1] "1946-01-31 1951-01-31 1826"

Uma frase pode ser quebrada em palavras que podem se tornar os elementos de um vetor:

Leia mais