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.
Escreva um comentário