Kom igångKom igång gratis

Logiska vektorer och subset()

Här är ett roligt problem. Du vet hur man skapar logiska vektorer som anger när ett visst villkor är uppfyllt – men kan du filtrera en dataram så att den bara innehåller rader där villkoret stämmer?

Om du gick kursen Introduktion till R för finans kanske du minns funktionen subset(). Den tar en dataram (eller vektor/matris) och en logisk vektor som argument och returnerar de rader du anger:

stocks
        date    ibm panera
1 2017-01-20 170.55 216.65
2 2017-01-23 171.03 216.06
3 2017-01-24 175.90 213.55
4 2017-01-25 178.29 212.22

subset(stocks, ibm < 175)
        date    ibm panera
1 2017-01-20 170.55 216.65
2 2017-01-23 171.03 216.06

Smidigt, eller hur? Dataramen stocks finns tillgänglig för dig att använda.

Den här övningen är en del av kursen

R för finans – fortsättningskurs

Visa kurs

Övningsinstruktioner

  • Filtrera stocks så att endast rader där panera är större än 216 inkluderas.
  • Filtrera stocks för att hämta raden där date är lika med "2017-01-23". Glöm inte as.Date()!
  • Filtrera stocks för att hämta rader där ibm är mindre än 175 och panera är mindre än 216.50.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# Panera range
___

# Specific date
___

# IBM and Panera joint range
___
Redigera och kör kod