Como combinar declarações lógicas em r

Video: Concurso INSS - Dica de Inferência Lógica - Prof. Josimar Padilha

A vida seria chata em R se você não poderia combinar declarações lógicas. Se você quiser testar se um número está dentro de um determinado intervalo, por exemplo, que pretende verificar se é maior do que o menor valor e menos do que o valor top.

Para ilustrar, vamos supor que você tem dois vetores contendo o número de cestas que Granny e seu amigo Geraldine marcados nos seis jogos desta temporada de basquete:

gt; baskets.of.Granny lt; - c (12,4,4,6,9,3) gt; baskets.of.Geraldine lt; - c (5,3,2,2,12,9)

Talvez você quer saber os jogos em que Granny marcou o menor número ou o maior número de cestas. Para o efeito, R tem um conjunto de operadores lógicos que - você adivinhou - estão bem vetorizado.

Para ilustrar, usando o conhecimento que você tem agora, tentar descobrir os jogos em que Granny marcou as cestas menor número e os jogos em que marcou o maior número de cestas:

  1. Criar dois vetores lógicos, como segue:

    gt; min.baskets lt; - == baskets.of.Granny min (baskets.of.Granny) gt; max.baskets lt; - == baskets.of.Granny max (baskets.of.Granny)


    min.baskets informa se o valor é igual ao mínimo, e max.baskets informa se o valor é igual ao máximo.

  2. Combinar os dois vetores com a OU operador (|), do seguinte modo:

gt; min.baskets | max.baskets [1] VERDADEIRO FALSO FALSO FALSO FALSO VERDADEIRO

Este método realmente não é a forma mais eficiente de encontrar esses valores. Este exemplo mostra claramente como vetorização trabalha para operadores lógicos.

Video: Desafio de lógica com criptografia

o NÃO operador (!) É outro exemplo do grande poder de vectorização. o N / D valores do vetor X ter causado alguns problemas já, então você provavelmente gostaria de se livrar deles. Você sabe que você tem que verificar se um valor está em falta utilizando o is.na () função.

Mas você precisa os valores que são não valores em falta, de modo inverter o vector lógico precedendo-o com o ! operador. Para soltar os valores em falta no vector X, por exemplo, use o seguinte código:

Video: Eletrônica Digital Aula 31 - Resolução de Exercicios: Expressão Lógica e Tabela Verdade

gt; X [! is.na (x)] [1] 3 6 2 1

Quando você estiver usando R, não há maneira de contornar vetorização. Depois de entender como vetorização funciona, no entanto, você vai economizar tempo de cálculo considerável e linhas de código.


Publicações relacionadas