Exercícios

Sessão 1: Operadores e operações básicas

1- Em um experimento de valor de cultivo e uso (VCU) na cultura do milho, as parcelas são constituídas de duas linhas de quatro metros, espaçadas 0,60 m, totalizando 6 plantas por linha. As alturas das plantas foram respectivamente (em metros): 1,45; 1,73; 1,98; 2,10; 2,03; 1,65; 2,15; 1,63; 1,53; 1,98; 2,05; 1,52.

a)Crie um vetor altura com os valores acima;

b)Calcule a altura média;

c)Calcule a variância das alturas;

Respostas:

Para visualizar a resposta basta mover o cursor em cima do “Alerta de spoiler!”

b)1.816667

c)0.06540606

2- Na disciplina de Genética foram avaliados altura e peso dos 10 alunos, sendo 5 meninas e 5 meninos. Veja a tabela abaixo com os respectivos valores:

Nome Peso (kg) Altura (m)
Maria José 72 1,65
Mariana 57 1,68
Fernanda 49 1,53
Jéssica 62 1,7
Carolina 57 1,52
Paulo 90 1,82
Marcos 53 1,63
João Paulo 76 1,78
Geraldo 63 1,72
Pedro 92 1,98

a)Calcule o IMC de cada aluno, segundo a fórmula: \(IMC = \frac{peso}{altura^2}\)

b)Calcule o IMC médio da sala.

c)Calcule a variância do IMC.

d)Calcule o desvio padrão do IMC.

Respostas:

a)26.44628 20.19558 20.93212 21.45329 24.67105 27.17063 19.94806 23.98687 21.29529 23.46699

b)22.95662

c)6.665578

d)2.581778

3 - Resolva a equação: \(2x^2 + 8x + 6 = 0\), utilizando a fórmula de Bhaskara. Lembrando que: \(x = \frac{-b\pm\sqrt{\Delta}}{2a}\); \(\Delta=b^2 - 4ac\)

Resposta:

-24 -8

Sessão 2: Classe de objetos

1 - Carregue o conjunto de dados chamado “mtcars” (attach(mtcars)).

a)Verifique a classe do objeto “mtcars”

b)Verifique a classe das colunas “hp” e “cyl”

c)Verifique a classe do nome dos carros. (rownames)

Respostas:

a)“data.frame”“

b)“numeric” “numeric”

c)“character”

2 - Utilizando o mesmo conjunto de dados do exercício anterior, calcule:

a)A média da coluna “hp”.

b)Modifique a classe da coluna “hp” para fator e calcule a média novamente.

c)Compare os resultados obtidos nas letras a e b, e relate as diferenças entre eles.

Respostas:

a)146.6875

b)NA e um warning

3 - Crie um vetor de uma amostra da distribuição Normal com comprimento 30000, média 20 e desvio padrão 5. Antes de criar o vetor, utilize set.seed(123456).

a)Qual o somatório das observações no vetor que são maiores que 30?

b)E o somatório das observações menores que a média?

c)Excluir a menor observação do vetor.

Respostas:

a)2610.638

b)23976.86

c)apenas o “head”: 24.16867 18.61976 18.22499 20.43744 31.26128 24.17230

c)O valor mínimo: 1.170791

Sessão 3: Estruturas condicionais e de repetição

1 - Crie um objeto “a” contendo uma sequência de 1 a 5. Usando qualquer estrutura de repetição, some o número 8 a cada um dos elementos de “a”, até que a soma de todos os elementos seja igual ou superior a 10000.

Respostas:

2001 2002 2003 2004 2005

2 - Utilize a expressão abaixo para gerar médias de produtividade, considerando 50 genótipos de soja, de forma aleatória:

set.seed(123456)
produtividade = rnorm(50, mean = 3500.00, sd = 800)

Suponhamos que a média nacional de produtividade de soja seja de 3500.00 kg/ha. Utilizando estruturas condicionais, verifique se os genótipos apresentam valores acima ou abaixo da produtividade média nacional, retornando as frases “acima da média” ou “abaixo da média”, respectivamente.

Respostas:

[1] “acima da média” “abaixo da média” “abaixo da média” “acima da média” “acima da média” “acima da média” [7] “acima da média” “acima da média” “acima da média” “abaixo da média” “abaixo da média” “abaixo da média” [13] “abaixo da média” “acima da média” “acima da média” “acima da média” “abaixo da média” “acima da média” [19] “acima da média” “acima da média” “abaixo da média” “acima da média” “acima da média” “acima da média” [25] “acima da média” “abaixo da média” “acima da média” “acima da média” “acima da média” “abaixo da média” [31] “abaixo da média” “acima da média” “abaixo da média” “abaixo da média” “abaixo da média” “abaixo da média” [37] “acima da média” “acima da média” “acima da média” “abaixo da média” “abaixo da média” “acima da média” [43] “acima da média” “abaixo da média” “acima da média” “abaixo da média” “abaixo da média” “abaixo da média” [49] “acima da média” “abaixo da média”

Sessão 4: Funções

Utilize o conjunto de dados disponível abaixo para gerar médias de produtividade, considerando 25 genótipos de soja avaliados em 15 ambientes, de forma aleatória:

set.seed(123456)
dados = data.frame(Genotypes = rep(seq(1,25,1), 15), Environments = rep(x = seq(1:15), each = 25), yield = rnorm(375, 3000:3500, 800))

Elabore uma função para calcular as médias e o coeficiente de variação (\(CV = \frac{\mu}{\sigma}*100\)) em cada ambiente, e também avaliar a precisão experimental (até 20% = alta; entre 20 e 30% = média; acima de 30% = baixa). A função deve retornar os resultados contendo a identificação de cada ambiente, as médias, os CV’s e as precisões.

Pode ser que a essa altura do curso você ja tenha que ter trabalhado com diversas frustrações: o código não roda, precisou de várias tentativas até dar certo. Talvez você se sinta caindo naquele gráfico de andamento do aprendizado que mostramos na apresentação teórica. Por isso, colocamos aqui alguns vídeos motivacionais. São três palestras TED excelentes (como costuma ser os TEDs).

Esses dois tem legenda em portugues. É só ajustar as configurações:

  • Teach girls bravery, not perfection | Reshma Saujani Especial para mulheres. Fala como aprender a programar nos educa a lidarmos melhor com nossas frustrações e nos desvia da cultura imposta de perfeição.

  • Mitch Resnick: Let’s teach kids to code O palestrante é um dos desenvolvedores do programa Scratch, que consiste num jogo que ensina lógica de programação. O palestrante destaca a importância de aprender alguma linguagem de programação dos dias de hoje.

Esse só em inglês:

Extra: Família dos apply

1 - Utilize a função abaixo para gerar médias de produtividade, considerando 25 genótipos de soja avaliados em 15 ambientes, de forma aleatória:

set.seed(123456)
dados = data.frame(Genotypes = rep(seq(1,25,1), 15), Environments = rep(x = seq(1:15), each = 25), yield = rnorm(375, 3000:3500, 800))

Utilizando funções da família “apply”, obtenha as médias gerais de cada genótipo e também de cada ambiente.

GENt
Escola Superior de Agricultura Luiz de Queiroz
Universidade de São Paulo

2019-05-15