sono diventato incredibilmente confuso su espressioni logiche a R. Il seguente comando mi dà il risultato previsto dal 1 è uguale a 1 o uguale a 2:O espressione in R
> 1 == (1 | 2)
[1] TRUE
Ma d'altra parte io get:
3 == (3 | 4)
[1] FALSE
Se qualcuno potesse dare qualche idea di ciò che sta accadendo qui sarei molto grato!
Non si può usare 'o' con numerico .. nella prima istruzione' 1' interpunto come 'T' è possibile utilizzare'% in% 'o (3 == 3 | 3 == 4) – Batanichek
Provare questi nella console : '(3 | 4)'; '(1 | 2)'; '1 == TRUE'; '1 == (3 | 4)'; '0 == FALSE'; '3 == FALSE'; '3 == TRUE', ecc. – eipi10
Giusto per espandere ciò che @Batanichek ha detto,' TRUE' e 'FALSE' saranno interpretati come 1 e 0, rispettivamente, in un contesto numerico (ad esempio, prova' as.numeric (c (FALSE, TRUE)) 'o' sum (c (TRUE, TRUE)) '). Per operazioni logiche generali con numeri, puoi usare '% in%' (ad esempio, '3% in% c (3,4)'). – eipi10