Capítulo 8 Scripts em R
Um script em R é um ficheiro que contém um conjunto de definições, como variáveis, funções e blocos de código, que podem ser reutilizados em outros programas R. Scripts são ferramentas essenciais para automatizar tarefas e para garantir a reprodutibilidade da análise de dados.
- Criar um Script: Para criar um script em R, basta gravar o código num ficheiro com a extensão “.R”. Este ficheiro pode então ser executado ou reutilizado noutras sessões de R.
Exemplo: Guarde o seguinte código num ficheiro chamado
meu_script.R
:
Executar o script
Para executar o script que criou, utilize a função source()
no console
do R ou dentro de outro script. Isto permitirá que o R leia e execute
todas as linhas de código do script.
- Executar no Diretório de Trabalho Atual: Se o ficheiro
meu_script.R
estiver no diretório de trabalho atual, pode executá-lo simplesmente escrevendo:
- Executar a Partir de Outro Diretório: Se o ficheiro estiver localizado num diretório diferente do diretório de trabalho atual, terá de fornecer o caminho completo para o ficheiro:
O que Acontece Quando Executamos um Script?
Quando utiliza o comando source()
, o R lê e executa todas as linhas do
script. Qualquer função, variável ou resultado de operações realizadas
dentro do script será carregado e ficará disponível no ambiente de
trabalho após a execução. Por exemplo, após executar o script acima, a
função produto()
estará disponível para ser utilizada:
Notas Importantes
- Diretório de trabalho: O diretório de trabalho é o local onde o
R procura por ficheiros para leitura ou onde guarda ficheiros. Pode
verificar o diretório de trabalho atual utilizando
getwd()
e mudar para um novo diretório comsetwd("caminho/do/diretorio")
.
8.1 Exercícios
1. Crie os seguintes scripts:
Crie um script
quadrado.R
que contenha funções para calcular o perímetro e a área de um quadrado, dado o comprimento do lado. Utilize o scriptquadrado.R
noutro script para calcular o perímetro e a área de um quadrado com lado de comprimento 5.Crie um script
estatistica.R
que contenha funções para ordenar uma amostra, calcular a média, a variância e o desvio padrão de um vetor numérico.Crie um programa que utilize o script
estatistica.R
para calcular a mediana, a variância e o desvio padrão da amostraamostra <- c(1, 2, 3, 4, 5, 6, 7)
.
2. Crie um script chamado circulo.R
que contenha duas funções:
area_circulo(r)
: para calcular a área de um círculo, dado o raio r.circunferencia(r)
: para calcular a circunferência de um círculo, dado o raio r.
Em seguida, crie outro script que utilize as funções de circulo.R
para calcular a área e a circunferência de um círculo com raio igual a 10.
3. Crie um script chamado analise.R
com funções para calcular:
- O valor mínimo (
minimo
) e máximo (maximo
) de um vetor numérico. - A amplitude (
amplitude
) do vetor, calculada como a diferença entre o valor máximo e o valor mínimo.
Em seguida, crie um script separado que utilize analise.R
para calcular o valor mínimo, máximo e amplitude de um vetor dados <- c(8, 15, 22, 3, 18, 7)
.
4. Crie um script chamado categorias.R
que contenha uma função chamada contar_categorias
, que recebe um vetor categórico e retorna uma tabela de frequências de cada categoria.
Em seguida, crie um script que utilize categorias.R
para analisar o vetor cidades <- c("Lisboa", "Porto", "Lisboa", "Coimbra", "Porto", "Porto", "Lisboa")
. Exiba a frequência de cada cidade.
5. Crie um script chamado escore_z.R
que contenha uma função chamada calcular_escore_z(valor, media, desvio_padrao)
. Essa função deve calcular o escore z de um valor em relação a uma média e desvio padrão. Fórmula \(z = \frac{x-\mu}{\sigma}\).
Em seguida, crie um script separado que use escore_z.R
para calcular o escore z dos valores do vetor valores <- c(5, 6, 7, 8, 9)
, assumindo uma média de 7 e desvio padrão de 1.5.
6. Crie um script chamado binomial.R
que contenha uma função chamada probabilidade_binomial(n, p, x)
, que calcula a probabilidade de ocorrer exatamente x sucessos em n tentativas de um experimento binomial.
Fórmula \(P(X=x) = \binom{n}{x}p^x(1-p)^{n-x}\), onde
- \(\binom{n}{x}\) é o coeficiente binomial. No R
choose(n,x)
. - \(p\) é a probabilidade de sucesso em cada tentativa.
Em seguida, crie um script separado que use binomial.R
para calcular a probabilidade de obter exatamente 3 sucessos em 5 tentativas, com uma probabilidade de sucesso de 0.6.