CommencerCommencer gratuitement

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, contenant TRUE quand 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

La comparaison d’un vecteur avec un seul nombre fonctionne aussi. R recyclera 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 data frame, stocks, est à votre disposition.

Cet exercice fait partie du cours

R intermédiaire pour la finance

Afficher le cours

Instructions

  • Affichez stocks.
  • Vous souhaitez acheter ibm lorsqu’il passe sous 175. Utilisez $ pour sélectionner la colonne ibm et un opérateur logique pour savoir quand cela se produit. Ajoutez-la à stocks sous la forme d’une colonne ibm_buy.
  • Si panera dépasse 213, vendez. Utilisez un opérateur logique pour savoir quand cela se produit. Ajoutez-la à stocks sous la forme d’une colonne panera_sell.
  • ibm est-il jamais au-dessus de panera ? Ajoutez le résultat à stocks sous la forme d’une colonne ibm_vs_panera.
  • Affichez stocks.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# Print stocks
___

# IBM range
___$___ <- 

# Panera range
___$___ <- 

# IBM vs Panera
___$___ <- 

# Print stocks
___
Modifier et exécuter le code