Ferramentas do usuário

Ferramentas do site


01_curso_atual:aularelampago

Diferenças

Aqui você vê as diferenças entre duas revisões dessa página.

Link para esta página de comparações

01_curso_atual:aularelampago [2020/08/12 06:04]
127.0.0.1 edição externa
01_curso_atual:aularelampago [2020/09/23 17:10] (atual)
adalardo code
Linha 93: Linha 93:
 Apesar das diferenças de interface devido a o sistema operacional,​ ao iniciar o R você deverá obter uma janela muito parecida com a seguinte janela: Apesar das diferenças de interface devido a o sistema operacional,​ ao iniciar o R você deverá obter uma janela muito parecida com a seguinte janela:
  
-<​code>​+<​code ​rsplus>
 R version 2.7.0 (2008-04-22) R version 2.7.0 (2008-04-22)
 Copyright (C) 2008 The R Foundation for Statistical Computing Copyright (C) 2008 The R Foundation for Statistical Computing
Linha 123: Linha 123:
  
 Os outros dois estados da linha de comando são o de execução e o de espera para a conlusão do comando. No modo de execução não é exibido nenhum sinal e não é possível digitar outro comando. Você só perceberá isso se der um comando que tenha um tempo de execução muito longo. ​ Experimente o seguinte comando: Os outros dois estados da linha de comando são o de execução e o de espera para a conlusão do comando. No modo de execução não é exibido nenhum sinal e não é possível digitar outro comando. Você só perceberá isso se der um comando que tenha um tempo de execução muito longo. ​ Experimente o seguinte comando:
-<​code>​+<​code ​rsplus>
 > for(i in 1:10000) prod(1:i) > for(i in 1:10000) prod(1:i)
 > >
Linha 129: Linha 129:
  
 O estado de espera ocorre quando o usuário envia um comando incompleto, o que é indicado por um sinal de "''​+''":​ O estado de espera ocorre quando o usuário envia um comando incompleto, o que é indicado por um sinal de "''​+''":​
-<​code>​+<​code ​rsplus>
 > log(1 > log(1
 + ) + )
Linha 162: Linha 162:
  
 Use e abuse da função __''​help''​__. ​ Para obter ajuda da própria função utilize o comando: Use e abuse da função __''​help''​__. ​ Para obter ajuda da própria função utilize o comando:
-<​code>​+<​code ​rsplus>
 > help( help ) > help( help )
 </​code>​ </​code>​
  
 Outros exemplos: Outros exemplos:
-<​code>​+<​code ​rsplus>
 > help( "​*"​ )         # auxílio sobre o símbolo "​*"​ > help( "​*"​ )         # auxílio sobre o símbolo "​*"​
 > help( sin )         # auxílio sobre a função "​sin"​ = seno > help( sin )         # auxílio sobre a função "​sin"​ = seno
Linha 180: Linha 180:
  
 Para ver um objeto no R, basta digitar o seu **NOME**. ​ O nome de uma função é o comando sem os parênteses:​ Para ver um objeto no R, basta digitar o seu **NOME**. ​ O nome de uma função é o comando sem os parênteses:​
-<​code>​+<​code ​rsplus>
 > help > help
 > q > q
Linha 188: Linha 188:
  
 No R é fácil criar objetos numéricos((Nota:​ a maioria dos comandos nesse curso são mostrados **SEM** os resultados apresentados pelo R)): No R é fácil criar objetos numéricos((Nota:​ a maioria dos comandos nesse curso são mostrados **SEM** os resultados apresentados pelo R)):
-<​code>​+<​code ​rsplus>
 > x = 2 > x = 2
 > x > x
Linha 200: Linha 200:
  
 Vejamos alguns exemplos com objetos vetoriais: Vejamos alguns exemplos com objetos vetoriais:
-<​code>​+<​code ​rsplus>
 > k = c(1.3, -5, 6.7, 4.8) > k = c(1.3, -5, 6.7, 4.8)
 > k > k
Linha 216: Linha 216:
  
 Para saber quais objetos você criou no seu workspace use a função: Para saber quais objetos você criou no seu workspace use a função:
-<​code>​+<​code ​rsplus>
 > ls() > ls()
 </​code>​ </​code>​
Linha 222: Linha 222:
  
 Para apagar os objetos indesejados,​ utilize a função __''​rm''​__,​ fornecendo os objetos que você deseja apagar: Para apagar os objetos indesejados,​ utilize a função __''​rm''​__,​ fornecendo os objetos que você deseja apagar:
