"R is a language and environment for statistical computing and graphics."
 [[http://www.r-project.org/>http://www.r-project.org/]]
 
 *覚え書き [#s4e6e9ae]
 Rについての主な参考書~
 -舟尾・高浪『データ解析環境「R」』(工学社、平成17年)
 -U.リゲス(石田訳)『Rの基礎とプログラミング技法』(シュプリンガー・ジャパン、平成18年)
 -岡田監訳『Rによる医療統計学』(丸善、平成19年)
 
 
 
 **SPSSとの併用 [#wf00ba01]
 -Rで作成したデータをSPSSで使うことができる。~
 write.table(Object, file="filename.txt", sep="\t", row.names=F)~
 -SPSSのデータファイルをRで読み込むこともできる(パッケージ「foreign」が必要)。~
 read.spss("filename.sav", to.data.frame = TRUE) 
 
  同じデータで、RとSPSSの結果を比べることができる。
 状況によってRとSPSSを使い分けることができる。
 
 **LaTeXで図を表示するためにEPS形式に変換 [#e42317ac]
 -コマンドによる、PSファイルへの出力
 #setlinebreak(on)
 
 x<- 1:10
 plot(x)
 dev.copy(postscript, "1.ps",width=6.65, height=6.65, horizontal=F)
 dev.off()
 
 上記のようにすると、EPSファイルのバウンディングボックスの設定が下記のようになる。
  %%BoundingBox: 58 182 537 660
 
 **行の合併 [#z79ae384]
 ||[,1]|[,2]|[,3]|[,4]|
 |[1,]|RIGHT:1|RIGHT:4|RIGHT:7|RIGHT:10|
 |[2,]|RIGHT:2|RIGHT:5|RIGHT:8|RIGHT:11|
 |[3,]|RIGHT:3|RIGHT:6|RIGHT:9|RIGHT:12|
 
 a<-matrix(1:12,3)    3は行数の指定(nrow=3)
 b<-a[2,]+a[,3]      2行と3行の加算
 rbind(a,b) >- c      4行目の付加
 c[c(1,4),] >- d       2,3行目の削除
 rownames(d)[1] <- "a"    1行目の行ラベルの指定。(データエディタで変更してもよい。fix(d))
 
 
 ||[,1]|[,2]|[,3]|[,4]|
 |a|RIGHT:1|RIGHT:4|RIGHT:7|RIGHT:10|
 |b|RIGHT:5|RIGHT:11|RIGHT:17|RIGHT:23|
 
 
 
 
 **N人の中からn人を無作為に選ぶ [#p2bd05c4]
  floor(runif(n,min=0,max=1)*N)+1
 
 
 **比率の差の検定 [#r23c7df2]
 |278|800|
 |242|745|
 
 prop.test(c(278,242),c(800,745), correct=F, alternative="greater")
 
 **クロス表の検定(分割表における独立性の検定) [#ne66eb99]
 |24|12|RIGHT:9|
 |12|18|15|
 
 a <- matrix(c(24,12,9,12,18,15), ncol=3, byrow=T) 
 
 chisq.test(a)
 
 **単純集計結果の一括表示 [#e54517fb]
 
 > for ( i in 1:44 )  {cat("***");cat(colnames(fu06)[i]);cat("***");print(table(fu06[,i]));cat("\n")}
 
 **棒グラフの作成 [#fe2125dd]
 ||>|>|学科|
 |学年|1|2|3|
 |   1|RIGHT: 43|RIGHT: 57|RIGHT: 20|
 |   2|RIGHT:  2|RIGHT:  0|RIGHT:  3|
 |   3|RIGHT:  1|RIGHT:  0|RIGHT:  0|
 
 
 
 #単純集計(実数)
 barplot(margin.table(t1a,2),col=topo.colors(3),xlab="学科",names=c("社会","社会福祉","その他"))
 
 #単純集計(パーセント)
 barplot(100*margin.table(t1a,2)/sum(margin.table(t1a,2)),col=topo.colors(3),xlab="学科",names=c("社会","社会福祉","その他"),ylim=c(0,50))
 
 #クロス集計
 barplot(100*prop.table(t1a,2),xlab="学科",col=topo.colors(3),legend.text=rownames(t1a),xlim=c(0,5))
 
 #クロス集計(beside=T)
 barplot(100*prop.table(t1a,2),xlab="学科",col=topo.colors(3),legend.text=rownames(t1a),beside=T)
 
 #クロス集計(積み重ね)
 barplot(100*prop.table(t1a,2),col=topo.colors(3),xlab="学科",names=c("社会","社会福祉","その他"),legend.text=rownames(t1a),xlim=c(0,4))
 
 #クロス集計(beside=T)
 barplot(100*prop.table(t1a,2),col=topo.colors(3),xlab="学科",names=c("社会","社会福祉","その他"),legend.text=rownames(t1a),beside=T)
 
 
 
 
 
 
 ----
 
 *Rの関数等 [#y9916706]
 
 :<-|
 :[]|
 :()|
 :,|
 :$|
 :-|
 :!is.na|
 :abline|
 :append|
 :attach|データフレーム内の変数名だけで変数を参照することを可能にする。
 :barplot|棒グラフの作成
 :byrow|マトリックスに数値が入る順番が変わる。byrow=T
 :c|Combine Values into a Vector or List
 :cat|コンソールへの出力
 :cbind|列の結合
 :chisq.test()|カイ2乗検定
 :col=|col="red",col=topo.colors(3)
 :col.names|read.tableの引数。col.names=c("A","B","C")
 :colnames|関数
 :cor|
 :curve|
 :Control + c|
 :data|組み込みデータセットをメモリーに読み込む。
 :data.frame|d<-data.frame() 空のデータフレームの作成
 data.frame(A=a,B=b,C=c) ベクトルデータを1つのデータフレームに変換する。
 :detach|attachの反対
 :dim|行列の次元属性の設定・変更
 :dnorm|
 :edit|
 :factor|f <- factor(e,levels=1:5) 数値をファクタ(順序尺度のようなデータ)に変換する。
 :factor|f <- factor(e,levels=1:5) 数値をファクタ(順序尺度のようなデータ)に変換する。ファクタでは、levelが想定されているので、名目尺度(順序のないカテゴリ)とはいえない。
 :fisher.test|
 :fix|データフレームの編集。fix(d)
 :getwd()|作業ディレクトリ(フォルダ)の確認
 :head|head(a,n=10)
 :help|
 :hist|
 :history()|
 :is.na|
 :levels|levels(f) <- factor(c(1,1,1,2,3)[f]
 :length|
 :library|
 :list|
 :lines|
 :lm|
 :load|
 :ls()|
 :margin.table|周辺度数
 :matrix|
 :mean|
 :na.rm|
 :objects()|
 :order|
 :plot|
 :print|コンソールへの出力
 :prop.table|prop.table(mat,2)←行列matの列パーセント(比率)。頭に「100*」を付けるとパーセントになる。
 :prop.test()|比率の差の検定
 :q()|終了。q("no")とすると作業スペースを保存せず終了する。
 :qnorm|
 :range|
 :read.csv|
 :read.delim("clipboard", header=F)|Excelからのデータの貼り付け
 :read.spss("filename.sav", to.data.frame = TRUE)|
 :read.table("filename.txt", header=T, sep=",")|
 :rbind|行の結合
 :rm|
 :rowmames()|関数
 :row.names=F|write.tableの引数
 :runif|
 :R Enter|
 :sample|
 :save.image|Save R Objects
 :sd|
 :seq|
 :split|
 :sqrt|
 :subset|
 :sum|
 :summary|
 :t|
 :table()|度数分布表、クロス統計表。table(Q1),table(Q1,F1)←Q1 by F1
 :tail|最後から数えて6番目のデータから最後のデータまで表示される。
 :tapply|
 :t.test|
 :table|
 :text|
 :transform|データフレームへの列の追加。transform(x,y=a) 
 :write.table(Object, file="filename.txt", sep="\t", row.names=F)|タブ区切り。sepを省略するとスペース区切り。

トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS