Parcourir les lignes d’un data frame
Imaginez que vous vous intéressiez aux jours où le cours de l’action Apple dépasse 117. S’il dépasse cette valeur, vous voulez afficher la date du jour et le cours associé. Si vous disposez d’un data frame stock avec une colonne date et une colonne de prix apple, pourriez-vous parcourir les lignes du data frame pour y parvenir ? Bien sûr !
Avant de le faire, notez que vous pouvez obtenir le nombre de lignes de votre data frame avec nrow(stock). Ensuite, vous pouvez créer une séquence à parcourir avec 1:nrow(stock).
for (row in 1:nrow(stock)) {
price <- stock[row, "apple"]
date <- stock[row, "date"]
if(price > 117) {
print(paste("On", date,
"the stock price was", price))
}
}
[1] "On 2016-12-21 the stock price was 117.06"
[1] "On 2016-12-27 the stock price was 117.26"
Cela met en œuvre plusieurs notions vues jusqu’ici : instructions if, extraction de sous-ensembles, conditions et boucles ! Félicitations pour tout ce que vous avez appris !
Le data frame stocks est à votre disposition.
Cet exercice fait partie du cours
R intermédiaire pour la finance
Instructions
- Complétez les blancs dans la boucle for pour que les conditions suivantes soient respectées :
pricedoit contenir le prix de l’itération en coursdatedoit contenir la date de l’itération en cours- Cette fois, vous voulez savoir si
appledépasse116. - Si c’est le cas, affichez la
dateet leprice. - S’il est inférieur à
116, affichez ladateet indiquez que ce n’était pas une journée importante !
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Loop over stock rows
for (row in 1:___) {
price <- stock[___, "___"]
date <- stock[___, "___"]
if(___ > ___) {
print(paste("On", ___,
"the stock price was", ___))
} else {
print(paste("The date:", ___,
"is not an important day!"))
}
}