CommencezCommencez 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, 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

Voir le cours

Instructions de l’exercice

  • Affichez stocks.
  • Vous voulez 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 le résultat à stocks sous forme de colonne ibm_buy.
  • Si panera passe au-dessus de 213, vendez. Utilisez un opérateur logique pour savoir quand cela se produit. Ajoutez le résultat à stocks sous forme de colonne panera_sell.
  • Est-ce que ibm est déjà au-dessus de panera ? Ajoutez le résultat à stocks sous forme de colonne ibm_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
___
Modifier et exécuter le code