Prévia do material em texto
CRIANDO
GRÁFICOS EM R
SEM DOMINAR
A LINGUAGEM
GUIA RÁPIDO
LUIS MACEDO-SOARES
CRIANDO GRÁFICOS
EM R SEM DOMINAR
A LINGUAGEM
GUIA RÁPIDO
Editor LUIS CARLOS PINTO DE MACEDO SOARES
Revisão AUREA LEMES e DANIEL BLOEMER
Florianópolis, 1º edição
2018
LUIS MACEDO-SOARES
3
SOBRE O AUTOR:
Entre o doutorado e o mestrado em Ecologia, e o
pós-doutorado em Oceanografia Biológica, aprendeu
e ensinou a linguagem R, utilizando-a nas diferentes
áreas em que atuou. Trilhou um caminho tortuoso
passando pelas Ciências Contábeis, empresário no
ramo de franquias, cursou Engenharia de
Aquicultura, com direito a Especialização em Gestão
de ONGs. Mas foi no empreendedorismo digital que
seu coração voltou a bater forte.
Pai de uma menina de 10 anos com quem adora
assistir filmes do universo cinematográfico Marvel e
Star Wars. Brincar, sapatear, contar piadas, rir e
ouvir música.
Namorado de uma cientista com quem aprecia bons
vinhos, uma boa cerveja artesanal (principalmente as
mais lupuladas), Single Malt e Bourbon whiskeys.
Fã do Hard Rock e Heavy Metal das bandas Led
Zeppelin, Deep Purple, Black Sabbath e Iron Maiden.
4
ISENÇÃO DE RESPONSABILIDADE
Todas as informações contidas neste livro são provenientes de minhas
experiências pessoais, estudo e pesquisas com a linguagem R. Embora
eu tenha me esforçado ao máximo para garantir a precisão e a mais alta
qualidade dessas informações e acredite que a forma como as apresentei
e abordei neste livro seja altamente efetivas para qualquer usuário do R,
iniciante ou não, desde que seguidos conforme instruídos, eu não posso
me responsabilizar por problemas decorrentes do seu hardware ou
software, ou por alterações que você possa fazer nos comandos
fornecidos neste livro e que possam porventura prejudicar o desempenho
esperado.
Todos os nomes de marcas, produtos e serviços mencionados neste livro
são propriedades de seus respectivos donos e são usados somente como
referência. Caso você acredite que alguma parte deste livro seja de
alguma forma inadequada e deva ser alterada, pode entrar em contato
diretamente comigo através do e-mail contato.easyR@gmail.com.
DIREITOS AUTORAIS
Este livro está protegido por leis de direitos autorais. Todos os direitos
sobre o livro são reservados. Você não tem permissão para vender este
livro, nem copiar/reproduzir o conteúdo do livro em sites, blogs, jornais ou
quaisquer outros veículos de distribuição de mídia sem a devida citação
da obra e referência ao seu autor. Qualquer tipo de violação dos direitos
autorais estará sujeita a ações legais.
mailto:contato.easyR@gmail.com
mailto:contato.easyR@gmail.com
mailto:contato.easyR@gmail.com
mailto:contato.easyR@gmail.com
mailto:contato.easyR@gmail.com
S
U
M
Á
R
I
O
06
55
13
30
44
52
61
Capítulo 1 – Apresentação:
como usar este livro
Capítulo 2 – Gráficos de barras
Capítulo 3 – Barras múltiplas
Capítulo 4 – Gráfico coringa
Capítulo 5 – Dois eixos y
Capítulo 6 – Material extra
www.easyR.com.br
http://www.easyr.com.br/
6
APRESENTAÇÃO:
COMO USAR
ESTE LIVRO
01
7
O GUIA RÁPIDO
A semente da ideia para criação deste livro surgiu a
cerca de 5 anos atrás quando fui convidado a
ministrar um curso de Análises Multivariadas em R,
para uma turma que não conhecia o programa.
Até aquele momento eu me considerava um usuário
de nível básico, que aplicava scripts prontos
principalmente para a realização de análises
estatísticas. Quando eu precisava produzir um
gráfico recorria a outros programas, mas alguma
coisa me dizia que o R era uma ferramenta
poderosa para produzir gráficos.
Para realizar o curso foi solicitada uma aula
introdutória sobre o R, mostrando rapidamente
algumas funções para criação de gráficos. Reuni,
na época, uma grande quantidade de informações
disponíveis na internet, mas percebi que estava
tudo muito descentralizado, ou seja, a falta de
clareza na distribuição destas informações era
enorme.
8
Preparei as aulas com o que consegui reunir, mas o
foco era nas Análises Multivariadas. Algum tempo
depois percebi que muitos colegas do doutorado e
do mestrado tinham muita ou alguma dificuldade
em produzir gráficos no R, principalmente para
formatá-los de acordo com suas necessidades, ou
de seus orientadores.
Comecei a me dedicar cada vez mais, e como sou
muito detalhista, buscava cada vez mais aprender
como formatar aquela parte específica do jeito que
eu queria (ou do jeito que meus orientadores
queriam ).
Com muita persistência e dedicação, fatores
importantes para quem quer aprender uma
linguagem como o R, consegui desenvolver um
material um tanto completo quanto à produção de
gráficos, desde os mais comuns (como alguns que
veremos neste livro), até outros mais complexos
como mapas, interpolação de variáveis, modelos de
distribuição de espécies e planos fatoriais de
ordenações canônicas.
9
Algum tempo após o término do meu doutorado,
preparei um curso bem completo abordando o
tema. Para esse curso preparei uma série de
tutoriais para os alunos acompanharem as aulas e
terem como referência para consulta.
Desde então penso na organização do material na
forma de livro digital. Apesar da procrastinação
normal do ser humano, chegou a hora de entregar
para você este livro “Criando gráficos em R sem
dominar a linguagem – Guia Rápido”.
A ideia é que você tenha um material objetivo para
consulta, tendo acesso às linhas de comando
utilizadas para produzir cada gráfico. Meu objetivo é
ajudar na solução dos seus problemas em relação
a criação de gráficos e atender às suas
necessidades. Caso a necessidade vá além disso,
ou seja, você queira aprender a linguagem R, você
pode acompanhar o “Script Passo a Passo” e
entender os detalhes e porquês de se usar cada
função e argumento. “Mas e se eu nunca usei o R?”
10
Não tem problema. Os primeiros passos para
instalar o R e começar a usá-lo você encontra no
MATERIAL EXTRA, no capítulo 6 do livro.
Eu espero que esse livro atenda às suas
necessidades em relação à criação de gráficos no
R e desperte a sua vontade de aprender cada vez
mais a linguagem, para você desenvolver seus
trabalhos com alta performance e autonomia.
Boa leitura e um abraço,
O autor
www.easyR.com.br
http://www.easyr.com.br/
11
COMO USAR ESTE LIVRO
Eu organizei o livro por tipo de gráfico, ou seja,
cada capítulo abordará um gráfico específico. O
capítulo inicia com uma breve explicação do gráfico
que será apresentado, da planilha utilizada no
exemplo e a figura. Todos os dados dos exemplos
são fictícios e não representam nenhum valor real.
Na sequência é fornecido o “Script Completo”,
que também poderá ser baixado em arquivo do R
diretamente do site e a s y R (links importantes
no final de cada capítulo). Os links para baixar os
arquivos de dados também serão fornecidos para
que você possa reproduzir os exemplos do livro.
Depois você encontrará o “Script Passo a Passo”
com a explicação detalhada das funções e
argumentos utilizados para produzir a figura.
Para você ir além e aprender cada vez mais a
linguagem R, primeiramente aprenda a vencer as
dificuldades que aparecerem quando você começar
12
a utilizá-lo com mais frequência. Não desista e não
volte aos programas que você utilizava antes.
Todos os dias utilize o R um pouco, para se
familiarizar com a linguagem.
Aproveite os conteúdos que estamos preparando,
como vídeos complementares e posts com dicas e
sacadas sobre o R, análises e gráficos.
Curta a página do e a s y R no Facebook:
https://www.facebook.com/luiseasyr
Siga o perfil do e a s y R no Instagram:
https://www.instagram.com/luis_easyR
Clique aqui e assine o canal e a s y R no
YouTube. Ainda não temos URL personalizada,
precisamos de no mínimo 100 inscritos. Ajude-nos!Indique este livro para seus amigos e colegas, ele
está disponível gratuitamente para todos no link
www.easyR.com.br/guiarapido e forme um grupo
de estudos sobre o R. Se você quer ir rápido, vá
sozinho, se quer ir longe, vá acompanhado.
https://www.facebook.com/luiseasyr
https://www.facebook.com/luiseasyr
https://www.facebook.com/luiseasyr
https://www.facebook.com/luiseasyr
https://www.facebook.com/luiseasyr
https://www.facebook.com/luiseasyr
https://www.facebook.com/luiseasyr
https://www.instagram.com/luis_easyR
https://www.instagram.com/luis_easyR
https://www.instagram.com/luis_easyR
https://www.instagram.com/luis_easyR
https://www.instagram.com/luis_easyR
https://www.instagram.com/luis_easyR
https://www.instagram.com/luis_easyR
https://www.youtube.com/channel/UCs5sV2zABnDKRKt611tuD1g?view_as=subscriber
https://www.youtube.com/channel/UCs5sV2zABnDKRKt611tuD1g?view_as=subscriber
https://www.youtube.com/channel/UCs5sV2zABnDKRKt611tuD1g?view_as=subscriber
http://www.easyr.com.br/guiarapido
http://www.easyr.com.br/guiarapido
http://www.easyr.com.br/guiarapido
http://www.easyr.com.br/guiarapido
http://www.easyr.com.br/guiarapido
http://www.easyr.com.br/guiarapido
http://www.easyr.com.br/guiarapido
13
GRÁFICOS DE
BARRAS
02
GRÁFICO DE BARRAS SIMPLES
Considerei um gráfico de barras simples, aquele
que representa uma única variável contínua medida
em diferentes variáveis categóricas. Neste exemplo,
a variável y foi medida mensalmente ao longo de 1
ano.
A planilha utilizada é composta por três colunas: a
primeira é o mês em que a variável foi medida, a
segunda é o valor da variável y, que chamamos de
média, e a terceira coluna é o desvio padrão, que
usaremos no próximo gráfico.
15
Só para esclarecer, vamos considerar que a
variável y é resultante da média de diferentes
valores obtidos em cada mês. Por isso, temos uma
coluna chamada média e outra desvio, que é o
desvio padrão.
SCRIPT COMPLETO
tiff("graf_barras_simples.tif",width=200,
height=120,bg="white",res=300,
compression="lzw",units="mm")
par((mar=c(4,5.5,2.5,1.5))
barplot(height=dados$media,ylim=c(0,200),
col="darkorange",names.arg=dados$mes,
ylab="Quantidade da variável y",
cex.axis=1.1,cex.lab=1.2,cex.names=1.1,
font.lab=2,border="darkorange")
abline(h=0)
dev.off()
“Eu não sei importar a planilha! Não entendi o
script!” Sem problemas, explicação detalhada a
seguir.
16
SCRIPT PASSO A PASSO
Antes de começarmos a falar detalhadamente
sobre o gráfico, vamos relembrar a função para
importar a planilha. Se você não sabe como
começar a trabalhar no R e como importar uma
planilha, pare aqui e vá direto para o Material
Extra no final deste livro.
Se você também precisa baixar e instalar o R,
clique aqui e faça o download do tutorial de
instalação do R e Rstudio.
Para importar a planilha para o R e criar um objeto
classe data frame (se você não sabe o que é classe
de objeto e quer saber, veja a Dica do Expert #3),
use o seguinte comando:
dadoso
tamanho da fonte do eixo (x ou y). O valor funciona
da seguinte forma, o tamanho padrão é sempre 1, e
você vai aumentar em percentuais do tamanho
original. No caso de cex.axis=1.1, o tamanho foi
aumentado em 10%. O mesmo vale para a redução
de tamanho, cex.axis=0.8 redução de 20%;
7) cex.lab, aumento do tamanho da fonte no
nome (label) do eixo (x ou y);
8) cex.names, na função barplot() quando o
nome da variável exibida no eixo x é adicionado
pelo argumento names.arg, o tamanho da fonte
será alterado pelo argumento cex.names;
23
9) font.lab, da mesma forma que o argumento
cex, o argumento font pode ser aplicado para
diferentes itens do gráfico, como fontes dos labels e
eixos (axis). Este argumento define: 1 – texto
regular, 2 – negrito, 3 – itálico, 4 – negrito e itálico;
10) border, altera a cor da linha que delimita as
barras, ou a borda das barras. Por default essa
borda é exibida na cor preta.
Dica do Expert #2
Para verificar os valores mínimos e máximos das
variáveis do seu objeto, você pode utilizar a função
summary(). Esta função retorna além destes
valores, a mediana, a média, os 1º e 3º quartis.
summary(dados)
mes media desvio
Abr :1 Min. : 5.00 Min. : 6.00
Ago :1 1st Qu.: 16.75 1st Qu.: 24.75
Dez :1 Median : 37.50 Median : 36.00
Fev :1 Mean : 57.83 Mean : 50.75
Jan :1 3rd Qu.: 76.25 3rd Qu.: 67.25
Jul :1 Max. :182.00 Max. :141.00
(Other):6
GRÁFICO DE BARRAS COM ERROS
O gráfico de barras simples com as barras de erros
nos permite representar a média de uma variável
contínua medida em diferentes variáveis
categóricas, juntamente com o desvio padrão dos
dados que geraram a média. Outras medidas de
dispersão poderiam ser utilizadas aqui, como por
exemplo o erro padrão da média.
Usei neste exemplo a mesma planilha do gráfico de
barras simples.
25
SCRIPT COMPLETO
tiff("graf_barras_com_erros.tif",width=200,
height=120,bg="white",res=300,
compression="lzw",units="mm")
par((mar=c(4,5.5,2.5,1.5))
graficohttps://drive.google.com/file/d/1PPBQCXOSeBeo_spcm1lH2iPuYShBUNdW/view?usp=sharing
http://www.easyr.com.br/
30
BARRAS
MÚLTIPLAS
03
GRÁFICO DE BARRAS MÚLTIPLAS
Eu considerei um gráfico de barras múltiplas,
aquele que representa uma variável contínua
medida em duas variáveis categóricas diferentes,
que podem ser apresentadas agrupadas ou
aninhadas uma na outra.
No exemplo a variável y foi medida em três
categorias que eu chamei de Fator (Fator A, Fator B
e Fator C). Esta categoria foi agrupada dentro de
outra variável categórica que eu chamei de M (M1,
M2, M3 e M4).
32
SCRIPT COMPLETO
tiff("graf_barras_multiplas.tif",width=200,
height=120,bg="white",res=300,
compression="lzw",units="mm")
par((mar=c(4,5.5,2.5,1.5))
barplot(height=dados,names.arg=(colnames(dados),
col=c("yellow","darkorange","red"),
cex.names=1.4,besides=TRUE,las=1,
space=c(0.2,1),ylim=c(0,140),
cex.axis=1.2,cex.lab=1.2,font.lab=2,
args.legend=c(x="topleft",bty="n"),
legend.text=c("Fator A","Fator B",
"Fator C"),
ylab="Quantidade da variável y")
box()
dev.off()
A planilha utilizada foi montada na forma de uma
matriz. A variável categórica M está disposta nas
colunas e a variável Fator nas linhas. Atenção: para
a variável Fator ficar agrupada na variável M, a matriz
33
deverá ser disposta dessa forma. Para inverter
você deverá transpor a matriz (função t() no R).
SCRIPT PASSO A PASSO
Vou mostrar duas sacadas importante para você,
antes de vermos os detalhes do gráfico. Importe a
planilha para o R com o seguinte comando:
dadospara esse gráfico são poucas. O
argumento chave é o besides trocado para FALSE.
42
Como as barras de um mesmo conjunto estão
empilhadas, no argumento space você irá indicar
apenas o espaço entre os grupos de barras
empilhadas.
Não esqueça de ajustar o limite máximo dos
valores do eixo y. Para isso veja a dica a seguir.
Dica do Expert #4
A dica aqui é usar a função colSums() que vai
somar as linhas e fornecer para você a soma de
cada coluna, que representam no gráfico cada
grupo de barras empilhadas.
colSums(dados)
M1 M2 M3 M4
99.8 145.7 286.4 202.5
Você pode ver que o valor total da barra M3 é
286,4, sendo assim, o valor máximo de y deverá
ser ajustado para 300.
43
LINKS IMPORTANTES
Script para abrir direto no R:
Baixe o arquivo do script do gráfico de barras
múltiplas
Planilha de dados para você fazer os exemplos:
Baixe aqui o arquivo da planilha de dados
www.easyR.com.br
https://drive.google.com/open?id=19LE-0IVEvYMl9n36F9-_l7FLyt4hf2Qi
https://drive.google.com/open?id=19LE-0IVEvYMl9n36F9-_l7FLyt4hf2Qi
https://drive.google.com/open?id=19LE-0IVEvYMl9n36F9-_l7FLyt4hf2Qi
https://drive.google.com/open?id=19LE-0IVEvYMl9n36F9-_l7FLyt4hf2Qi
https://drive.google.com/open?id=19LE-0IVEvYMl9n36F9-_l7FLyt4hf2Qi
https://drive.google.com/open?id=19LE-0IVEvYMl9n36F9-_l7FLyt4hf2Qi
https://drive.google.com/open?id=19LE-0IVEvYMl9n36F9-_l7FLyt4hf2Qi
https://drive.google.com/open?id=19LE-0IVEvYMl9n36F9-_l7FLyt4hf2Qi
https://drive.google.com/open?id=19LE-0IVEvYMl9n36F9-_l7FLyt4hf2Qi
https://drive.google.com/open?id=19LE-0IVEvYMl9n36F9-_l7FLyt4hf2Qi
https://drive.google.com/open?id=19LE-0IVEvYMl9n36F9-_l7FLyt4hf2Qi
https://drive.google.com/open?id=19LE-0IVEvYMl9n36F9-_l7FLyt4hf2Qi
https://drive.google.com/open?id=19LE-0IVEvYMl9n36F9-_l7FLyt4hf2Qi
https://drive.google.com/open?id=19LE-0IVEvYMl9n36F9-_l7FLyt4hf2Qi
https://drive.google.com/open?id=19LE-0IVEvYMl9n36F9-_l7FLyt4hf2Qi
https://drive.google.com/open?id=19LE-0IVEvYMl9n36F9-_l7FLyt4hf2Qi
https://drive.google.com/open?id=19LE-0IVEvYMl9n36F9-_l7FLyt4hf2Qi
https://drive.google.com/open?id=19LE-0IVEvYMl9n36F9-_l7FLyt4hf2Qi
https://drive.google.com/open?id=19LE-0IVEvYMl9n36F9-_l7FLyt4hf2Qi
https://drive.google.com/file/d/1LVcm9L-6X0CUQ5UTS8Zif4o-sQ9WwZn3/view?usp=sharing
https://drive.google.com/file/d/1LVcm9L-6X0CUQ5UTS8Zif4o-sQ9WwZn3/view?usp=sharing
https://drive.google.com/file/d/1LVcm9L-6X0CUQ5UTS8Zif4o-sQ9WwZn3/view?usp=sharing
https://drive.google.com/file/d/1LVcm9L-6X0CUQ5UTS8Zif4o-sQ9WwZn3/view?usp=sharing
https://drive.google.com/file/d/1LVcm9L-6X0CUQ5UTS8Zif4o-sQ9WwZn3/view?usp=sharing
https://drive.google.com/file/d/1LVcm9L-6X0CUQ5UTS8Zif4o-sQ9WwZn3/view?usp=sharing
https://drive.google.com/file/d/1LVcm9L-6X0CUQ5UTS8Zif4o-sQ9WwZn3/view?usp=sharing
https://drive.google.com/file/d/1LVcm9L-6X0CUQ5UTS8Zif4o-sQ9WwZn3/view?usp=sharing
https://drive.google.com/file/d/1LVcm9L-6X0CUQ5UTS8Zif4o-sQ9WwZn3/view?usp=sharing
https://drive.google.com/file/d/1LVcm9L-6X0CUQ5UTS8Zif4o-sQ9WwZn3/view?usp=sharing
https://drive.google.com/file/d/1LVcm9L-6X0CUQ5UTS8Zif4o-sQ9WwZn3/view?usp=sharing
https://drive.google.com/file/d/1LVcm9L-6X0CUQ5UTS8Zif4o-sQ9WwZn3/view?usp=sharing
https://drive.google.com/file/d/1LVcm9L-6X0CUQ5UTS8Zif4o-sQ9WwZn3/view?usp=sharing
https://drive.google.com/file/d/1LVcm9L-6X0CUQ5UTS8Zif4o-sQ9WwZn3/view?usp=sharing
https://drive.google.com/file/d/1LVcm9L-6X0CUQ5UTS8Zif4o-sQ9WwZn3/view?usp=sharing
http://www.easyr.com.br/
44
GRÁFICO
CORINGA
04
GRÁFICO CORINGA – FUNÇÃO PLOT
A função plot() é uma função gráfica coringa no
R. Eu digo isso porque ela pode ser utilizada em
diversas aplicações, produzindo diferentes tipos de
gráficos, dependendo da classe de objeto ao qual
ela é aplicada.
Aqui usaremos a função plot() para criar um
gráfico de dispersão entre duas variáveis contínuas,
que chamei de Variável 1 e Variável 2. Como eu
disse antes, todos os dados usados nos exemplos
deste livro não representam situações reais.
46
SCRIPT COMPLETO
jpeg("graf_var_continuas.jpg",width=120,
height=120,bg="white",res=300,units="mm")
par((mar=c(5.5,5.5,2.5,1.5))
plot(x=dados#Var1,y=dados$Var2,pch=21,
xlab="Variável 1",lwd=2,cex=2,cex.lab=1.4,
ylab="Variável 2",font.lab=2,cex.axis=1.2,
col="darkorange“,bg="yellow",xlim=c(15,30),
ylim=c(15,28),cex.main=1.4,font.main=1,
main="Relação entre x e y“)
abline(reg=lm(Var1 ~ Var2,data=dados),
lwd=2,col="red")
dev.off()
A planilha utilizada neste exemplo contém três
colunas, a primeira com uma variável categórica
(Mes) que representa os meses ao longo de 1 ano, e
as duas variáveis contínuas que eu chamei de Var1 e
Var2. A variável Mes é sem acento mesmo, eu
recomendo fortemente que você não use acentos nos
nomes das variáveis e dos objetos.
47
SCRIPT PASSO A PASSO
Antes de vermos os detalhes do gráfico, você
reparou que eu usei uma função nova para salvar a
figura? Eu usei a função jpeg() que como o
próprio nome sugere, salva figuras no formato .jpg.
Esta função opera semelhante à função tiff(), a
diferença aqui é que ela não tem o argumento
compression para compactação do tamanho do
arquivo. Veja os outros argumentos no help ?jpeg.
Seguimos com os novos argumentos apresentados
no exemplo da função plot():
1) x e y, nestes argumentos são definidas as
variáveis que serão utilizadas no gráfico. As
variáveis são indicadas com a sintaxe que vimos
no primeiro exemplo: dados$Var1 e dados$Var2.
No próximo capítulo veremos que podemos indicar
apenas o valor do argumento x;
2) pch, indica o símbolo usado na representação
do ponto, pch=21 representa um círculo com
diferentes cores de preenchimento e de contorno.
48
Veja a Dica do Expert #5 e confira vários tipos de
símbolos para usar com o argumento pch;
3) lwd, argumento que controla a espessura de
linhas, funciona semelhante ao argumento cex, ou
seja um lwd=2 está aumentando em 100% a
espessura de uma linha padrão com lwd=1;
4) cex, já falei deste argumento, mas chamo a sua
atenção para este caso, em que ele está
controlando o aumento de tamanho dos círculos;
5) col e bg, comentei na explicação do argumento
pch que para o símbolo de código 21 é possível
controlar as cores de contorno e preenchimento.
Certo, os argumentos que controlam essas cores
são col e bg, respectivamente.
Concluindo o exemplo, eu adicionei uma linha de
tendência que mostra a relação linear (nesse caso
inversamente proporcional) entre as variáveis.
Essa linha foi adicionada com a função abline(),
que vimos anteriormente, mas ao invés de utilizar o
argumento h, eu utilizei o argumento reg.
49
Este argumento indica um objeto resultante de uma
função de regressão, onde se obtém os coeficientes
entre as variáveis. Aqui eu usei a função lm() que
aplica uma Regressão Linear entre as variáveis.
DICA DO EXPERT #5
No quadro acima você pode ver os códigos
numéricos (à esquerda) e respectivos símbolos que
podem ser utilizados no argumento pch da função
plot(). Os 14 primeiros símbolos são vazados
(sem preenchimento), os 5 seguintes tem cores de
preenchimento, e os símbolos de 21 a 25 são os
em que é possível configurar diferentes cores de
contorno e preenchimento.
Outro aspecto importante da função plot() é que
ela possui diferentes tipos. “Como assim Luis?” O
tipo que eu apresentei neste capítulo é o gráfico de
pontos. O ajuste é feito pelo argumento type="p",
neste caso. Vejamos os outros tipos:
51
LINKS IMPORTANTES
Script para abrir direto no R:
Baixe o arquivo do script do gráfico com duas
variáveis contínuas
Planilha de dados para você fazer os exemplos:
Baixe aqui o arquivo da planilha de dados
www.easyR.com.br
https://drive.google.com/open?id=19vRILK9TbrbyjzBZjc3VhnyruHlbLwof
https://drive.google.com/open?id=19vRILK9TbrbyjzBZjc3VhnyruHlbLwof
https://drive.google.com/open?id=19vRILK9TbrbyjzBZjc3VhnyruHlbLwofhttps://drive.google.com/open?id=19vRILK9TbrbyjzBZjc3VhnyruHlbLwof
https://drive.google.com/open?id=19vRILK9TbrbyjzBZjc3VhnyruHlbLwof
https://drive.google.com/open?id=19vRILK9TbrbyjzBZjc3VhnyruHlbLwof
https://drive.google.com/open?id=19vRILK9TbrbyjzBZjc3VhnyruHlbLwof
https://drive.google.com/open?id=19vRILK9TbrbyjzBZjc3VhnyruHlbLwof
https://drive.google.com/open?id=19vRILK9TbrbyjzBZjc3VhnyruHlbLwof
https://drive.google.com/open?id=19vRILK9TbrbyjzBZjc3VhnyruHlbLwof
https://drive.google.com/open?id=19vRILK9TbrbyjzBZjc3VhnyruHlbLwof
https://drive.google.com/open?id=19vRILK9TbrbyjzBZjc3VhnyruHlbLwof
https://drive.google.com/open?id=19vRILK9TbrbyjzBZjc3VhnyruHlbLwof
https://drive.google.com/open?id=19vRILK9TbrbyjzBZjc3VhnyruHlbLwof
https://drive.google.com/open?id=19vRILK9TbrbyjzBZjc3VhnyruHlbLwof
https://drive.google.com/open?id=19vRILK9TbrbyjzBZjc3VhnyruHlbLwof
https://drive.google.com/open?id=19vRILK9TbrbyjzBZjc3VhnyruHlbLwof
https://drive.google.com/open?id=19vRILK9TbrbyjzBZjc3VhnyruHlbLwof
https://drive.google.com/open?id=19vRILK9TbrbyjzBZjc3VhnyruHlbLwof
https://drive.google.com/open?id=19vRILK9TbrbyjzBZjc3VhnyruHlbLwof
https://drive.google.com/open?id=19vRILK9TbrbyjzBZjc3VhnyruHlbLwof
https://drive.google.com/open?id=1f0s0OTpRHxx0uNE4h2tHp3GKEaT4IyEl
https://drive.google.com/open?id=1f0s0OTpRHxx0uNE4h2tHp3GKEaT4IyEl
https://drive.google.com/open?id=1f0s0OTpRHxx0uNE4h2tHp3GKEaT4IyEl
https://drive.google.com/open?id=1f0s0OTpRHxx0uNE4h2tHp3GKEaT4IyEl
https://drive.google.com/open?id=1f0s0OTpRHxx0uNE4h2tHp3GKEaT4IyEl
https://drive.google.com/open?id=1f0s0OTpRHxx0uNE4h2tHp3GKEaT4IyEl
https://drive.google.com/open?id=1f0s0OTpRHxx0uNE4h2tHp3GKEaT4IyEl
https://drive.google.com/open?id=1f0s0OTpRHxx0uNE4h2tHp3GKEaT4IyEl
https://drive.google.com/open?id=1f0s0OTpRHxx0uNE4h2tHp3GKEaT4IyEl
https://drive.google.com/open?id=1f0s0OTpRHxx0uNE4h2tHp3GKEaT4IyEl
https://drive.google.com/open?id=1f0s0OTpRHxx0uNE4h2tHp3GKEaT4IyEl
https://drive.google.com/open?id=1f0s0OTpRHxx0uNE4h2tHp3GKEaT4IyEl
https://drive.google.com/open?id=1f0s0OTpRHxx0uNE4h2tHp3GKEaT4IyEl
https://drive.google.com/open?id=1f0s0OTpRHxx0uNE4h2tHp3GKEaT4IyEl
https://drive.google.com/open?id=1f0s0OTpRHxx0uNE4h2tHp3GKEaT4IyEl
http://www.easyr.com.br/
52
DOIS EIXOS Y
05
GRÁFICO COM DOIS EIXOS Y
Vou mostrar neste exemplo como criar um gráfico
que represente duas variáveis, que tem amplitude
de valores diferentes, usando a função plot().
O gráfico do exemplo possui dois eixos y, um para
cada variável contínua. As duas variáveis foram
medidas em um conjunto de variáveis categóricas,
aqui representadas pelos meses de 1 ano.
Veja que o valor mínimo da variável 1 corresponde
ao valor máximo da variável 2. Representá-las no
mesmo eixo poderia gerar um resultado visual ruim,
54
dependendo do objetivo do gráfico. Usei a mesma
planilha do exemplo do Capítulo 4. No entanto, para
simular a diferença de amplitude entre as variáveis,
eu dividi os valores da variável 2 por dois. Você
verá que fiz esta operação direto no script da figura.
SCRIPT COMPLETO
tiff("graf_dois_eixos_y.tif",width=200,
height=150,bg="white",res=300,
compression="lzw",units="mm")
par((mar=c(4,5.5,2.5,5.5))
plot(x=dados$Var1,xlab="",ylab="",type="l",
lwd=2,col="darkorange",ylim=c(14,28),
xaxt="n",yaxt="n“)
mtext(text="Variável 1",side=2,cex=1.4,font=2,
padj=-3.5,col="darkorange")
axis(side=2,cex.axis=1.2,las=1,col="darkorange",
col.axis="darkorange")
par(new=TRUE)
plot(x=dados$Var2/2,xlab="",ylab="",type="l",
lwd=2,col="darkred",ylim=c(6,14),axes=F)
55
SCRIPT COMPLETO (continuação)
axis(side=4,cex.axis=1.2,las=1,col="darkred",
col.axis="darkred")
mtext(text="Variável 2",side=4,cex=1.4,font=2,
padj=3.5,col="darkred")
axis(side=1,at=seq(from=1,to=12,by=1),
labels=dados$Mes)
dev.off()
SCRIPT PASSO A PASSO
Iniciando o passo a passo, atenção para o ajuste do
valor da margem direita da figura na função par()
argumento mar, que antes estava 1,5 para 5,5. Assim
teremos espaço para o novo eixo y. Vamos ver agora
os novos argumentos utilizados na função plot() do
exemplo:
1) x, indiquei a variável Var1 para o argumento x,
enquanto o argumento y não foi especificado. Caso
você coloque a variável Var1 no argumento y, e a
56
variável Mes no argumento x, o R retornará outro
tipo de gráfico. Experimente esse ajuste e veja o
que acontece;
2) xlab, a função plot() por default colocará
como nome do eixo o nome da variável, ou seja,
algo assim dados$Var1. Para padronizar com o
nome do segundo eixo y, vou usar outra função
para dar nome aos eixos. Sendo assim, tenho que
deixar vazio entre aspas, sem texto, para a função
não usar o default. O mesmo vale para ylab;
3) type="l", vimos no Capítulo 4 os tipos de
representação dos dados que podem ser usados
na função plot(). Como o default da função é a
representação de pontos type="p", e eu quero
fazer um gráfico de linhas, tenho que ajustar o tipo
para type="l";
4) xaxt="n" e yaxt="n", estes dois argumentos
são usados para suprimir os eixos x e y
separadamente. Usei eles porque vou adicionar os
eixos posteriormente usando outra função.
57
Agora vamos ver uma função nova, a mtext(). Ela
é usada para adicionar textos na área das margens
de um gráfico. Para adicionar textos na área
interna do gráfico você pode usar a função text().
1) text, o primeiro argumento é o texto que você
deseja escrever. No exemplo, vamos escrever o
nome da variável, como faríamos usando ylab;
2) side, indica o lado do gráfico no qual você quer
inserir o texto. As opções são: 1 – inferior, 2 –
esquerda, 3 – superior, 4 – direita;
3) padj, argumento que ajusta a posição do texto
em relação ao eixo do gráfico. Quando utilizado na
posição esquerda ou superior, o valor de ajuste
deve ser precedido pelo sinal negativo para o texto
ficar fora do gráfico. Caso contrário, o texto
aparecerá dentro da área do gráfico;
A segunda função nova que vamos ver neste
exemplo é a axis(), usada para adicionar um eixo
em qualquer uma das quatro posições no entorno
do gráfico. A função tem um argumento side que é
58
ajustado da mesma forma como na função
mtext(), cex.axis para ajustar o tamanho da
fonte do eixo, col para ajustar a cor do eixo e tick
marks juntos, e col.axis para mudar a cor dos
números do eixo.
Agora o “pulo do gato” deste exemplo é o seguinte
comando, par(new=TRUE). Com este argumento da
função par(), você adiciona um novo gráfico ao
existente. Nesse novo gráfico você pode definir
novos parâmetros como ylim, que permitirá
formatar novos limites mínimo e máximo para a
segunda variável.
Na sequência eu executei uma nova função
plot(), agora para a variável 2, onde eu fiz a
divisão por dois, que eu mencionei no início deste
capítulo. Neste linha de comando, a diferença é o
argumento axes=F (ou FALSE), que elimina os eixos
x e y, juntamente com a caixa de contorno que
delimita a área interna do gráfico, tudo junto em um
único argumento. Mudei a cor da linha para
diferenciar as duas variáveis, usando cor darkred.
59
Igualmente ao gráfico da variável 1, usei as
funções mtext() e axis() para adicionar o nome
da variável 2 e o segundo eixo y na posição da
direita (side=4). Ajustei ambos com as mesmas
cores da linha ("darkred").
Agora vamos terminar a figura com o eixo x.
Experimente deixar o eixo x na figura, execute o
primeiro plot() sem o argumento xaxt="n".
Você vai ver que o eixo x ficará com números no
lugar dos meses, que é o que queremos colocar no
eixo x.
Eu usei a função axis() na posição inferior
(side=1) com mais dois argumentos chave:
1) at, que indica a posição de cada um dos 12
meses. Eu poderia indicar com um vetor usando
c() e escrevendo as posições de 1 a 12. Mas
você pode ser mais eficiente com a função seq()
que gera sequências de números, veja o help ?seq;
2) labels, indica o que vaiser colocado no label
do eixo, neste caso eu usei a variável dados$Mes.
60
LINKS IMPORTANTES
Script para abrir direto no R:
Baixe o arquivo do script do gráfico com 2 eixos y
Planilha de dados para você fazer os exemplos:
Baixe aqui o arquivo da planilha de dados
Lembre-se: esta planilha é a mesma utilizada no
Capítulo 4.
www.easyR.com.br
https://drive.google.com/open?id=1oemjDEj_d0KuF_OkkpYKccMcI0E7t6Nv
https://drive.google.com/open?id=1oemjDEj_d0KuF_OkkpYKccMcI0E7t6Nv
https://drive.google.com/open?id=1oemjDEj_d0KuF_OkkpYKccMcI0E7t6Nv
https://drive.google.com/open?id=1oemjDEj_d0KuF_OkkpYKccMcI0E7t6Nv
https://drive.google.com/open?id=1oemjDEj_d0KuF_OkkpYKccMcI0E7t6Nv
https://drive.google.com/open?id=1oemjDEj_d0KuF_OkkpYKccMcI0E7t6Nv
https://drive.google.com/open?id=1oemjDEj_d0KuF_OkkpYKccMcI0E7t6Nv
https://drive.google.com/open?id=1oemjDEj_d0KuF_OkkpYKccMcI0E7t6Nv
https://drive.google.com/open?id=1oemjDEj_d0KuF_OkkpYKccMcI0E7t6Nv
https://drive.google.com/open?id=1oemjDEj_d0KuF_OkkpYKccMcI0E7t6Nv
https://drive.google.com/open?id=1oemjDEj_d0KuF_OkkpYKccMcI0E7t6Nv
https://drive.google.com/open?id=1oemjDEj_d0KuF_OkkpYKccMcI0E7t6Nv
https://drive.google.com/open?id=1oemjDEj_d0KuF_OkkpYKccMcI0E7t6Nv
https://drive.google.com/open?id=1oemjDEj_d0KuF_OkkpYKccMcI0E7t6Nv
https://drive.google.com/open?id=1oemjDEj_d0KuF_OkkpYKccMcI0E7t6Nv
https://drive.google.com/open?id=1oemjDEj_d0KuF_OkkpYKccMcI0E7t6Nv
https://drive.google.com/open?id=1oemjDEj_d0KuF_OkkpYKccMcI0E7t6Nv
https://drive.google.com/open?id=1oemjDEj_d0KuF_OkkpYKccMcI0E7t6Nv
https://drive.google.com/open?id=1oemjDEj_d0KuF_OkkpYKccMcI0E7t6Nv
https://drive.google.com/open?id=1oemjDEj_d0KuF_OkkpYKccMcI0E7t6Nv
https://drive.google.com/open?id=1oemjDEj_d0KuF_OkkpYKccMcI0E7t6Nv
https://drive.google.com/open?id=1f0s0OTpRHxx0uNE4h2tHp3GKEaT4IyEl
https://drive.google.com/open?id=1f0s0OTpRHxx0uNE4h2tHp3GKEaT4IyEl
https://drive.google.com/open?id=1f0s0OTpRHxx0uNE4h2tHp3GKEaT4IyEl
https://drive.google.com/open?id=1f0s0OTpRHxx0uNE4h2tHp3GKEaT4IyEl
https://drive.google.com/open?id=1f0s0OTpRHxx0uNE4h2tHp3GKEaT4IyEl
https://drive.google.com/open?id=1f0s0OTpRHxx0uNE4h2tHp3GKEaT4IyEl
https://drive.google.com/open?id=1f0s0OTpRHxx0uNE4h2tHp3GKEaT4IyEl
https://drive.google.com/open?id=1f0s0OTpRHxx0uNE4h2tHp3GKEaT4IyEl
https://drive.google.com/open?id=1f0s0OTpRHxx0uNE4h2tHp3GKEaT4IyEl
https://drive.google.com/open?id=1f0s0OTpRHxx0uNE4h2tHp3GKEaT4IyEl
https://drive.google.com/open?id=1f0s0OTpRHxx0uNE4h2tHp3GKEaT4IyEl
https://drive.google.com/open?id=1f0s0OTpRHxx0uNE4h2tHp3GKEaT4IyEl
https://drive.google.com/open?id=1f0s0OTpRHxx0uNE4h2tHp3GKEaT4IyEl
https://drive.google.com/open?id=1f0s0OTpRHxx0uNE4h2tHp3GKEaT4IyEl
https://drive.google.com/open?id=1f0s0OTpRHxx0uNE4h2tHp3GKEaT4IyEl
http://www.easyr.com.br/
61
MATERIAL
EXTRA
06
INICIANDO O R
Eu incluí este material extra no livro para fornecer
aos aspirantes a usuários do R, aqueles que estão
iniciando, uma fonte de consulta rápida para
começar a usar o programa agora!
O R pode ser obtido gratuitamente na internet no
endereço https://www.r-project.org, onde você
encontra versões do programa para diferentes
plataformas (Windows, OS X Mac, Linux). Clique
aqui e baixe o tutorial que eu fiz para você,
explicando com mais detalhes o download do R.
https://www.r-project.org/
https://www.r-project.org/
https://www.r-project.org/
https://www.r-project.org/
https://www.r-project.org/
https://www.r-project.org/
https://www.r-project.org/
https://www.r-project.org/
https://www.r-project.org/
https://www.r-project.org/
https://drive.google.com/open?id=1UohyvBkjaj9xncZJqMk772F3Rvh7GA2W
https://drive.google.com/open?id=1UohyvBkjaj9xncZJqMk772F3Rvh7GA2W
https://drive.google.com/open?id=1UohyvBkjaj9xncZJqMk772F3Rvh7GA2W
63
Agora vou apresentar o R, mostrar um pouco a tela
inicial, a configuração da pasta de trabalho, como
importar arquivos de dados, ou seja, aquela
planilha criadas em programas de planilhas
eletrônicas, e outros comandos básicos.
Quando você abre o programa é aberta uma janela
chamara “R Console”, onde o cursor, na cor
vermelha, fica piscando em frente ao símbolo “>”.
Este símbolo indica que o prompt do R está pronto
para receber um comando. É no console que você
digitará os comandos para executar uma operação
64
no R. Eu usei aqui, bem como em todo o livro, o
padrão de cores do R (prompt e entrada de
comando em vermelho, e o resultado retornado
pelo R na cor azul).
Todas as vezes que você inicia o R é preciso
direcioná-lo para a pasta do seu computador
(também chamada de diretório), onde estão
armazenados os arquivo de dados que serão
utilizados por você e importados para o R.
Nesta mesma pasta o R salvará a “Área de
trabalho” (local onde o programa armazenará seus
dados e os resultados das operações realizadas no
console), os scripts (arquivos de edição e
armazenamento de comandos) e as figuras que
você criar. Vamos chamar esta pasta de “Diretório
de trabalho”.
Vamos supor que você criou uma pasta no seu
computador chamada “Curso R” e esta pasta será
o seu “Diretório de trabalho”. Existem algumas
formas de fazer o direcionamento para o “Diretório
65
de trabalho” uma delas é usar a seguinte linha de
comando (criei um caminho hipotético até o seu
“Diretório de trabalho”):
> setwd("C:/Users/Documents/Curso R")
O comando pode ser simplificado substituindo todo
o caminho de pastas do computador até a pasta
“Documents” pelo acento “~”:
> setwd("~/Curso R")
A qualquer momento o “Diretório de trabalho” pode
ser conferido com o comando:
> getwd()
[1] "C:/Users/Documents/Curso R“
Neste caso, diferente do comando anterior, o R
retorna um resultado (em azul).
Agora vamos ver a forma mais simples de utilizar o
R, vamos usá-lo como uma calculadora.
Os operadores aritméticos no R são: + (adição),
66
– (subtração), / (divisão), * (multiplicação), ^
(potenciação). Para outras operações temos
funções que executam a operação. Calma, já vou
falar para você o que é uma função daqui a pouco.
> sqrt() # raíz quadrada
> log() # logarítimo
> pi # número Pi
[1] 3.141593 # resposta do R
Executando algumas operações matemáticas:
> 2 + 2
[1] 4
> 2 + 2;2+2
[1] 4
[1] 4
Uma pausa para dois pequenos detalhes. Para o
R, não importa se você der ou não der espaços
entre os caracteres. O segundo detalhe é que para
executar duas operações na mesma linha de
comando, é preciso separar as duas operações por
67
“;”, e os resultados são exibidos pelo R em duas
linhas separadas.
Já vimos que o símbolo “>” indica que o R está
pronto para receber um comando. Quando o
símbolo do prompt muda para “+” significa que o
comando está incompleto e o R está esperando o
que falta no comando para completar a operação:
> 2 +
+
Neste caso está faltando o outro número 2 para
completar a operação.
As regras da matemática para a ordem das
operações e dos parênteses, que nós aprendemos
em algum momento do Ensino Fundamental,
também valem no R:
> 2 * 5 – 1
[1] 9
> 2^2 * 5 – 1
[1] 19
68
> 5 * 2 – (10 + 7)
[1] -7
> 5 * 2 – 10 + 7
[1] 7
IMPORTANDO ARQUIVOS
Vamos criar uma planilha com a idade, altura e
local de nascimento de um grupo qualquer de
pessoas, podem ser seus familiares e amigos. As
variáveis ou colunas da planilha serão: Idade;
Altura; Naturalidade. Aqui teremos para cada
variável um tipo de dado, que neste caso serão:
integer (número inteiro); numeric (número com
decimal); character (um tipo de dado utilizado
para textos).
Agora preencha a sua planilha e salve o arquivo
como .csv (texto separado por vírgulas), no seu
“Diretório de trabalho”. Esta é aquela pasta para
onde nós direcionamos o R no início. A importação
do arquivo .csv para o R será realizada com a
seguinte função:
69
> read.csv(file="amigos.csv",
header=TRUE, sep=";", dec=",")
Idade Altura Naturalidade1 19 1.75 Florianópolis
2 22 1.80 Rio de Janeiro
3 18 1.60 São Paulo
4 31 1.55 Salvador
5 26 1.85 Fortaleza
6 34 1.90 Curitiba
7 21 1.65 Porto Alegre
8 22 1.72 Cuiabá
Antes de explicar cada elemento da linha de
comando vamos falar de um pequeno detalhe.
Quando você executou o comando acima, a sua
planilha apareceu no console do R certo? Mas ela
não foi importada para o R, ou seja, os dados não
foram armazenados na “Área de trabalho”. O R
simplesmente leu a sua planilha e mostrou o
conteúdo no console.
Para o R importar e armazenar a sua planilha na
“Área de trabalho” você tem que gravar a planilha
em um objeto. O objeto é onde o R grava ou
armazena os dados. Nós falamos que a
programação em R é orientada a objetos. Tudo no
70
R é um objeto. Para criar um objeto no R usa-se o
“operador de atribuição” que é o sinal de menor
seguido por um hífen “ amigos amigos
Idade Altura Naturalidade
1 19 1.75 Florianópolis
2 22 1.80 Rio de Janeiro
3 18 1.60 São Paulo
4 31 1.55 Salvador
5 26 1.85 Fortaleza
6 34 1.90 Curitiba
7 21 1.65 Porto Alegre
8 22 1.72 Cuiabá
71
Para ver os objetos armazenados na “Área de
trabalho” do R, você precisa digitar no console o
seguinte comando.
> ls()
[1] "amigos"
Alguns detalhes importantes quando criamos
objetos. O nome dos objetos podem ser formados
por letras, números e ponto; mas não podem
começar com número e/ou ponto; não podem
conter espaços; e por último, evite, ou melhor, não
use acentos.
Para o R existe diferença entre letras maiúsculas e
minúsculas. Experimente chamar o objeto com “A”
maiúsculo:
> Amigos
Erro: objeto 'Amigos' não encontrado
O objeto “Amigos” com o “A” maiúsculo não existe
e por isso o R não o encontrou. O mesmo vale para
as variáveis (colunas da planilha) do objeto.
72
Para acessar apenas uma variável digite no
console o nome do objeto seguido do símbolo “$” e
o nome da variável:
> amigos$Idade
[1] 19 22 18 31 26 34 21 22
Digite agora “Idade” com “i” minúsculo:
> amigos$idade
Null
A variável não existe e por isso o R retorna valor
nulo.
Podemos explorar mais o objeto criado com os
dados importados utilizando algumas funções:
> View(amigos) # abre uma nova tela na forma
de planilha facilitando a visualização para objetos
muito grandes. Atenção, o “V” é maiúsculo!
> names(amigos) # retorna as variáveis do objeto;
[1] "Idade" "Altura" "Naturalidade"
73
> dim(amigos) # retorna as dimensões do objeto
em número de linhas e colunas;
[1] 8 3
> head(amigos) # retorna as 6 primeiras linhas;
Idade Altura Naturalidade
1 19 1.75 Florianópolis
2 22 1.80 Rio de Janeiro
3 18 1.60 São Paulo
4 31 1.55 Salvador
5 26 1.85 Fortaleza
6 34 1.90 Curitiba
> tail(amigos) # retorna as 6 últimas linhas;
Idade Altura Naturalidade
3 18 1.60 São Paulo
4 31 1.55 Salvador
5 26 1.85 Fortaleza
6 34 1.90 Curitiba
7 21 1.65 Porto Alegre
8 22 1.72 Cuiabá
> str(amigos) # retorna a estrutura do objeto, ou
seja, quais os tipos de dados que estão
armazenados no objeto;
'data.frame': 8 obs. of 3 variables:
$ Idade : int 19 22 18 31 26 34
$ Altura : num 1.75 1.8 1.6 1.55
$ Naturalidade: Factor w/ 8 levels
"Cuiabá","Curitiba",..: 3 6 8 7 4 2 5 1
74
Repare uma coisa: o R importou a variável
“Naturalidade” como um fator (Factor). O fator é
outro tipo de variável como as que vimos
anteriormente (integer, numeric, character),
utilizada para textos, mas que contém níveis.
O R mostra após o nome da variável “Factor w/ 8
levels”, ou seja, um fator com 8 níveis. Isso pode
ocorrer, e dependendo da aplicação que você vai
fazer, ou a forma com que você usará os dados,
não atrapalha em nada. Caso você queira
transformar a variável para caractere, você pode
usar a função as.character():
> amigos$Naturalidade class(amigos$Naturalidade)
[1] character
Mencionamos as funções lá no início. Mas o que
são funções?
75
Funções são comandos ou conjuntos de comandos
sistematizados para executar alguma operação no
R. As funções são definidas por:
nome_da_função(argumento1, argumento2, ...)
Os argumentos são os parâmetros que precisam
ser definidos para a função executar a operação
desejada. Por exemplo, na função “read.csv()”,
que utilizamos para importar a planilha, foi preciso
indicar alguns argumentos que se não fossem
indicados, ou a função não funcionaria, ou a
planilha seria importada com erro. Vamos ver os
argumentos da função:
1) file="amigos.csv", indica o nome do arquivo
que será lido, não esquecer da extensão .csv;
2) header=TRUE, indica se o arquivo tem
cabeçalho, se sim “TRUE”, se não “FALSE”. Existem
muitas funções com esse tipo de argumento
chamado de “lógico”, onde se indica se é
verdadeiro ou falso (pode ser também “T” ou “F”),
sempre em maiúsculo;
76
3) sep=";", indica o símbolo usado na separação
entre colunas. Geralmente os computadores
configurados para usar a vírgula como símbolo do
decimal, usam o ponto e vírgula como separador
de colunas. No caso dos computadores que usam
o ponto como símbolo do decimal, o separador de
colunas usualmente é a vírgula, mas pode ser
também o ponto e vírgula. Verifique a configuração
do seu computador;
4) dec=",", aqui será indicado o símbolo do
decimal, de acordo com a configuração do seu
computador.
Dica do Expert #6
Quando você escreve uma função, você não
precisa escrever o nome do argumento se ele
estiver na ordem em que ele foi configurado na
função. Mas não se preocupe! Você não precisa
decorar a ordem dos argumentos nas funções, isso
seria impossível! O R aceita você omitir o nome do
argumento (se ele estiver na posição correta), e
77
digitar o nome de outro argumento se você não
sabe a posição certa dele. Veja o exemplo:
> read.csv("amigos.csv", header=TRUE,
dec=",", sep=";")
Encerrando o R
Para encerrar vamos salvar a “Área de trabalho”
onde armazenamos o objeto “amigos”. Assim, da
próxima vez que usarmos essa planilha de dados
no R, não teremos que importá-la novamente.
> save.image()
Salvando a “Área de trabalho” dessa forma, o
arquivo não terá um nome, simplesmente
aparecerá do seu “Diretório de Trabalho” um
arquivo “.RData”. Caso você queira dar um nome
para a sua “Área de Trabalho”, use o comando da
seguinte forma:
> save.image(file="My_workspace.RData")
78
Quanto você retornar ao R e quiser trabalhar com a
“’Área de trabalho” salva no “Diretório de trabalho”,
ela pode ser carregada com o comando:
> load(".RData")
ou
> load("My_workspace.RData")
Mas atenção! Para o comando funcionar, você tem
que direcionar o R para o “Diretório de trabalho”
onde o arquivo “.RData” ou “My_workspace.RData”
foi salvo. Caso contrário você terá a seguinte
mensagem de erro:
> load(".RData")
Error in readChar(con, 5L, useBytes =
TRUE) :
não é possível abrir a conexão
Além disso: Warning message:
In readChar(con, 5L, useBytes = TRUE) :
não foi possível abrir o arquivo
comprimido '.RData', motivo provável 'No
such file or directory‘
79
Isso ocorre porque toda a vez que o R é iniciado,
ele deve ser direcionadopara o “Diretório de
trabalho” onde estão os arquivos que você irá
utilizar. Então você precisa prosseguir com o
seguinte código:
> setwd("~/Curso R")
> load(".RData")
> ls()
[1] "amigos"
Recomendo que você coloque as duas primeiras linhas
no início dos seus scripts, trocando para a sua pasta .
Dessa forma, sempre que você iniciar o programa e o
seu trabalho do dia, é só executar essas duas linhas de
comando que o R irá direto para o “Diretório de trabalho”
do projeto que você irá trabalhar (TCC, dissertação, tese,
relatório de consultoria, trabalho técnico). E aí é só
começar. Para encerrar, você pode sair do R com o
seguinte comando:
> q() # ele irá perguntar sempre se você quer salvar a
“Área de trabalho”, independente de você ter acabado de
salvá-la.
80
Terminamos o material extra e o livro por aqui,
espero que este livro possa ajudar você a iniciar no
R, e progredir cada vez mais nos seus trabalhos.
Caso você tenha algum comentário ou sugestão
sobre o livro, envie para o nosso e-mail de contato:
contato.easyR@gmail.com
Indique o livro para os seus amigos. Eles podem
adquiri-lo gratuitamente no endereço:
www.easyR.com.br/guiarapido
Um abraço e nos vemos nas nossas redes sociais e
cursos!
www.easyR.com.br
mailto:contato.easyR@gmail.com
mailto:contato.easyR@gmail.com
mailto:contato.easyR@gmail.com
mailto:contato.easyR@gmail.com
mailto:contato.easyR@gmail.com
http://www.easyr.com.br/guiarapido
http://www.easyr.com.br/guiarapido
http://www.easyr.com.br/guiarapido
http://www.easyr.com.br/guiarapido
http://www.easyr.com.br/guiarapido
http://www.easyr.com.br/guiarapido
http://www.easyr.com.br/guiarapido
http://www.easyr.com.br/