###はじめに
バイトでposデータの解析をしなきゃいけなくなり、何も知らなかったので色々あさって、Rで使ったものをメモしたものです。
データサイエンス入門を読んでバイトで使ったものです。
####- csvファイル読み込み
read.csv(AA,.header=T,stringsASFactors=F)
2つのデータをくっつける
merge(A,B,by=c(“XXX”))
データAとデータBをXXX という項目の内容が同じものでたばね、くっつける
NA時の処理
AA$BB[is.na(AA$BB)] <-0
AAのBB列のデータがNAなら0を代入
列処理
AA$CC <- substr(AA$BB,1,4)
AAのBB列のデータに対して、先頭1~4文字まで抜き出し、その内容をAAのCCデータ項目に入れる
グループ化と合計値
ddply(AAA,.(B,C),summarize,YYY=sum(XXX))
データAAAの項目B、Cをグループ化してXXX項目の合計値をグループ化した後のYYYに代入
条件分岐
ifelse(AA == BB,”XX”,”YY”)
もしAA==BB(ここには条件式が入る)なら、XXを記入、そうでなければ、YY を記入する
####クロス集計関数
table(AAA[,c(“XX”,”YY”)])
AAAというデータの項目XXとYYのクロス集計を行い、画面に出力する
####n重クロス集計
dcast(AAA,XX~YY+ZZ,value.var=“CCC”,length)
AAAというデータから縦軸XX・横軸YY×ZZのクロス集計を出す、そして、その集計の中の値CCCの数をカウントする
###reshape2パッケージ
####グラフの書き方
#####ggplot2
きれいなグラフを簡単に合理的に
#####X^2検定
chisq.test(AAA,BBB)
AAAとBBBの差を出す
###回帰分析
####lm(A~. , data= ZZ[, c(“A”,”B”,”C”)])
『ZZデータの項目A,B,Cを使って回帰分析する』という、この分析で利用するデータの指定をdata=で明記
その前の部分で回帰モデルにするかを明記
[A ~.]は『A=B+Cというモデルで回帰して下さい』という命令で、『~』は「=」で、『.』は「dataで明記した利用データの内、A以外のものを+でつなぐ」という省略記号
####summary(A)
lm関数の結果解釈用関数
1 残差の分析
2 係数の推定値についてのサマリ
3 決定係数とその自由度調整値
この三つからわかること
#####Residuals
残差(予想値と実績値の差)の分布を四分位数で表して、変な偏りがあるか否かの判断材料になる
#####Coefficients
推定された切片と傾きに関するサマリです。各行は推定値、標準誤差、t値、p値の順に並んでいる。その傾きがどのくらいバラつくのか、統計的な有意性があるか否かがわかる
#####Multiple R-sqwuared,Adjusted R-sequared
決定係数とその自由度調整値です。決定係数が、1に近いほど、このモデルの当てはまりが良いことを示す。
###データ整理
####unique(AA[,c(“XX”,”YY”,”ZZ”)]
AAのデータから項目XX,YY,ZZが唯一となるデータ行を残す。
XXが異なりYYとZZが同じ値のときは両方のデータが残る
XX、YY、ZZ全てが同じ値のときは重複とみなされて、削除されて、一つだけが残る
####unique(AA[AA$XX==“xxx”, c(“X”,”Y”,”Z”)])
AAデータ項目XXはxxxというものだけを抽出
X,Y,Zの項目列で、重複がないように加工
###名前付け
####name(AAA)[-1] <- paste0(“X”,1:31,”day”)
AAAの一行目を除いた行に名前をつける
paste0より空白なくつける
Xに1〜31を順にふった名前をつける。
###ロジスティック回帰分析
####glm関数
オプションfamilyにbinomialを入力
####step関数
説明変数の<増やす・減らす>を自動で検索して選定してくれる
####fitted関数
予測値を得る
####order関数
並び替えて表示
##最後に
メモを張り付けただけなので間違えがあるかもしれませんが申し訳ありません