-<​code>​+<​code ​rsplus>
 > rm(x, y, z, w) > rm(x, y, z, w)
 > ls() > ls()
Linha 229: Linha 229:
  
 É importante lembrar que ao criar os objetos, o R não grava automaticamente o workspace no seu disco. ​ Fica tudo na memória do computador. ​ Basta uma interrupção momentânea de energia e você perde tudo.  Por isso, é importante lembrar de periodicamente gravar o seu workspace, principalmente nas sessões mais longas: É importante lembrar que ao criar os objetos, o R não grava automaticamente o workspace no seu disco. ​ Fica tudo na memória do computador. ​ Basta uma interrupção momentânea de energia e você perde tudo.  Por isso, é importante lembrar de periodicamente gravar o seu workspace, principalmente nas sessões mais longas:
-<​code>​+<​code ​rsplus>
 > save.image() ​                                        # grava o seu workspace com o nome genérico: "​.RData"​ > save.image() ​                                        # grava o seu workspace com o nome genérico: "​.RData"​
 > save.image(file="​minha_sessao_inicial_de_R.RData"​) ​  # grava o seu workspace com o nome indicado > save.image(file="​minha_sessao_inicial_de_R.RData"​) ​  # grava o seu workspace com o nome indicado
Linha 285: Linha 285:
  
 Esse arquivo pode ser visualizado em qualquer editor de textos, pois o formato CSV é um formato texto: Esse arquivo pode ser visualizado em qualquer editor de textos, pois o formato CSV é um formato texto:
-<​code>​+<​code ​rsplus>
 "​local","​parcela","​arvore","​fuste","​cap","​h","​especie"​ "​local","​parcela","​arvore","​fuste","​cap","​h","​especie"​
 "​chauas",​1,​1,​1,​210,​80,"​Myrcia sulfiflora"​ "​chauas",​1,​1,​1,​210,​80,"​Myrcia sulfiflora"​
Linha 305: Linha 305:
  
 Cuidado!! Se você digitar simplesmente:​ Cuidado!! Se você digitar simplesmente:​
-<​code>​+<​code ​rsplus>
 > read.csv(file="​exemplo-caixeta.csv"​) > read.csv(file="​exemplo-caixeta.csv"​)
 </​code>​ </​code>​
Linha 311: Linha 311:
  
 É necessário gravar a leitura do arquivo num **objeto**: É necessário gravar a leitura do arquivo num **objeto**:
-<​code>​+<​code ​rsplus>
 > cax = read.csv(file="​exemplo-caixeta.csv"​) > cax = read.csv(file="​exemplo-caixeta.csv"​)
 </​code>​ </​code>​
  
 Agora se você digitar o nome do objeto: Agora se você digitar o nome do objeto:
-<​code>​+<​code ​rsplus>
 > cax > cax
 </​code>​ </​code>​
Linha 322: Linha 322:
  
 Para visualizar apenas as primeiras linhas do dataframe (objeto de dados) use o comando __''​head''​__:​ Para visualizar apenas as primeiras linhas do dataframe (objeto de dados) use o comando __''​head''​__:​
-<​code>​+<​code ​rsplus>
 > head(cax) > head(cax)
    local parcela arvore fuste cap   ​h ​               especie    local parcela arvore fuste cap   ​h ​               especie
Linha 346: Linha 346:
    
 O arquivo {{:​publico:​tutoriais:​r-relampago:​exemplo-caixeta-2.csv|exemplo-caixeta-2.csv}} é um exemplo de arquivo CSV com ponto-e-vírgula como separação de valores. No R,  esse arquivo deverá ser lidos com o argumento __''​sep''​__ definindo o símbolo usado na separação de valores: O arquivo {{:​publico:​tutoriais:​r-relampago:​exemplo-caixeta-2.csv|exemplo-caixeta-2.csv}} é um exemplo de arquivo CSV com ponto-e-vírgula como separação de valores. No R,  esse arquivo deverá ser lidos com o argumento __''​sep''​__ definindo o símbolo usado na separação de valores:
-<​code>​+<​code ​rsplus>
 > cax2 = read.csv(file="​exemplo-caixeta-2.csv",​sep=";"​) > cax2 = read.csv(file="​exemplo-caixeta-2.csv",​sep=";"​)
 > head( cax2 ) > head( cax2 )
