Rのメモ

データフレーム操作

library(dplyr)
newdataset <- select(dataset, variable1, variable2, ...) # Choose necessary variables only
  1つのデータフレーム dataset から必要な変数(variable1, 2, ..)を抜粋して newdataset を作る 
filter(newdataset, variable1 > 56) %>% select(variable2, variable 1)
  newdataset の variable 1の値(ここでは56より大きい)でフィルタし、かつ変数2, 1 だけ値を表示
  %>% はこのコマンドを逐次的に実行するという意味
  • mosaic ライブラリ
    • 欠損値を調べる際に、mosaic ライブラリの tally() 関数で is.na(variable) を検査する
library(mosaic)
tally(~ is.na(variable), data=dataset)
  • そうすると TRUE で出てきた件数が欠損値にあたる
  • 同様のことは favstat()関数でもできる
favstats(~ variable, data=dataset)
min Q1 median Q3 max mean ad n missing
  • このような項目の summary が出る。最後の missing が欠損値。普通の summary()関数では欠損値は出ないので便利だ。

変数の再集計

  • memisc ライブラリ
    • dplyr と合わせて以下のようなコードを書くと、論理演算の式をもとに、変数の数値条件ごとにラベルを付けることが可能:
> library(dplyr)
> library(memisc)
> newdataset = mutate(newdataset, new_variablename=
    cases(
       "LABEL A" = variable1==0,
       "LABEL B" = (variable1>0 & variable1<=1 & variable2<=3 & variable3==1) |
                             (variable1>0 & variable1<=2 & variable2<=4 & variable3==0),
       "LABEL C"    = ((variable1>1 | variable2>3) & variable3==1) |
                             ((variable1>2 | variable2>4) & variable3==0)))
  • variable1, 2, 3 の値の論理式の組み合わせで LABEL A, B, C を定義。このへんの式の内容は研究内容ごとに異なる。

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2020-06-07 (日) 18:26:44 (37d)