Opérations vectorisées
Vous pouvez étendre le concept des opérateurs relationnels à des vecteurs de n'importe quelle longueur. Comparez deux vecteurs avec > pour obtenir un vecteur logique de même longueur, qui contient TRUE lorsque le premier est supérieur au second, et FALSE sinon.
apple <- c(120.00, 120.08, 119.97, 121.88)
datacamp <- c(118.5, 124.21, 125.20, 120.22)
apple > datacamp
[1] TRUE FALSE FALSE TRUE
Comparer un vecteur à un seul nombre fonctionne aussi. R va recycler le nombre pour qu'il ait la même longueur que le vecteur :
apple > 120
[1] FALSE TRUE FALSE TRUE
Imaginez comment cela pourrait servir de signal d'achat/vente dans l'analyse boursière ! Un cadre de données, stocks, est à votre disposition.
Cette activité fait partie du cours
R intermédiaire pour la finance
Instructions de l’exercice
- Affichez
stocks. - Vous voulez acheter
ibmlorsqu'il passe sous175. Utilisez$pour sélectionner la colonneibmet un opérateur logique pour savoir quand cela se produit. Ajoutez le résultat àstockssous forme de colonneibm_buy. - Si
panerapasse au-dessus de213, vendez. Utilisez un opérateur logique pour savoir quand cela se produit. Ajoutez le résultat àstockssous forme de colonnepanera_sell. - Est-ce que
ibmest déjà au-dessus depanera? Ajoutez le résultat àstockssous forme de colonneibm_vs_panera. - Affichez
stocks.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# Print stocks
___
# IBM range
___$___ <-
# Panera range
___$___ <-
# IBM vs Panera
___$___ <-
# Print stocks
___