Linha 365: Linha 365:
  
 Se quisermos apenas uma variável (coluna) desse data frame, basta unir o nome do data frame (__''​cax''​__) ao nome da coluna desejada com o símbolo especial **"​$"​**:​ Se quisermos apenas uma variável (coluna) desse data frame, basta unir o nome do data frame (__''​cax''​__) ao nome da coluna desejada com o símbolo especial **"​$"​**:​
-<​code>​+<​code ​rsplus>
 > cax$local > cax$local
 > cax$cap > cax$cap
Linha 375: Linha 375:
  
 Novas variáveis (colunas) podem ser criadas também utilizando o símbolo "​$"​. ​ Por exemplo: Novas variáveis (colunas) podem ser criadas também utilizando o símbolo "​$"​. ​ Por exemplo:
-<​code>​+<​code ​rsplus>
 > pi                                        # constante universal PI > pi                                        # constante universal PI
 [1] 3.141593 [1] 3.141593
Linha 410: Linha 410:
  
 No R a forma mais direta de obter contagens (frequências) é através da função __''​table''​__. ​ Tomando como exemplo o dataframe __''​cax''​__,​ podemos nos perguntar quantas árvores foram observadas em cada caixetal (variável __''​local''​__):​ No R a forma mais direta de obter contagens (frequências) é através da função __''​table''​__. ​ Tomando como exemplo o dataframe __''​cax''​__,​ podemos nos perguntar quantas árvores foram observadas em cada caixetal (variável __''​local''​__):​
-<​code>​+<​code ​rsplus>
 > table(cax$local) > table(cax$local)
 </​code>​ </​code>​
  
 Também é interessante saber o número de árvores por __''​local''​__ e __''​parcela''​__:​ Também é interessante saber o número de árvores por __''​local''​__ e __''​parcela''​__:​
-<​code>​+<​code ​rsplus>
 > table(cax$local,​ cax$parcela) > table(cax$local,​ cax$parcela)
 </​code>​ </​code>​
Linha 424: Linha 424:
  
 Podemos verificar a abundância de cada espécie (__''​especie''​__) em cada caixetal (__''​local''​__):​ Podemos verificar a abundância de cada espécie (__''​especie''​__) em cada caixetal (__''​local''​__):​
-<​code>​+<​code ​rsplus>
 > table( cax$especie,​ cax$local ) > table( cax$especie,​ cax$local )
 </​code>​ </​code>​
Linha 433: Linha 433:
  
 Dados de contagem também podem ser apresentado na forma de **gráficos de barra**: Dados de contagem também podem ser apresentado na forma de **gráficos de barra**:
-<​code>​+<​code ​rsplus>
 > barplot( table(cax$local) ) > barplot( table(cax$local) )
 </​code>​ </​code>​
Linha 442: Linha 442:
  
 Formas alternativas de construir esses gráficos são: Formas alternativas de construir esses gráficos são:
-<​code>​+<​code ​rsplus>
 > barplot( table(cax$fuste) ) > barplot( table(cax$fuste) )
 > plot( table(cax$fuste) ) > plot( table(cax$fuste) )
Linha 449: Linha 449:
  
 Um gráfico de abundância das espécies presentes nos três caixetais: Um gráfico de abundância das espécies presentes nos três caixetais:
-<​code>​+<​code ​rsplus>
 > par( mar=c(5,​10,​4,​2) )                                       # Define margens do gráfico, aumentando a esquerda > par( mar=c(5,​10,​4,​2) )                                       # Define margens do gráfico, aumentando a esquerda
 > barplot(sort(table(cax$especie)),​ horiz=T, las=1, xlab="​Abundância"​) ​ # Gráfico horizontal c/ nomes horizontais > barplot(sort(table(cax$especie)),​ horiz=T, las=1, xlab="​Abundância"​) ​ # Gráfico horizontal c/ nomes horizontais
Linha 461: Linha 461:
  
 Embora seja convencional apresentar o gráfico de abundância com barras, um gráfico na forma de pontos é de construção mais simples, sendo mais informativo:​ Embora seja convencional apresentar o gráfico de abundância com barras, um gráfico na forma de pontos é de construção mais simples, sendo mais informativo:​
-<​code>​+<​code ​rsplus>
 > dotchart( sort(table(cax$especie)),​ xlab="​Abundância"​ ) > dotchart( sort(table(cax$especie)),​ xlab="​Abundância"​ )
 </​code>​ </​code>​
Linha 471: Linha 471:
  
 A função __''​summary''​__ retorna uma conjunto de estatísticas descritivas (**sumário**) de todas as variáveis de um data frame de acordo com o seu tipo: A função __''​summary''​__ retorna uma conjunto de estatísticas descritivas (**sumário**) de todas as variáveis de um data frame de acordo com o seu tipo:
