Rで解析:繰り返しと条件判断のコマンド

Rの解析に役に立つ記事

Rの操作はコマンドを組み合わせて、データを処理し結果を出力します。そして、多くの実務ではデータ内に項目が1つであることは少なく複数項目があり、項目ごとに何らかの処理を繰り返し結果を出力します。そこで繰り返しと条件判断のコマンドを紹介します。

スポンサーリンク
スポンサーリンク

繰り返しのコマンド:for ( 要素 in 処理回数 ) {処理}

コマンド for は要素(多くは英字でiやm等と1文字で設定)に対して処理回数分を繰り返しカッコ内の処理をします。例として1から7までの数列にそれぞれ3を足して出力するコードを紹介します。

data <- c(1, 2, 3, 4, 5, 6, 7)

for (i in seq(data)) {
   cat(i + 3, "\n")
}

#結果
4
5
6
7
8
9
10

なお、inの後ろをseq(data)で繰り返し範囲を取得しています。1:7でもいいのですが、数字で範囲を指定するよりも処理するデータの長さで指定すると間違いが減ります。


条件判断のコマンド:if (条件) {処理1} else {処理2}

コマンド if else は条件が満たされていれば処理1を実行し、満たされていなければ処理2を実行します。例として1から7までの数列で偶数のみ3を足して出力するコードを紹介します。

data <- c(1, 2, 3, 4, 5, 6, 7)

for(i in seq(data)){
  
  if (i%%2 == 0){
    
    cat(i + 3, "\n")
    
  }else{
    
    #奇数なら処理しない。空白
    
  } #ifのカッコ
  
} #forのカッコ

#結果
5
7
9

また、単純にifelse(条件, 処理1, 処理2)としても処理できます。しかし、結果にNAが含まれるので処理に工夫が必要です。

ifelse(data%%2 == 0, data + 3, NA)

#結果
[1] NA 5 NA 7 NA 9 NA

少しでも、あなたのウェブ解析が楽になりますように!!
もし、不明点がありましたらこちらからお問い合わせください。

タイトルとURLをコピーしました