Operações com vetores
Parte da seção Fundamentos do Journey de R da Coddy. Lição 59 de 78.
Um dos recursos mais poderosos do R é a capacidade de realizar operações em vetores inteiros de uma só vez, sem precisar percorrer cada elemento. Isso torna seu código mais limpo e eficiente.
Quando você aplica um operador aritmético a um vetor, R realiza a operação em cada elemento:
prices <- c(10, 25, 15, 30)
discounted <- prices * 0.9
print(discounted)Saída:
[1] 9.0 22.5 13.5 27.0Você também pode realizar operações entre dois vetores de mesmo comprimento. R emparelha os elementos correspondentes:
quantities <- c(2, 1, 4, 3)
prices <- c(10, 25, 15, 30)
totals <- quantities * prices
print(totals)Saída:
[1] 20 25 60 90R fornece funções integradas úteis para cálculos comuns com vetores, como sum(), mean(), min() e max():
scores <- c(85, 92, 78, 95, 88)
print(sum(scores))
print(mean(scores))
print(min(scores))
print(max(scores))Saída:
[1] 438
[1] 87.6
[1] 78
[1] 95Desafio
FácilVocê recebeu os seguintes vetores:
hours_worked <- c(8, 7, 9, 6, 8)
hourly_rate <- c(15, 20, 18, 22, 17)Realize as seguintes operações e imprima cada resultado:
- Calcule os ganhos diários de cada dia multiplicando
hours_workedporhourly_rate(elemento a elemento). Imprima este vetor. - Aplique um bônus de 10% a todos os ganhos diários (multiplique por
1.1). Imprima o vetor de ganhos atualizado. - Imprima os ganhos totais da semana usando
sum() - Imprima os ganhos diários médios usando
mean() - Imprima os maiores ganhos de um único dia usando
max() - Imprima os menores ganhos de um único dia usando
min()
Sua saída deve ser:
[1] 120 140 162 132 136
[1] 132.0 154.0 178.2 145.2 149.6
[1] 759
[1] 151.8
[1] 178.2
[1] 132Experimente você mesmo
# Vetores dados
hours_worked <- c(8, 7, 9, 6, 8)
hourly_rate <- c(15, 20, 18, 22, 17)
# TODO: Escreva seu código abaixo
# 1. Calcule os ganhos diários (multiplicação elemento a elemento)
# 2. Aplique um bônus de 10% aos ganhos diários
# 3. Imprima o total de ganhos da semana usando sum()
# 4. Imprima a média dos ganhos diários usando mean()
# 5. Imprima o maior ganho de um único dia usando max()
# 6. Imprima o menor ganho de um único dia usando min()Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Fundamentos
4Operadores - Parte 2
Operadores lógicos (AND, OR)Operadores lógicos - Parte 2 (NOT)Revisão - Lógica simplesLógica vetorizada - Parte 1Lógica vetorizada - Parte 27Calculadora de Divisão da Conta
Mensagem de Boas-vindasObtendo a Entrada do Usuário10FizzBuzz com uma Reviravolta
Visão Geral do JogoA Função FizzBuzz2Variáveis e Tipos de Dados
Tipo de Dado NuméricoTipo de Dado InteiroTipo de Dado CaractereTipo de Dado LógicoVerificando Tipos de DadosConvenções de NomenclaturaValores Ausentes: NARecapitulação - Criação de Variáveis8Laços
Laço ForLaço WhileBreakNext (Continue)Revisão - FatorialGeração de Sequências (seq, :)Laços AninhadosRevisão - Entrada Dinâmica3Operadores - Parte 1
Operadores aritméticosDivisão inteira e móduloOperadores de atribuiçãoRevisão - Matemática simplesOperadores de comparação6Entrada e saída básicas
Imprimir saídacat para saídaSaída com variáveisLendo entrada com readline()Noções básicas de conversão de tiposRecapitulação - Calculadora de idadeRecapitulação - Verdadeiro ou falso9Funções
Declarando uma FunçãoArgumentos de FunçãoValores de RetornoRecapitulação - Função SigmaRecapitulação - Função de ValidaçãoValores de Parâmetros PadrãoPratique por conta própria: Compilador de R online