Ferramentas do usuário

Ferramentas do site


03_apostila:04-dados

Diferenças

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

Link para esta página de comparações

Ambos lados da revisão anterior Revisão anterior
Próxima revisão
Revisão anterior
03_apostila:04-dados [2020/08/20 16:11]
adalardo
03_apostila:04-dados [2023/08/15 18:33] (atual)
Linha 14: Linha 14:
  
 === Função ''​c()''​ (concatenate ou combine) === === Função ''​c()''​ (concatenate ou combine) ===
-As funções de criação de vetores já foram detalhadas na [[03-funcoes#​criando_vetores|seção anterior]]. Basta lembrar aqui que todas elas são usadas para entrar diretamente dados em vetores no R:+As funções de criação de vetores já foram detalhadas na seção ​[[03-funcoes#​o_r_como_uma_calculadora_vetorial|Funções Matemáticas e Estatísticas]] desta apostila. Basta lembrar aqui que todas elas são usadas para entrar diretamente dados em vetores no R:
  
 <code rsplus> <code rsplus>
 > meu.vetor <- c(10.5,​11.3,​12.4,​5.7) > meu.vetor <- c(10.5,​11.3,​12.4,​5.7)
 > meu.vetor > meu.vetor
-[1] 10.5 11.3 12.4  5.7+[1] 10.5 11.3 12.4 5.7
 > >
 > vetor.vazio <- c() > vetor.vazio <- c()
Linha 71: Linha 71:
 [4,] "​fogo" ​ "​terra" ​ "​água" ​  "​ar"​ [4,] "​fogo" ​ "​terra" ​ "​água" ​  "​ar"​
 </​code>​ </​code>​
 +
 === Função ''​data.frame()''​ === === Função ''​data.frame()''​ ===
 Com a função ''​data.frame''​ reunimos vetores de mesmo comprimento em um só objeto: Com a função ''​data.frame''​ reunimos vetores de mesmo comprimento em um só objeto:
Linha 89: Linha 90:
 </​code>​ </​code>​
  
-=== Funçao ​''​edit()''​===+=== Função ​''​edit()''​===
 Esta função abre uma interface simples de edição de dados em formato planilha, e é útil para pequenas modificações. Mas para salvar as modificações atribua o resultado da função ''​edit''​ a um objeto: Esta função abre uma interface simples de edição de dados em formato planilha, e é útil para pequenas modificações. Mas para salvar as modificações atribua o resultado da função ''​edit''​ a um objeto:
 <code rsplus> <code rsplus>
Linha 104: Linha 105:
 ==== Dados que já Estão em Arquivos==== ==== Dados que já Estão em Arquivos====
 === Leitura e Exportação de Arquivos-Texto:​ ''​read.table()''​ e ''​write.table()''​ === === Leitura e Exportação de Arquivos-Texto:​ ''​read.table()''​ e ''​write.table()''​ ===
-Para conjuntos de dados grandes, é mais prático gerar um arquivo de texto (ASCII) a partir ​uma planilha ou banco de dados, e usar a função ''​read.table''​ para ler os dados para um objeto no R.+Para conjuntos de dados grandes, é mais prático gerar um arquivo de texto (ASCII) a partir ​de uma planilha ou banco de dados, e usar a função ''​read.table''​ para ler os dados para um objeto no R.
  
 Para criar um objeto com os dados do arquivo {{:​dados:​gbmam93.csv.pdf|gbmam93.csv (apagar extensão .pdf)}}, por exemplo, digitamos: Para criar um objeto com os dados do arquivo {{:​dados:​gbmam93.csv.pdf|gbmam93.csv (apagar extensão .pdf)}}, por exemplo, digitamos:
 <code rsplus> <code rsplus>
-> gbmam93 <- read.table(file="​gbmam93.txt",​header=T,​row.names=1,​sep=","​)+> gbmam93 <- read.table(file="​gbmam93.csv",​header=T,​row.names=1,​sep=","​)
 > gbmam93 > gbmam93
    a b c d e f g h i j k l m n o p q r s    a b c d e f g h i j k l m n o p q r s
Linha 153: Linha 154:
  
 <code rsplus> <code rsplus>
-lynx                ​package:​datasets ​               R Documentation+lynx {datasets}                                                ​R Documentation
  
 Annual Canadian Lynx trappings 1821-1934 Annual Canadian Lynx trappings 1821-1934
Linha 169: Linha 170:
 Source: Source:
  
-     ​Brockwell,​ P. J. and Davis, R. A. (1991) ​_Time Series and +     ​Brockwell,​ P. J. and Davis, R. A. (1991) ​Time Series and 
-     ​Forecasting Methods. ​Second edition. Springer. Series G (page+     ​Forecasting Methods. ​ Second edition. Springer. Series G (page
      557).      557).
  
 References: References:
  
-     ​Becker,​ R. A., Chambers, J. M. and Wilks, A. R. (1988) ​_The New S +     ​Becker,​ R. A., Chambers, J. M. and Wilks, A. R. (1988) ​The New S 
-     Language_. Wadsworth & Brooks/​Cole.+     Language. Wadsworth & Brooks/​Cole.
  
      ​Campbell,​ M. J.and A. M.  Walker (1977). ​ A Survey of statistical      ​Campbell,​ M. J.and A. M.  Walker (1977). ​ A Survey of statistical
      work on the Mackenzie River series of annual Canadian lynx      work on the Mackenzie River series of annual Canadian lynx
-     ​trappings for the years  1821-1934 and a new analysis. ​_Journal ​of +     ​trappings for the years  1821-1934 and a 'new' ​analysis. ​Journal ​of 
-     the Royal Statistical Society series ​A_*140*, 411-431.+     the Royal Statistical Society series ​A, 140, 411-431.
 </​code>​ </​code>​
  
Linha 212: Linha 213:
 No segundo caso, o pacote //vegan//, que tem o conjunto de dados, não está carregado e por isso deve ser indicado no argumento ''​package''​. No segundo caso, o pacote //vegan//, que tem o conjunto de dados, não está carregado e por isso deve ser indicado no argumento ''​package''​.
  
-=== Importacao ​de Pacotes Estatísticos ===+=== Importação ​de Arquivos de Outros ​Pacotes Estatísticos ===
 O pacote //foreign// contém funções para importar e exportar diretamente arquivos de pacotes estatísticos. ​ O pacote //foreign// contém funções para importar e exportar diretamente arquivos de pacotes estatísticos. ​
  
Linha 249: Linha 250:
   * Atenas a Estocolmo: 3927   * Atenas a Estocolmo: 3927
   * Madri a Paris: 1273   * Madri a Paris: 1273
-  * Madri a Estocolomo: 3188+  * Madri a Estocolmo: 3188
   * Paris a Estocolmo: 1827   * Paris a Estocolmo: 1827
  
Linha 291: Linha 292:
 Vetores, matrizes e listas são objetos com características diferentes, formalmente definidas no R como //​atributos//​. Em uma linguagem orientada a objetos, são esses atributos que definem o contexto para a execução de um comando e, portanto, seu resultado. Fazendo uma analogia com o mundo físico, uma mesma ação tem resultados diferentes de acordo com as características do objeto em que é aplicada. ​ Vetores, matrizes e listas são objetos com características diferentes, formalmente definidas no R como //​atributos//​. Em uma linguagem orientada a objetos, são esses atributos que definem o contexto para a execução de um comando e, portanto, seu resultado. Fazendo uma analogia com o mundo físico, uma mesma ação tem resultados diferentes de acordo com as características do objeto em que é aplicada. ​
  
-O que é importante reter aqui é que os resultados que obtemos de um comando no R (incluindo as mensagens de erro!) são em boa parte definidas pelo objeto de dados, e não pela função. Por isso, quando enfrentar algum problema, verifique com cuidado na documentação se e como o seu comando se aplica à classe de objeto de dados que você está usando.((em termos técnicos: verifique se e como a função usada define um método para o objeto de dados usado)) ​+O que é importante reter aqui é que os resultados que obtemos de um comando no R (incluindo as mensagens de erro!) são em boa parte definidas pelo objeto de dados, e não apenas ​pela função. Por isso, quando enfrentar algum problema, verifique com cuidado na documentação se o seu comando se aplica à classe de objeto de dados que você está usando ​e, se sim, como.((em termos técnicos: verifique se e como a função usada define um método para o objeto de dados usado)) ​
  
 ==== Atributos de um Objeto de Dados ==== ==== Atributos de um Objeto de Dados ====
  
-Todo objeto no R tem dois atributos básicos, que são o tipo de dado que contém((em termos técnicos, trata-se do modo de armazenamento,​ e.g., apenas números, apenas caracteres, ou uma mistura, que é uma lista)) e o número de elementos que contêm. As funções ''​mode''​ e ''​length''​ retornam esses atributos:+Todo objeto no R tem dois atributos básicos, que são o tipo de dado((em termos técnicos, trata-se do modo de armazenamento,​ e.g., apenas números, apenas caracteres, ou uma mistura, que é uma lista)) e o número de elementos que contêm. As funções ''​mode''​ e ''​length''​ retornam esses atributos:
 <code rsplus> <code rsplus>
 > pares > pares
Linha 389: Linha 390:
 Em muitos casos, indicar que um vetor é um fator é importante para a análise, e várias funções no R exigem variáveis dessa classe, ou têm respostas específicas para ela ((em termos técnicos, dizemos que há métodos para cada classe de objeto, e que algumas funções têm métodos específicos para fatores, ou só têm para essa classe. Veja a seção sobre programação para detalhes)). Em muitos casos, indicar que um vetor é um fator é importante para a análise, e várias funções no R exigem variáveis dessa classe, ou têm respostas específicas para ela ((em termos técnicos, dizemos que há métodos para cada classe de objeto, e que algumas funções têm métodos específicos para fatores, ou só têm para essa classe. Veja a seção sobre programação para detalhes)).
  
-Note que fatores têm um atributo que especifica ​seu níveis ou categorias (''​levels''​) , que seguem ordem alfanumérica crescente, por //​default//​. Como essa ordem é importante para muitas análises, pode-se alterá-la com o argumento ''​levels'',​ por exemplo para colocar o controle antes dos tratamentos:​+Note que fatores têm um atributo que especifica ​seus níveis ou categorias (''​levels''​) , que seguem ordem alfanumérica crescente, por //​default//​. Como essa ordem é importante para muitas análises, pode-se alterá-la com o argumento ''​levels'',​ por exemplo para colocar o controle antes dos tratamentos:​
 <code rsplus> <code rsplus>
 > tratamentos <- factor(rep(c("​Controle","​Adubo A","​Adubo B"​),​each=4)) > tratamentos <- factor(rep(c("​Controle","​Adubo A","​Adubo B"​),​each=4))
Linha 427: Linha 428:
 <box center 50% red| **Duas Coisa que Você Precisa Saber sobre Fatores**>​ <box center 50% red| **Duas Coisa que Você Precisa Saber sobre Fatores**>​
   * Um fator pode ter níveis para os quais não há valores. Isso pode acontecer quando alguns valores são selecionados ou excluídos (ver item sobre [[04-dados#​Subconjuntos e Indexação|indexação]],​ nessa seção). Isso é muito importante, pois afeta o resultado de muitas funções (Veja os exemplos da função ''​tapply'',​ a seguir e também no item sobre [[04-dados#​Indexação de Fatores|indexação de fatores]]).  ​   * Um fator pode ter níveis para os quais não há valores. Isso pode acontecer quando alguns valores são selecionados ou excluídos (ver item sobre [[04-dados#​Subconjuntos e Indexação|indexação]],​ nessa seção). Isso é muito importante, pois afeta o resultado de muitas funções (Veja os exemplos da função ''​tapply'',​ a seguir e também no item sobre [[04-dados#​Indexação de Fatores|indexação de fatores]]).  ​
-  * Ao importar um arquivo texto, a função ''​read.table'' ​transforma por //​default// ​em fatores todas as variáveis que tenham ​caracteres. ​Você pode indicar quais dessas variáveis ​não são fatores ​com o argumento ''​as.is''​.+  * Em versões mais antigas do R, a função ''​read.table'' ​transformava ​em fatores todas as variáveis que tivessem ​caracteres ​por //default//Em versões mais recentes, esse não é mais o padrão. Mas você pode decidir como você quer lidar com os caracteres durante a leitura usando ​o argumento ''​as.is''​.
        
 </​box> ​ </​box> ​
Linha 627: Linha 628:
 A função ''​aggregate''​ gera subconjuntos de cada um dos vetores de um //data frame//, executa uma função para cada um desses subconjuntos,​ e retorna um novo //data frame// com os resultados. ​ A função ''​aggregate''​ gera subconjuntos de cada um dos vetores de um //data frame//, executa uma função para cada um desses subconjuntos,​ e retorna um novo //data frame// com os resultados. ​
  
-Como seu resultado é sempre um //data frame//, a função ''​aggregate''​ é mais adequada que ''​tapply''​ para fazer estatíticas ​de muitos casos por uma ou muitas combinações de critérios:+Como seu resultado é sempre um //data frame//, a função ''​aggregate''​ é mais adequada que ''​tapply''​ para fazer estatísticas ​de muitos casos por uma ou muitas combinações de critérios:
 <code rsplus> <code rsplus>
 > carros.marcas > carros.marcas
Linha 665: Linha 666:
 </​code>​ </​code>​
  
-Os argumentos básicos da função são o //​data.frame// ​com os valores (''​x''​),​ o(s) fator(es) que definem os subconjuntos ​(''​by'',​ que deve ser uma lista), e a função a calcular de cada vetor do //data frame// ​(''​FUN''​). ​+Os argumentos básicos da função são o objeto ​com os valores (''​x''​),​ o(s) fator(es) que definem os subgrupos ​(''​by'',​ que deve ser uma lista), e a função a ser aplicada a cada vetor em ''​x'' ​(''​FUN''​). ​
  
  
Linha 686: Linha 687:
 [3,]    3    3    3    3 [3,]    3    3    3    3
 </​code>​ </​code>​
-Os índices entre colchetes são a referência do par [linha,​coluna]((a notação [,1] significa "todas as linhas da coluna 1", mais detalhes no ítem sobre indexação,​ mais abaixo)). Esses índices são exibidos quando as dimensões não têm nomes, que são controlados pelas funções ''​rownames''​ e ''​colnames'':​+Os índices entre colchetes são a referência do par [linha,​coluna]((a notação [,1] significa "todas as linhas da coluna 1", mais detalhes no item sobre indexação,​ mais abaixo)). Esses índices são exibidos quando as dimensões não têm nomes, que são controlados pelas funções ''​rownames''​ e ''​colnames'':​
  
 <code rsplus> <code rsplus>
Linha 827: Linha 828:
   - Quais são as classes desses dois objetos?   - Quais são as classes desses dois objetos?
   - Calcule a média de cada uma das quatro medidas por espécie, dos dois objetos.   - Calcule a média de cada uma das quatro medidas por espécie, dos dois objetos.
-  - Os nomes das variaveis ​estão em inglês. Mude-os para português no objeto ''​iris''​. (//DICA: Como tudo mais no R, os resultados da função ''​names''​ podem ser armazenados em um objeto//)+  - Os nomes das variáveis ​estão em inglês. Mude-os para português no objeto ''​iris''​. (//DICA: Como tudo mais no R, os resultados da função ''​names''​ podem ser armazenados em um objeto//)
 </​box>​ </​box>​
  
Linha 879: Linha 880:
 </​code>​ </​code>​
  
-Os elementos da matriz são probabilidades de transição,​ num intervalo de tempo, do estágio correspondente ao número da coluna para o estágio correspondente ao número da linha. Por exemplo, a chance de um indivíduo passar do estágio 1 para o 2 é 0,33, e de permanecer em 1 é de 0,43.+Os elementos da matriz são as probabilidades de transição,​ num intervalo de tempo, do estágio correspondente ao número da coluna para o estágio correspondente ao número da linha. Por exemplo, a chance de um indivíduo passar do estágio 1 para o 2 é 0,33, e de permanecer em 1 é de 0,43.
  
   - Crie um objeto da classe matriz com esses valores. Isso permite realizar as operações matriciais a seguir.   - Crie um objeto da classe matriz com esses valores. Isso permite realizar as operações matriciais a seguir.
   - Para calcular o número de indivíduos em cada estágio após um intervalo de tempo, basta multiplicar a matriz de transição pelas abundâncias dos indivíduos em cada estágio. Começando com 50 indivíduos do estágio 1, 25 do estágio 2 e 10 no estágio 3, qual será o número de plantas em cada estágio após três intervalos?   - Para calcular o número de indivíduos em cada estágio após um intervalo de tempo, basta multiplicar a matriz de transição pelas abundâncias dos indivíduos em cada estágio. Começando com 50 indivíduos do estágio 1, 25 do estágio 2 e 10 no estágio 3, qual será o número de plantas em cada estágio após três intervalos?
-  - **Opcional**:​ A taxa de crescimento geométrico da população é o primeiro autovalor da matriz de transição,​ que pode ser calculado com a função ''​eigen''​((consulte a ajuda para interpretar o resultados dessa função)). ​ Se a taxa é maior que um a população está crescendo. É o caso dessa população?​+  - **Opcional**:​ A taxa de crescimento geométrico da população é o primeiro autovalor da matriz de transição,​ que pode ser calculado com a função ''​eigen''​((consulte a ajuda para interpretar o resultados dessa função)). Se a taxa é maior que um a população está crescendo. É o caso dessa população?​
 </​box>​ </​box>​
  
Linha 890: Linha 891:
 ===== O R como Ambiente de Operações Vetoriais ===== ===== O R como Ambiente de Operações Vetoriais =====
  
-Na verdade, o R é muito mais que uma simples calculadora. ​ O R é um **ambiente** onde podemos realizar operações vetoriais e matriciais. ​+Na verdade, o R é muito mais que uma simples calculadora. O R é um **ambiente** onde podemos realizar operações vetoriais e matriciais. ​
  
 Além das regras básicas para operações com vetores numéricos (ver [[03-funcoes#​Vetores:​ Operações Matemáticas]]),​ há operações aplicáveis a outros tipos de dados, e as importantíssimas **operações lógicas**, aplicáveis a qualquer classe. Além das regras básicas para operações com vetores numéricos (ver [[03-funcoes#​Vetores:​ Operações Matemáticas]]),​ há operações aplicáveis a outros tipos de dados, e as importantíssimas **operações lógicas**, aplicáveis a qualquer classe.
Linha 901: Linha 902:
 [1] NA [1] NA
 Warning message: Warning message:
-argument is not numeric or logical: returning NA in: mean.default(sp)+argument ​'is' ​not numeric or logical: returning NA in: mean.default(sp)
 >  ​ >  ​
 </​code>​ </​code>​
  
-Mas existem ​algumas ​operações que são próprias desse tipo de vetores:+Mas existem ​muitas ​operações que funcionam ou são próprias desse tipo de vetores:
 <code rsplus> <code rsplus>
-> sort( sp )+> sort( sp ) # ordenação de caracteres em ordem crescente
 [1] "​Myrcia sulfiflora" ​     "​Myrcia sulfiflora" ​     "​Syagrus romanzoffianus"​ [1] "​Myrcia sulfiflora" ​     "​Myrcia sulfiflora" ​     "​Syagrus romanzoffianus"​
 [4] "​Tabebuia cassinoides"​ [4] "​Tabebuia cassinoides"​
 > >
-> grep("​Myrcia",​ sp)+> grep("​Myrcia",​ sp) # busca por elementos do vetor de caracteres contendo "​Myrcia"​
 [1] 1 4 [1] 1 4
 > >
-> table( sp )+> table( sp ) # contagem do numero de elementos para cada classe de elemento ​
 sp sp
      ​Myrcia sulfiflora Syagrus romanzoffianus ​  ​Tabebuia cassinoides      ​Myrcia sulfiflora Syagrus romanzoffianus ​  ​Tabebuia cassinoides
                      ​2 ​                     1                      1                      ​2 ​                     1                      1
 +>                     
 +> sub("​Myrcia",​ "​M.",​ sp ) # substituição de caracteres
 +[1] "M. sulfiflora" ​         "​Syagrus romanzoffianus"​ "​Tabebuia cassinoides" ​  "​M. sulfiflora"​
 +>
 +> strsplit(sp,​ " ") # divisão de cada elemento do vetor por um dado caractere ou símbolo (no caso, um espaço)
 +[[1]]
 +[1] "​Myrcia" ​    "​sulfiflora"​
 +
 +[[2]]
 +[1] "​Syagrus" ​       "​romanzoffianus"​
 +
 +[[3]]
 +[1] "​Tabebuia" ​   "​cassinoides"​
 +
 +[[4]]
 +[1] "​Myrcia" ​    "​sulfiflora"​
 +>
 </​code>​ </​code>​
 +
 +Também é possível concatenar vetores de caracteres usando a função ''​paste'': ​
 +
 <code rsplus> <code rsplus>
  
Linha 934: Linha 955:
 ==== Operações Lógicas ==== ==== Operações Lógicas ====
  
-Algumas operações são válidas para qualquer tipo de vetor. ​ Essas operações envolvem comparações e são chamadas de operações lógicas:+Algumas operações são válidas para qualquer tipo de vetor. Essas operações envolvem comparações e são chamadas de operações lógicas:
 <code rsplus> <code rsplus>
 > "​Tabebuia cassinoides"​ == sp > "​Tabebuia cassinoides"​ == sp
Linha 1047: Linha 1068:
 === Uma maneira simples de quantificar frequências === === Uma maneira simples de quantificar frequências ===
  
-Os vetores lógicos ('''​logical'''​) podem participar de operações matemáticas. ​ Nesse caso o valor '''​TRUE'''​ assume o valor 1, e valor '''​FALSE'''​ assume o valor 0:+Os vetores lógicos (''​logical''​) podem participar de operações matemáticas. Nesse caso o valor ''​TRUE''​ assume o valor 1, e valor ''​FALSE''​ assume o valor 0:
 <code rsplus> <code rsplus>
 > f > f
Linha 1066: Linha 1087:
 > sum(notas.dos.alunos>​=5) > sum(notas.dos.alunos>​=5)
 [1] 14 [1] 14
-##Qual a proporção deste valores ​em relação ao total?+##Qual a proporção deste valor em relação ao total?
 > sum(notas.dos.alunos>​=5)/​length(notas.dos.alunos) > sum(notas.dos.alunos>​=5)/​length(notas.dos.alunos)
 [1] 0.7777778 [1] 0.7777778
Linha 1127: Linha 1148:
 ===== Subconjuntos e Indexação ===== ===== Subconjuntos e Indexação =====
  
-Freqüentemente ​teremos que trabalhar não com um vetor inteiro, mas com um //​subconjunto//​ dele.  Para obter subconjuntos de um vetor temos que realizar operações de **indexação**,​ isto é, associar ao vetor um outro vetor de mesmo tamanho com os **índices** ​do elementos selecionados. ​+Frequentemente ​teremos que trabalhar não com um vetor inteiro, mas com um //​subconjunto//​ dele. Para obter subconjuntos de um vetor temos que realizar operações de **indexação**,​ isto é, associar ao vetor um outro vetor de mesmo tamanho com os **índices** ​dos elementos selecionados. ​
  
-O **operador** de indexação é o colchetes ​'''​[]''',​ e um vetor pode ser indexado de três formas principais:+O **operador** de indexação é o colchetes ''​[]'',​ e um vetor pode ser indexado de três formas principais:
  
-A) **Vetor de números inteiros positivos**: ​ os números se referem às posições desejadas do vetor indexado.+A) **Vetor de números inteiros positivos**:​ os números se referem às posições desejadas do vetor indexado.
 <code rsplus> <code rsplus>
 > a > a
Linha 1146: Linha 1167:
  
  
-B) **Vetor de números inteiros negativos**:​ os números se referem ​as posições **não** desejadas do vetor indexado.+B) **Vetor de números inteiros negativos**:​ os números se referem ​às posições **não** desejadas do vetor indexado.
 <code rsplus> <code rsplus>
  a  a
Linha 1161: Linha 1182:
  
  
-C) **Vetor lógico**: os elementos do vetor lógico correspondentes a '''​TRUE'''​ são selecionados,​ os elementos correspondentes a '''​FALSE'''​ são excluídos.+C) **Vetor lógico**: os elementos do vetor lógico correspondentes a ''​TRUE''​ são selecionados,​ os elementos correspondentes a ''​FALSE''​ são excluídos.
 <code rsplus> <code rsplus>
 > b > b
Linha 1178: Linha 1199:
 </​code>​ </​code>​
  
-Na indexação por vetores lógicos, esses vetores devem ter **o mesmo comprimento** do vetor indexado. ​ Caso contrário a operação será defeituosa:+Na indexação por vetores lógicos, esses vetores devem ter **o mesmo comprimento** do vetor indexado. Caso contrário a operação será defeituosa:
 <code rsplus> <code rsplus>
 > b > b
Linha 1190: Linha 1211:
  
 As operações por vetores lógicos podem combinar vários critérios, por meio dos operadores "​E",​ "​OU"​ e "​NÃO":​ As operações por vetores lógicos podem combinar vários critérios, por meio dos operadores "​E",​ "​OU"​ e "​NÃO":​
-<code rsplus>+
 <WRAP center round box 60%> <WRAP center round box 60%>
-Por questão de segurança do wiki contra spam algumas palavras são proibidas. Nos exemplos a seguir a palavra "​estupro"​ em inglês foi substituida ​por "​Abuso",​ por esse motivo para rodar as linhas de código deve retornar a palavra para o idioma inglesa. ​+Por questão de segurança do wiki contra spam algumas palavras são proibidas. Nos exemplos a seguir a palavra "​estupro"​ em inglês foi substituída ​por "​Abuso",​ por esse motivo para rodar as linhas de código deve retornar a palavra para o idioma inglesa. ​
 </​WRAP>​ </​WRAP>​
  
  
 +<code rsplus>
 ## Primeiras 5 linhas do data frame USArrests (crimes/​1000 habitantes em cada estado dos EUA, em 1973): ## Primeiras 5 linhas do data frame USArrests (crimes/​1000 habitantes em cada estado dos EUA, em 1973):
 > USArrests[1:​5,​] > USArrests[1:​5,​]
Linha 1214: Linha 1236:
 </​code>​ </​code>​
  
-D) **Vetor caracter**: nesse caso o vetor deve ser //nomeado// (função ​'''​names'''​) por um vetor '''​character''':​+D) **Vetor caracter**: nesse caso o vetor deve ser //nomeado// (função ''​names''​) por um vetor ''​character'':​
 <code rsplus> <code rsplus>
 > zoo = c(4, 10, 2, 45) > zoo = c(4, 10, 2, 45)
 > names(zoo) = c("​onça",​ "​anta",​ "​tatu",​ "​guará"​) > names(zoo) = c("​onça",​ "​anta",​ "​tatu",​ "​guará"​)
-> zoo[ c("​anta","​guará"​) ]+> zoo[ c("​anta",​ "​guará"​) ]
  anta guará  anta guará
    ​10 ​   45    ​10 ​   45
Linha 1229: Linha 1251:
  
 ==== Indexação de Fatores ==== ==== Indexação de Fatores ====
-A indexação de um fator pode resultar em níveis não usados. Caso você queira ​exluir ​esses níveis, use o argumento ''​drop'',​ do operador ''​[]'':​+A indexação de um fator pode resultar em níveis não usados. Caso você queira ​excluir ​esses níveis, use o argumento ''​drop'',​ do operador ''​[]'':​
 <code rsplus> <code rsplus>
 > tratamentos > tratamentos
03_apostila/04-dados.1597950673.txt.gz · Última modificação: 2020/08/20 16:11 por adalardo