Aan de slagGa gratis aan de slag

Gevectoriseerde bewerkingen

Je kunt het concept van relationele operatoren uitbreiden naar vectors van willekeurige lengte. Vergelijk twee vectors met > om een logische vector van dezelfde lengte terug te krijgen, met TRUE wanneer de eerste groter is dan de tweede, en FALSE anders.

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

Een vector met één getal vergelijken werkt ook. R zal het getal recyclen tot dezelfde lengte als de vector:

apple > 120
[1] FALSE  TRUE FALSE  TRUE

Bedenk hoe je dit kunt gebruiken als koop-/verkoopsignaal bij aandelenanalyse! Een data frame, stocks, is voor je beschikbaar.

Deze oefening maakt deel uit van de cursus

R voor finance voor gevorderden

Cursus bekijken

Oefeninstructies

  • Print stocks.
  • Je wilt ibm kopen wanneer het onder 175 komt. Gebruik $ om de ibm-kolom te selecteren en een logische operator om te bepalen wanneer dit gebeurt. Voeg dit toe aan stocks als de kolom ibm_buy.
  • Als panera boven 213 uitkomt, verkoop. Gebruik een logische operator om te bepalen wanneer dit gebeurt. Voeg dit toe aan stocks als de kolom panera_sell.
  • Is ibm ooit hoger dan panera? Voeg het resultaat toe aan stocks als de kolom ibm_vs_panera.
  • Print stocks.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# Print stocks
___

# IBM range
___$___ <- 

# Panera range
___$___ <- 

# IBM vs Panera
___$___ <- 

# Print stocks
___
Code bewerken en uitvoeren