Procházení řádků datového rámce smyčkou
Představ si, že tě zajímají dny, kdy cena akcií Apple vzroste nad 117. Pokud tuto hodnotu překročí, chceš vypsat aktuální datum a cenu akcie. Máš-li datový rámec stock se sloupcem date a sloupcem s cenou apple, mohl/a bys k tomu použít smyčku přes řádky tohoto rámce? Určitě ano!
Než začneš, vezmi v úvahu, že počet řádků datového rámce získáš pomocí nrow(stock). Pak můžeš vytvořit sekvenci pro průchod smyčkou: 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"
Tenhle příklad spojuje spoustu věcí, které jsme se dosud naučili: podmínky if, podsazování vektorů, operátory porovnání a smyčky! Skvělá práce, žes to všechno zvládl/a!
K dispozici máš datový rámec stocks.
Toto cvičení je součástí kurzu
Intermediate R for Finance
Pokyny k cvičení
- Doplň mezery ve smyčce for tak, aby platilo následující:
priceby měl obsahovat cenu pro danou iteracidateby měl obsahovat datum pro danou iteraci- Tentokrát chceš zjistit, zda
applepřekročí hodnotu116. - Pokud ano, vypiš
dateaprice. - Pokud byla hodnota pod
116, vypišdatea informaci, že to nebyl důležitý den!
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# 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!"))
}
}