-<​code>​+<​code ​rsplus>
 > summary(cax) > summary(cax)
 </​code>​ </​code>​
Linha 478: Linha 478:
  
 Mas o sumário também pode ser obtida para cada variável individualmente:​ Mas o sumário também pode ser obtida para cada variável individualmente:​
-<​code>​+<​code ​rsplus>
 > summary(cax$dap) > summary(cax$dap)
 > summary(cax$h) > summary(cax$h)
Linha 501: Linha 501:
 | Desvio abosluto mediano (//Mean Absolut Deviation//​) |  ''​mad'' ​ | | Desvio abosluto mediano (//Mean Absolut Deviation//​) |  ''​mad'' ​ |
  
-<​code>​+<​code ​rsplus>
 > mean(cax$dap) > mean(cax$dap)
 > mdap = mean(cax$dap) > mdap = mean(cax$dap)
Linha 531: Linha 531:
  
 Histogramas são gráficos tradicionais na análise exploratória de dados, pois nos apresentam um gráfico da distribuição de probabilidade da variável analisada. Histogramas são gráficos tradicionais na análise exploratória de dados, pois nos apresentam um gráfico da distribuição de probabilidade da variável analisada.
-<​code>​+<​code ​rsplus>
 > hist( cax$dap ) > hist( cax$dap )
 > hist( cax$h, col="​red"​ ) > hist( cax$h, col="​red"​ )
Linha 538: Linha 538:
  
 Uma possibilidade de gráfico que o R permite é adicionar uma curva de **densidade probabilística** ao histograma, para melhor estudar o comportamento da variável. Uma possibilidade de gráfico que o R permite é adicionar uma curva de **densidade probabilística** ao histograma, para melhor estudar o comportamento da variável.
-<​code>​+<​code ​rsplus>
 > hist( cax$dap, probability=T , col="​blue"​) > hist( cax$dap, probability=T , col="​blue"​)
 > lines( density(cax$dap) , col="​red"​) > lines( density(cax$dap) , col="​red"​)
Linha 544: Linha 544:
  
 Um **gráfico tipo texto** análogo ao histograma é o tradicional **gráfico de ramo-folha** da análise exploratória de dados: Um **gráfico tipo texto** análogo ao histograma é o tradicional **gráfico de ramo-folha** da análise exploratória de dados:
-<​code>​+<​code ​rsplus>
 > stem(cax$dap) > stem(cax$dap)
 > stem(cax$h) > stem(cax$h)
Linha 553: Linha 553:
  
 Os boxplots são gráficos de uso frequente para se estudar o comportamento das variáveis. ​ Sua construção no R é direta e simples: Os boxplots são gráficos de uso frequente para se estudar o comportamento das variáveis. ​ Sua construção no R é direta e simples:
-<​code>​+<​code ​rsplus>
 > boxplot( cax$dap ) > boxplot( cax$dap )
 > boxplot( dap ~ local, data=cax ) > boxplot( dap ~ local, data=cax )
Linha 559: Linha 559:
  
 Transformar um gráfico de análise em um gráfico de apresentação demanda o conhecimento sobre as ferramentas gráficas presentes no R: Transformar um gráfico de análise em um gráfico de apresentação demanda o conhecimento sobre as ferramentas gráficas presentes no R:
-<​code>​+<​code ​rsplus>
 > par( mar=c(5,​10,​4,​2) )                                   # Altera as margens da janela gráfica > par( mar=c(5,​10,​4,​2) )                                   # Altera as margens da janela gráfica
 > boxplot( dap ~ especie, data=cax , horizontal=T,​ las=1) ​ # Boxplot > boxplot( dap ~ especie, data=cax , horizontal=T,​ las=1) ​ # Boxplot
Linha 569: Linha 569:
  
 A função __''​plot''​__ é a função básica para construção de gráficos de dispersão para duas variáveis quantitativas:​ A função __''​plot''​__ é a função básica para construção de gráficos de dispersão para duas variáveis quantitativas:​
-<​code>​+<​code ​rsplus>
 > plot( cax$dap, cax$h ) > plot( cax$dap, cax$h )
 > scatter.smooth( cax$dap, cax$h ) > scatter.smooth( cax$dap, cax$h )
Linha 587: Linha 587:
  
 A função __''​lm''​__ (//linear model//) é a função utilizada para **construir** um modelo linear. ​ O primeiro passo é construir um modelo linear gravando-o num objeto na área de trabalho. A função __''​lm''​__ (//linear model//) é a função utilizada para **construir** um modelo linear. ​ O primeiro passo é construir um modelo linear gravando-o num objeto na área de trabalho.
-<​code>​+<​code ​rsplus>
 > hipso1 = lm( formula = h ~  dap, data=cax ) > hipso1 = lm( formula = h ~  dap, data=cax )
 > hipso1 = lm( h ~  dap, data=cax ) > hipso1 = lm( h ~  dap, data=cax )
Linha 597: Linha 597:
  
 Vejamos o objeto __''​hipso1''​__:​ Vejamos o objeto __''​hipso1''​__:​
-<​code>​+<​code ​rsplus>
 > hipso1 > hipso1
 </​code>​ </​code>​
Linha 609: Linha 609:
  
 O primeiro interesse é analisar o comportamento dos resíduos do modelo linear, para verificar se o modelo é apropriado aos dados. ​ Para isso basta utilizar a função __''​plot''​__ com o objeto __''​hipso1''​__. O primeiro interesse é analisar o comportamento dos resíduos do modelo linear, para verificar se o modelo é apropriado aos dados. ​ Para isso basta utilizar a função __''​plot''​__ com o objeto __''​hipso1''​__.
-<​code>​+<​code ​rsplus>
 > plot( hipso1 ) > plot( hipso1 )
 </​code>​ </​code>​
Linha 615: Linha 615:
  
 E para se fazer inferência sobre as estimativas dos coeficientes de regressão e sobre a qualidade do ajuste do modelo? ​  Se utiliza as funções __''​summary''​__ e __''​anova''​__:​ E para se fazer inferência sobre as estimativas dos coeficientes de regressão e sobre a qualidade do ajuste do modelo? ​  Se utiliza as funções __''​summary''​__ e __''​anova''​__:​
-<​code>​+<​code ​rsplus>
 > summary( hipso1 ) > summary( hipso1 )
 > anova( hipso1 ) > anova( hipso1 )
Linha 625: Linha 625:
  
 Podemos considerar que a relação entre DAP e altura é linear na escala logarítmica,​ assim um modelo apropriado seria: Podemos considerar que a relação entre DAP e altura é linear na escala logarítmica,​ assim um modelo apropriado seria:
-<​code>​+<​code ​rsplus>
 > hipso2 = lm( log(h) ~ log(dap) , data=cax) > hipso2 = lm( log(h) ~ log(dap) , data=cax)
 > plot(hipso2) > plot(hipso2)
Linha 632: Linha 632:
  
 Ou então podemos verificar o modelo conhecido na Mensuração Florestal como //Modelo Schumacher//:​ Ou então podemos verificar o modelo conhecido na Mensuração Florestal como //Modelo Schumacher//:​
-<​code>​+<​code ​rsplus>
 > hipso3 = lm( log(h) ~ I(1/dap) , data=cax) > hipso3 = lm( log(h) ~ I(1/dap) , data=cax)
 > plot(hipso3) > plot(hipso3)
Linha 639: Linha 639:
  
 Alguém aprecia parábolas ? Alguém aprecia parábolas ?
-<​code>​+<​code ​rsplus>
 > hipso4 = lm( h ~ dap + I(dap^2) , data=cax) > hipso4 = lm( h ~ dap + I(dap^2) , data=cax)
 > plot(hipso4) > plot(hipso4)
Linha 646: Linha 646:
  
 Como podemos visualizar todos esses modelos junto com a relação DAP - altura ? Como podemos visualizar todos esses modelos junto com a relação DAP - altura ?
-<​code>​+<​code ​rsplus>
 > scatter.smooth( cax$dap, cax$h) > scatter.smooth( cax$dap, cax$h)
 > hipso1 > hipso1
Linha 663: Linha 663:
  
 A abordagem mais apropriada é consideramos que cada caxetal talvez tenha uma relação altura-DAP diferente: A abordagem mais apropriada é consideramos que cada caxetal talvez tenha uma relação altura-DAP diferente:
-<​code>​+<​code ​rsplus>
 > hipso.plus = lm( h ~ dap * local, data=cax) > hipso.plus = lm( h ~ dap * local, data=cax)
 > plot( hipso.plus ) > plot( hipso.plus )
01_curso_atual/aularelampago.1597223092.txt.gz · Última modificação: 2020/08/12 06:04 por 127.0.0.1