Linguagem R – Funções aritméticas em vetores

Funções aritméticas em vetores em R

Em R, além das operações aritméticas básicas, também existem diversas funções que podem ser aplicadas diretamente a vetores, para realizar as mais variadas tarefas em conjuntos de dados simultaneamente. Um dos grupos de funções mais importantes são as funções de soma, produto e cumulativas. Nesta lição vamos explorar algumas das principais funções aritméticas que podemos aplicar a vetores em linguagem R.

A tabela a seguir mostra algumas funções aritméticas cujo resultado depende da combinação dos valores presentes em um vetor:

Função Descrição
sum(x) Calcula o somatório dos valores presentes no vetor x.
prod(x) Calcula o produto dos valores presentes no vetor x.
min(x) Retorna o menor valor presente no vetor x.
max(x) Retorna o maior valor presente em x.
cumsum(x) Retorna a soma cumulativa dos valores de x.
cumprod(x) Retorna o produto cumulativo dos valores de x.
cummin(x) Retorna o menor valor em x a partir do início do vetor até a posição do próprio valor. Mínimo cumulativo.
cummax(x) Retorna o maior valor em x a partir do início do vetor até a posição do próprio valor. Máximo cumulativo.
diff(x) Retorna, para cada valor presente no vetor x, a diferença entre esse valor e o próximo valor no vetor (próximo – atual)

Vejamos exemplos de aplicação dessas funções em vetores. Para isso, empregaremos um vetor x de 15 números, criado conforme a instrução a seguir:

x <- c(13, 24, 2, 45, 34, 33, 10, 8, 32, 39, 16, 19, 9, 25, 42)

Exemplos

1 – Queremos saber o valor dos somatórios dos 15 itens no vetor x:

> res <- sum(x)
> print(res)
[1] 351

2 – Queremos descobrir quais são o maior e o menor valores presentes no vetor:

> min(x)
[1] 2
> max(x)
[1] 45

3 – Suponha que tenhamos um outro vetor, y, com os valores a seguir:

y <- c(4, 7, 9, 12, 11)

Podemos calcular o somatório combinado de ambos os vetores, x e y, usando a mesma função sum(), pois essa função aceita múltiplos vetores como entrada, bastando para isso separá-los por vírgulas:

res <- sum(x, y)
print(res)
[1] 394

4 – Vamos retornar a soma cumulativa dos valores em y – ou seja, o resultado de cada soma parcial realizada:

res <- cumsum(y)
print(res)
[1] 4 11 20 32 43

5 – Retornar o maior valor cumulativo no vetor x:

res <- cummax(x)
print(res)
[1] 13 24 24 45 45 45 45 45 45 45 45 45 45 45 45 

6 – Podemos também retornar as diferenças entre cada valor em u vetor, como por exemplo, no vetor y:

res <- diff(y)
print(res)
[1] 3 2 3 -1

Neste exemplo, foram retornados quatro números:

  • 3 é a diferença entre o primeiro e o segundo valores do vetor: 7 -4 
  • 2 é a diferença entre o segundo e o terceiro valores do vetor: 9 – 7
  • 3 é a diferença entre o terceiro e o quarto valores do vetor: 12 – 9 
  • -1 é a diferença entre o quarto e o quinto valores do vetor: 11 – 12 

7 – Também podemos aplicar essas funções a partes de um vetor. Por exemplo, suponha que se deseje saber o somatório apenas dos cinco primeiros valores do vetor x. Para tal, basta indicar entre colchetes as posições desejadas na soma:

sum(x[1:5])
[1] 118

8 – E se quisermos saber qual o valor da soma do elementos  de número 1, 2  e 4 do vetor x? Simples – basta criar um vetor com os números de índice desejados, usando a função combine,  e utilizá-lo na soma:

sum(x[c(1, 2, 4)])
[1] 82

É isso aí! Há muitas outras funções matemáticas que podem ser aplicadas a vetores em R. Vamos estudá-las nas próximas lições.

Sobre Fábio dos Reis (1223 Artigos)
Fábio dos Reis trabalha com tecnologias variadas há mais de 30 anos, tendo atuado nos campos de Eletrônica, Telecomunicações, Programação de Computadores e Redes de Dados. É um entusiasta de Ciência e Tecnologia em geral, adora Viagens e Música, e estuda idiomas, além de ministrar cursos e palestras sobre diversas tecnologias em São Paulo e outras cidades do Brasil.

Escreva um comentário

Seu e-mail não será divulgado


*