*R [#v371104c]
フリーの統計解析ソフト。普通にこの手のソフトを買うと10万円とかとられるので懐にやさしい([[stata価格>https://www.lightstone.co.jp/stata/pricelist.html]], [[EViews価格>https://www.lightstone.co.jp/eviews/prices_aca.html]])。かなり高機能。
**ダウンロード [#wa12af2f]
以下の[[CRAN>http://cran.r-project.org/]](The Comprehensive R Archive Network)ミラーのうち、お好きなところで。
-山形大学 https://ftp.yz.yamagata-u.ac.jp/pub/cran/
-会津大学 ftp://ftp.u-aizu.ac.jp/pub/lang/R/CRAN
-統計数理研究所 https://cran.ism.ac.jp/
**インストール・使い方 [#k26f922c]
以下を参照。「R-x.x.x-win.exe」のような名前のファイル(Windowsの場合)をダウンロードして実行するだけ。
-R-Tips http://cse.naro.affrc.go.jp/takezawa/r-tips/r.html
-RjpWiki http://www.okada.jp.org/RWiki/?RjpWiki
まず、デスクトップ用のアイコンを右クリック-プロパティで起動オプションを設定しておこう。「リンク先」の最後に「 --no-save」を追加すると、最後の保存確認が省略される。「作業フォルダー」はデータやスクリプトを置く場所になるので、適当に設定しておこう。
次に、メニューの 編集-GUIプリファレンス からFONTをMS Gothicに変更してSave...を押すと、Rconsoleというファイルが保存される。これをテキストエディターで編集して
MDIsize = 800*600+100+50
のような行を追加する。これで起動時のウィンドウサイズ・位置を調整できる(「800*600」がサイズ、「+100+50」がウィンドウの左上の位置)。
追加パッケージのダウンロード先(CRANミラー)の設定はC:\Program Files\R\R-x.x.x\etc(例)にある「Rprofile.site」に
local({r <- getOption("repos")
r["CRAN"] <- "https://cran.ism.ac.jp/"
options(repos=r)})
と追記しておく(統計数理研究所にアクセスする場合)。
-参考
http://www.agr.nagoya-u.ac.jp/~seitai/document/R2009/Rsettings.pdf
また、RコマンダーというGUI環境が用意されているので、使いたい場合は
install.packages("Rcmdr")
library(Rcmdr)
のように入力(インストールは初めてのときのみ)するとRコマンダーが起動する。最初の起動には分析に必要なパッケージを沢山ダウンロード&インストールするので、多少時間がかかる。Rコマンダーについては
-〔GUI 版R〕R Commander の説明書
http://cwoweb2.bai.ne.jp/~jgb11101/files/R-commander.pdf
-Rcmdrの機能 http://www.okada.jp.org/RWiki/?Rcmdr%A4%CE%B5%A1%C7%BD
を参照。
**オンライン・ドキュメント(PDF) [#cd7e9049]
-R-intro.の日本語訳
http://phi.med.gunma-u.ac.jp/swtips/R-jp-docs/R-intro-170.jp.pdf
-統計分析ソフトウェアRの使用法
http://www.otaru-uc.ac.jp/~nisiyama/Documents/rmanual.pdf
-Rによる統計解析の基礎(同名の書籍の草稿)
http://phi.med.gunma-u.ac.jp/statlib/stat.pdf
-Rによる保健医療データ解析演習
http://phi.med.gunma-u.ac.jp/msb/medstatbook.pdf
-Rノート:データ解析とグラフィックスのためのプログラミング環境
http://www.geocities.co.jp/HiTeens/5433/R/Rfiles/R-jp.pdf
-心理学データ解析のための統計ソフト R のミニミニマニュアル
http://www1.gifu-u.ac.jp/~s_oga/Rmanual.pdf
-Econometrics in R
http://cran.r-project.org/doc/contrib/Farnsworth-EconometricsInR.pdf
-R、R言語、R環境・・・・・・
http://www1.doshisha.ac.jp/~mjin/R/
-RjpWiki アーカイブス
http://www.okada.jp.org/RWiki/?RjpWiki%20%A5%A2%A1%BC%A5%AB%A5%A4%A5%D6%A5%B9
-maselab-R-
http://www.is.titech.ac.jp/is-wiki/?maselab%2FR#teefddcd
-R for Stata Users
http://uqu.edu.sa/files2/tiny_mce/plugins/filemanager/files/4281670/aakpro/algebra/alg1/alg2/alg3/alg4/R%20for%20Stata%20Users.pdf
他にもぐぐるといっぱい出てくる。CRANには他にもマニュアル等が
-http://cran.r-project.org/manuals.html
-http://cran.r-project.org/other-docs.html
あたりに置いてある。英語が多いが、日本語・中国語などのもあり。本については
-R本リスト
http://www.okadajp.org/RWiki/?R%E6%9C%AC%E3%83%AA%E3%82%B9%E3%83%88
を参照。
**データの操作 [#be197b63]
***データの読み込み [#cb194b23]
「data.csv」というcsvファイルを「dataframe」という名前で読み込む。
dataframe <- read.csv("data.csv", stringsAsFactors = FALSE)
***データの書き出し [#p2b55854]
data.csvという名前で保存する場合、以下のようにする。
write.table(dataframe, "data.csv", sep=",", na="", quote = T, col.names = T, row.names = F, append = F)
***データの抽出 [#r46d8a1a]
column列が「hoge」となっている行を抽出。
dataframe2 <- subset(dataframe, column == "hoge")
***データフレームの指定 [#zf4ac8e8]
-「with」という関数を使うと、関数中で使うデータフレーム名を1回書くだけで済む。
with(dataframe, ・・・)
-回帰ではdataオプションをつけられる。
kaiki.kekka <- lm(y ~ x, data = dataframe)
-attach(dataframe)とdetach(dataframe)の間ではデータフレームが固定される。
***カテゴリカルデータ [#vb4afa6a]
アンケートデータでは数値自体の意味がないことが多い。
n <- ncol(origdata)
idx <- 1:n
factordata <- lapply(origdata[idx], as.factor)
***参照 [#i65096ba]
-44. データの加工と抽出 http://cse.naro.affrc.go.jp/takezawa/r-tips/r/44.html
-データフレームTips大全 http://www.okada.jp.org/RWiki/?%A5%C7%A1%BC%A5%BF%A5%D5%A5%EC%A1%BC%A5%E0Tips%C2%E7%C1%B4
-R: データ出力 http://www.is.titech.ac.jp/~mase/mase/html.jp/temp/write.table.jp.html
**欠損値の処理 [#d3431c69]
***参照 [#rb7c6cfb]
-[R] 欠損値を1つでも含む行を抽出
https://tam07pb915.wordpress.com/2017/02/18/filter-na-rows/
-欠損値(NA)を含むデータの抽出
https://github.com/YokohamaR/yokohama.r/issues/8
-すっからかん(欠損値しかない)の列を削除して完全データにしたい
http://uribo.hatenablog.com/entry/2017/05/18/070548
-RでNAを含む列を簡単に削除したい
https://qiita.com/kiyokoichi/items/3e2f030e7255a2ecdba6
-RのモダンなNA処理まとめ
https://qiita.com/five-dots/items/361a42baf1e94edf5846
-Rで欠損値の有無を判定する函数 anyNA()
https://id.fnshr.info/2014/04/14/anyna/
**空白の処理 [#a71ab7c9]
「gsub」を使う。
***参照 [#r1a05845]
-http://a-habakiri.hateblo.jp/entry/2016/12/21/212329
-http://anagumat.hateblo.jp/entry/2015/01/22/212534
**プログラミング [#ccc99822]
***演算子 [#t4fc881e]
-R-Sourse 28. 演算子 http://cse.naro.affrc.go.jp/takezawa/r-tips/r/28.html
***多重ループ [#a442b64b]
「expand.grid」や「outer」を使うといいらしい。
-参照 http://d.hatena.ne.jp/teramonagi/20110330/1301486306
**分散分析 [#af68a5be]
-http://mat.isc.chubu.ac.jp/R/tech.html
**Wilcoxson検定(Mann-Whitney検定) [#ffebedb3]
標準のwilcox.testは近似計算になるらしいので、
install.packages("exactRankTests")
library(exactRankTests)
wilcox.exact(A群,B群)
のようにすると正確な値が出る。~
これも古くなったらしく、代わりに
install.packages("coin")
library(coin)
wilcox_test(c(A群,y) ~ factor(c(rep("A群",length(A群)),rep("B群",length(B群)))), distribution="exact")
とするらしい。
-参照 http://oku.edu.mie-u.ac.jp/~okumura/stat/wmw.html
**カイ二乗検定 [#cfa3fed6]
dataframeのvar1とvar2でカイ二乗検定したい場合、まず「xtabs」で分割表(クロス表)に集計する。分割表をMtrxとすると、以下のようになる(「addmargins」で合計欄を付加して表示させている)。
Mtrx <- xtabs(~var1 + var2, data = dataframe)
addmargins(Mtrx)
カイ二乗検定は「chisq.test」で分割表(行列形式)を指定してやる(使用するのは合計のない方)。
chisq.test(Mtrx)
***参照 [#a4be2c06]
-http://sudori.info/stat/stat_contigency_table.html
-http://monge.tec.fukuoka-u.ac.jp/r_analysis/dataframe_category04.html
-http://monge.tec.fukuoka-u.ac.jp/r_analysis/data_crosstable10.html
**計量経済 [#a5f1c39e]
分析毎に必要なパッケージ類が
-CRAN Task Views
https://www.trifields.jp/r-cran-task-views-639
でまとめられているので、これをインストールすれば楽。計量経済学のためには
-CRAN Task View: Econometrics
https://www.trifields.jp/r-cran-task-view-computational-econometrics-699
を入れる。入れ方は
install.packages("ctv")
library(ctv)
install.views("Econometrics")
でおけ。
-Rでエコノメトリクス
http://www.okada.jp.org/RWiki/?R%A4%C7%A5%A8%A5%B3%A5%CE%A5%E1%A5%C8%A5%EA%A5%AF%A5%B9
-Rを使って計量経済分析
http://www.sugi-shun.com/econwiki/index.php?R%A4%F2%BB%C8%A4%C3%A4%C6%B7%D7%CE%CC%B7%D0%BA%D1%CA%AC%C0%CF
-統計パッケージR
http://hnami.or.tv/m2/index.php/%E7%B5%B1%E8%A8%88%E3%83%91%E3%83%83%E3%82%B1%E3%83%BC%E3%82%B8R
***Robustな標準誤差 [#xd9fb4af]
以下のように書く。
kaiki <- lm(y ~ x1 + x2 + x3, data = hogedata)
coeftest(kaiki, vcov=vcovHC(kaiki, type = "HC1"))
オプションのデフォルトはHC3。HC1にするとStataと同じ結果を得る(Stata13と比較)。
-参照
--http://cran.r-project.org/web/packages/sandwich/sandwich.pdf
--http://web.econ.keio.ac.jp/staff/hk/ecm2/resume/Rintro.pdf
***順序Logit [#a23040dd]
summary(kaiki)だとt値しか出力してくれないので、screenregで有意かどうかを*で出している。
library(MASS)
kaiki <- polr(y ~ x1 + x2 + x3, data = hogedata, method = "logistic")
library(texreg)
screenreg(kaiki)
-参照
--https://qiita.com/watanta/items/7568f9d1d93d1094aee6
--https://qiita.com/malimo1024/items/ef008742ba7b4f33fe80
--http://ill-identified.hatenablog.com/entry/2014/01/28/214814
***パネルデータ分析 [#i95270a0]
plmを使う。モデルはwithin, random, ht, between, pooling, fdを指定できる。ランダム効果モデルではswar(標準), amemiya, walhus, nerlove, kinlaの5つを指定できる。
library(plm)
outcome <- plm(y ~ x1 + x2, data = hoge, model = "random", random.method = "amemiya")
のように書く。
-参照
--http://cran.r-project.org/web/packages/plm/plm.pdf
--http://fukunan-blog.cocolog-nifty.com/fukunanblog/2009/06/r-bf15.html
--http://hnami.or.tv/d/index.php?%A5%D1%A5%CD%A5%EB%A5%C7%A1%BC%A5%BF%CA%AC%C0%CF
***欠損値について [#q2e63bea]
-http://d.hatena.ne.jp/syou6162/20070702/1183349437
-http://cse.naro.affrc.go.jp/takezawa/r-tips/r/18.html
***分析結果の出力 [#q3ea8355]
-http://rottenpop.wordpress.com/2010/11/19/r%E3%81%A7%E9%87%8D%E5%9B%9E%E5%B8%B0%E5%88%86%E6%9E%90%EF%BC%88%E4%BD%9C%E8%A1%A8%EF%BC%89/
-http://www.tufs.ac.jp/ts/personal/corpuskun/wiki/index.php?R%A4%CE%A5%E1%A5%E2
**ログの保存 [#k8d20e34]
ファイル - ファイルの保存 で保存できる。
**わかりやすく書くために [#x4002305]
-Google's R Style Guide の翻訳
http://www.okadajp.org/RWiki/?Google's%20R%20Style%20Guide
**ChromebookでR [#bdf45e3e]
**その他 [#r005c175]
適当なリンク。
-Rによるデータ解析
http://homepage2.nifty.com/nandemoarchive/sas_r_excel/mokuji_r.htm
-Dataninja
http://dataninja.wordpress.com/
-実践! Rで学ぶ統計解析の基礎(@IT)
++Rは統計解析のブッシュナイフだ
https://www.atmarkit.co.jp/ait/articles/1007/21/news096.html
++Rで実践する統計的検定の初歩
https://www.atmarkit.co.jp/ait/articles/1008/04/news090.html
++Rによるオープン・データの可視化(1)
https://www.atmarkit.co.jp/ait/articles/1008/20/news092.html
++Rによるオープン・データの可視化(2)
https://www.atmarkit.co.jp/ait/articles/1009/02/news119.html
++インターリュード: TwitterとR
https://www.atmarkit.co.jp/ait/articles/1009/15/news123.html
++夏の異常気象をオープン・データで確認
https://www.atmarkit.co.jp/ait/articles/1010/04/news108.html
++大相撲のアノーマリー (1)
https://www.atmarkit.co.jp/ait/articles/1012/07/news103.html
++大相撲のアノーマリー (2)
https://www.atmarkit.co.jp/ait/articles/1102/17/news098.html
-実践!WebマーケターのためのR入門
++とっつきにくいけど実はエクセル以上に賢いヤツ フリー統計解析ソフトウェア「R」を触ってみよう
http://markezine.jp/article/detail/19808
++Rで本格的に分析を始める前に「必ず」確認しておきたいこと
http://markezine.jp/article/detail/20069
++時系列データと箱ひげ図を利用して、ちゃちゃっとデータを分解し変動要因を特定しよう
http://markezine.jp/article/detail/20427
++Rのパワーアップキットを使ってイケてるグラフをサクッと作成しよう
http://markezine.jp/article/detail/20541
++ダミー変数を使って上手にデータをまとめ、グループごとの特徴を把握しよう
http://markezine.jp/article/detail/20790
-caretパッケージのdummyVarsによるダミー変数の作り方
http://estrellita.hatenablog.com/entry/2014/07/29/091448
-生産年齢人口が減るとデフレになる?
http://tacmasi.blogspot.com/2010/10/blog-post.html
世界銀行のデータを用いて人口-物価や人口-貨幣量の相関を分析。
-裏 RjpWiki
http://blog.goo.ne.jp/r-de-r
-マイクロソフトが「Microsoft R Server」を公開
http://www.atmarkit.co.jp/ait/articles/1601/08/news147.html