Prazer, meu nome é Gui, R Gui

Continuando, uma coisa que o R gosta bastante de fazer é criar objetos. Para tanto basta escolher um nome e atribuir-lhe algum valor ou conjunto de valores ou mesmo palavras. Se você quiser que seu objeto tenha mais de um elemento basta escrever c(elemento 1,elemento 2,etc). Vamos tentar?

valor=5
pares=c(0,2,4,6,8)
cores=c("azul","vermelho","amarelo")

Quando usamos o símbolo “=” estamos criando objetos com um nome (o que vem antes do = ) e que contém alguns elementos (o que vem depois do = ). Quando criamos um objeto, ele fica guardado na memória do R até que você feche o programa. Porém, os objetos criados ficam ocultos. Para ver a lista de arquivos ocultos basta dar o seguinte comando:

ls()

Já para ver o conteúdo de cada objeto basta chamá-lo pelo nome:

valor
pares
cores

Muito bem. Espero que até aqui ninguém tenha morrido ainda. Agora vamos fazer um dos truques mais bacanas do R: que comece a jogatina! Você sabia que podemos jogar dados com esse programa? Quer apostar?

moeda=c("cara","coroa")
moeda
sample(moeda,1)
sample(moeda,1)
sample(moeda,1)
sample(moeda,1)

A cada vez que você roda sample(dado,1) o R faz um sorteio. Vamos jogar uns dados agora.

dado=c(1:6)
dado
sample(dado,1)
sample(dado,1)
sample(dado,1)

Gostaram? Mas não vão ficar viciados, hein?! ;-)

Finalmente, vamos às brincadeiras de gente grande. Para a prática de hoje, vamos trabalhar com matrizes. Felizmente é muito fácil transformar um conjunto de dados em uma matriz.

1:100
array(1:100,dim=c(20,5,1))

Note que dim define o número de linhas (20) e colunas (5).

Mas podemos ir além e criar um objeto tridimensional:

array(1:100,dim=c(5,5,4))

Note que o terceiro valor de dim corresponde à terceira dimensão. O resultado aparece como fatias de um bolo. Conseguiu visualizar?

Outra coisa bacana é que podemos criar objetos vazios. (NA quer dizer não se aplica, ou seja, aquela posição não está sendo ocupada por nenhum valor.)

a=rep(NA,10)
a

b=array(NA,dim=c(3,3,1))
b

c=array(NA,dim=c(3,3,3))
c

Mas qual a graça de se fazer isso? A graça é que depois podemos preencher os lugares vazios com os valores que quisermos.

a[1]=2
a
a[1]

b[3,3,1]="oi"
b
b[2,2,1]="oi"
b
b[1,1,1]="oi"
b
b[3,3,1]

c[3,3,1]="oi"
c
c[3,3,2]="ai"
c
c[3,3,3]="ui"
c
c[3,3,3]

Pronto, agora sem querer querendo vocês já sabem indexar! O que é isso? É simplesmente dizer a posição de um objeto que você quer. Se for um objeto simples do tipo linear, como é o caso de a, basta escrever o nome do objeto e em seguida um valor dentro dos colchetes (nome[posição]). Se for uma matriz como o b, você tem que dizer nome[número da linha, número da coluna, 1]. Finalmente, se for um objeto tridimensional como o c você deve dizer nome[número da linha, número da coluna, número da fatia do bolo].

Outro forte do R é a criação de gráficos. Veja alguns exemplos extremamente simples:

plot(1:10,10:1)
plot(1:10,10:1,pch=2)
plot(1:10,10:1,pch=2,col=2)
plot(1:10,10:1,pch=2,xlab="eixo x")
plot(1:10,10:1,pch=2,xlab="eixo x",ylab="eixo y")


hist(rnorm(1000),col=33)
arrows(2,100,2,70,col=2)

boxplot(iris$Sepal.Length~iris$Species)

Agora, o golpe de misericórdia: como criar uma função. Criar uma função nada mais é do que programar o computador para fazer uma tarefa em seu lugar. Soou interessante? Pois é, mas isso exige um pouco mais do nosso esforço. Vamos ver um exemplo bem simples. Vou ensinar o programa a calcular a média de um conjunto de valores.

media=function(objeto){sum(objeto)/length(objeto)}
media(c(1,2,3))

alturas=c(1.4,1.7,2.0,1.6,1.8)
media(alturas)                  

Note que entre parênteses estão os valores ou o objeto dos quais você quer a média. Entre chaves está o comando que calcula a média. Note também que para calcular a média usei duas funções pré-existentes no R: sum e length. Na verdade também já existe uma função pronta que calcula a média: mean.

sum(alturas)    # soma dos elementos do objeto "alturas"
length(alturas) # número de elementos do objeto "alturas"
mean(alturas)   # média dos elementos do objeto "alturas"

O “#” em cada linha de comando significa que o R deve desconsiderar o texto. Isso é bom: quer dizer que o programa não se mete na conversa dos outros.

Bom, isso é tudo, ou quase tudo, o que precisávamos saber sobre a lógica do R para fazermos a prática. Não se preocupem com detalhes sobre a linguagem. Contem com seu guia: o roteiro a seguir. E se ele falhar, por favor não hesitem em clamar pela ajuda dos professores e monitores. Boa sorte. =)

<box 80%| Para você que quer mais!> Se você se interessou pelo programa não se sinta mal. Ele realmente é incrível, pois te permite fazer quase tudo que quiser. Não deixe de dar uma xeretada no site da disciplina do R, oferecida para os alunos de pós graduação ou de trocar uma idéia com os professores, que são feras no assunto. O começo, como toda linguagem, é uma subida árdua. Mas com o tempo a coisa chega a ser até prazerosa. 8-o </box>

ecoveg2011/primeira_parte/start.txt · Última modificação: 2024/01/11 15:21 por 127.0.0.1
CC Attribution-Noncommercial-Share Alike 4.0 International
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0