始める無料で始める

ベクトル化された演算

関係演算子の考え方は、任意の長さのベクトルにも拡張できます。2つのベクトルを > で比較すると、同じ長さの論理ベクトルが返り、1つ目が2つ目より大きい位置では TRUE、それ以外は FALSE になります。

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

ベクトルと単一の数値の比較も可能です。R は数値をベクトルと同じ長さになるようにリサイクルします。

apple > 120
[1] FALSE  TRUE FALSE  TRUE

これが株式分析の売買シグナルとしてどう使えるか、想像できますね。データフレーム stocks が用意されています。

この演習はコースの一部です

金融のための中級R

コースを見る

演習の手順

  • stocks を出力してください。
  • ibm175 を下回ったら買いたいとします。$ibm 列を選び、これが起きるタイミングを論理演算子で判定してください。結果を ibm_buy 列として stocks に追加します。
  • panera213 を上回ったら売ります。これが起きるタイミングを論理演算子で判定してください。結果を panera_sell 列として stocks に追加します。
  • ibmpanera を上回ることはありますか? 結果を ibm_vs_panera 列として stocks に追加します。
  • stocks を出力してください。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Print stocks
___

# IBM range
___$___ <- 

# Panera range
___$___ <- 

# IBM vs Panera
___$___ <- 

# Print stocks
___
コードを編集して実行