ÎncepețiÎncepe gratuit

Iterează prin rândurile unui data frame

Imaginează-ți că ești interesat de zilele în care prețul acțiunilor Apple depășește 117. Dacă prețul trece de această valoare, vrei să afișezi data curentă și prețul acțiunii. Dacă ai un data frame stock cu coloanele date și apple, ai putea parcurge rândurile data frame-ului pentru a realiza acest lucru? Bineînțeles că poți!

Înainte de asta, reține că poți obține numărul de rânduri din data frame folosind nrow(stock). Apoi, poți crea o secvență pentru a itera de la 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"

Acest exemplu combină mai multe lucruri pe care le-ai învățat până acum: instrucțiuni if, extragerea elementelor din vectori, condiții și bucle! Felicitări pentru tot ce ai acumulat!

Data frame-ul stocks este disponibil pentru a fi folosit.

Acest exercițiu face parte din cursul

R intermediar pentru finanțe

Vezi cursul

Instrucțiuni pentru exercițiu

  • Completează spațiile libere din bucla for pentru ca următoarele condiții să fie îndeplinite:
    • price trebuie să rețină prețul din iterația curentă
    • date trebuie să rețină data din iterația curentă
    • De această dată, vrei să știi dacă apple depășește 116.
    • Dacă da, afișează date și price.
    • Dacă prețul a fost sub 116, afișează date și un mesaj care să indice că nu a fost o zi importantă!

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# 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!"))
    }
}
Editează și rulează codul