*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/
-RStudio https://cran.rstudio.com


**インストール・使い方 [#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と同じ結果を得る(Stataではregでvce(robust)オプション)。

-参照
--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]
LinuxでRをインストールすればいいが、RStudioまで入れれば見た目もWindowsで動かすのと変わりない。ただし、パッケージのインストールには(コンパイル作業があるようで)Windowsより時間がかかる可能性がある。時間があるときにパッケージのインストールだけやっておくのがよさそう。

-ChromebookのLinuxにRStudio Desktopをインストールしてみた 20240208 
https://www.youtube.com/watch?v=MazQiLXnJQ8
これの通りでできる。ただし、追加パッケージで入らないのがある(tidyverseとか)ので、
-R package の devtools をubuntuにインストールした時に発生したエラー ~ had non-zero exit status を解決する。
https://qiita.com/Yuuki-Osada/items/1f50c3e865ba4ef0d37f
を参考に。
> 実は、丁寧に解決策の案を提示してくれています。~
解決策の案に従って、足りていないソフトウェアをインストールしましょう。
> これを何度か繰り返せば問題なくインストールできました。
> 以下、devtoolsのインストールエラーを解決するためにインストールした時のコマンドです。
> sudo apt install libssl-dev libfontconfig1-dev libcurl4-openssl-dev libxml2-dev
> sudo apt install libharfbuzz-dev libfribidi-dev
> sudo apt install libfreetype6-dev libpng-dev libtiff5-dev libjpeg-dev
解決策の案に従って、足りていないソフトウェアをインストールしましょう。~
これを何度か繰り返せば問題なくインストールできました。~
以下、devtoolsのインストールエラーを解決するためにインストールした時のコマンドです。
> sudo apt install libssl-dev libfontconfig1-dev libcurl4-openssl-dev libxml2-dev~
sudo apt install libharfbuzz-dev libfribidi-dev~
sudo apt install libfreetype6-dev libpng-dev libtiff5-dev libjpeg-dev




**その他 [#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

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS

G|Cg|C@Amazon Yahoo yV

z[y[W yVoC[UNLIMIT1~] COiq COsI