R !!!RStudio {{outline}} ---- !!いつもの作業 !作業手順1:プロジェクトの設定 + File > New Project + New Directory > New Project + Directory name で作業用フォルダー名を決める + Create project as subdirectory of: Browse... で場所を選ぶ + Create project ボタンを押す !作業手順2:RMarkdownファイルの作成 + File > New File > R Markdown... + Title に作業を表す題目を記入して、OK !作業手順3:RMarkdownファイルに作業を記録していく +一番上の「---」で上下を挟んだ6行は消してはいけない +8行目以降の説明は削除 +左上あたりにあるフロッピーディスクのアイコンで、忘れず時々「保存」すること !作業手順4:RMarkdownで最初に書いておくとよい項目 * よく使うライブラリ {{pre library(tidyverse) library(openxlsx) library(lme4) library(lmerTest) library(effects) library(ggplot2) library(easystats) library(jtools) }} * 使用するデータのファイル名(とシート名) ** New Projectで指定した作業フォルダー内にデータのファイルを置いておく !!設定 !Tools -> Global Options *General > Basic **Workspace ***Restore .RData は外しておく ***Save workspace to .RData on exit: <> *Code **Editingで、 *** 4つ目の項目「Use native pipe operatior, |> のチェックを外す **Display > Generalで、 ***Show whitespace characters ***Rainbow parentheses *Packages **Primary CRAN repository: を選んでおく *R Markdown > Basic **Show output inline for all R Markdown documents ***このオプションを外すと、グラフがPlotsペインに表示される ***グラフだけでなく、処理結果がinlineに表示されなくなる *Appearance **Editor font size: 12 !!四つのペイン ,ソースコード,データ・変数 ,コンソール,ファイル・図・Help * 右下のペインで「ファイル」はそのまウィンドウズで言うエクスプローラーの窓のように使える ! カーソル移動 Ctrl + 番号 , 1 , 4History 8Environment , 2 , 3Help 5Files 6Plots 7Packages !!Project *関連する作業をするディレクトリーを作って、関連ファイルをそこにまとめていく。 !まとまった作業をする場合、RStudioの中から「プロジェクト」として、その作業用のディレクトリーを作成する。 *できたディレクトリー内に、データファイルなどを入れていく。 *できたディレクトリー内に、.Rproj というファイルが出来、そこにその「プロジェクトを管理」する情報が保存される。 *先にディレクトリーを作ってしまうと、そのなかにまたディレクトリーができることになるので注意 !R Notebookを使う場合(これよりもRMarkdownにしましょう) *R Notebook をそのディレクトリー内に作って、そこに作業記録を書いていく。 *グレーの帯の「チャンク」内に、コードを書いていく。 **窓の右上の「Insert」を押すと「チャンク」が用意される。 **帯の右上の右向きの三角をクリックするとチャンク部分が実行される。 *ソースコードに、コードとコメントを書いていく **ファイル名は、拡張子 .R にする(New File -> R Script) **該当行で Ctrl + Enter でその部分のプログラム実行 *実行結果が、コンソールに表示される !RMarkdownを使った作業の基本的流れ *RMarkdownのソースコードに、コードとコメントを書いていく *ファイル名は、拡張子 .Rmd にする(New File -> R Markdown) *画面の上の方の枠、右のほうの左端緑の「C」で、スクリプトを書く欄(Chunk)を挿入(Rを選ぶ) *右端の右向きの矢印▼から選んで実行 **「Run Current Chunk」で該当チャンクを実行 **「Run All」ですべてのチャンクを実行 *チャンクの該当行にカーソルを合わせ、 Ctrl + Enter でその部分のプログラムを実行できる *実行結果が、コンソールに表示される !!RMarkdown {{pre 見出し  # レベル1  ## レベル2  ### レベル3 イタリック  *文字* 太字  **文字** }} !Cheat Sheet https://qiita.com/9en/items/93634351d34bff4771f8 !コードチャンクの出力をレポートに表示しない:results = 'hide' {{pre ```{r, echo = T, results = 'hide'} grep("there (is|are|was|were)", ns10, value=T, ignore.case = T) ``` }} !コードチャンクを実行しない {{pre ```{r, eval=F} grep("there (is|are|was|were)", ns10, value=T, ignore.case = T) ``` }} !警告を出さない warning=F !メッセージを出さない message=F !個々のチャンクごとに書くのが面倒な場合は、最初に knitr::opts_chunk$set(message = FALSE) を書いておく。 {{pre ```{r setup, include=FALSE} knitr::opts_chunk$set(echo = TRUE) knitr::opts_chunk$set(message = FALSE) ``` }} !コメントアウト:HTMLのコメントアウトを使う {{pre }} !!Tips !ワークスペース(作業スペース)の保存 *Session > Save Workspace As で保存 **拡張子は自動的に .RDataとつけてくれる *もしくは、右上ペインの「Environment」で、 **フロッピーマークで保存しても同様。 *ワークスペースを保存しておくと、変数の値なども保存され、 **作業を再開した時に、最初からやり直さなくてもよくなる。 *再開時に、右上ペインの「Environment」で、 **フォルダーマークから、ワークスペースを読み込む !作業履歴(History)の保存 *右上のペインの「History」 *Rに実行させた命令が記録されている。 *これでフロッピーマークで保存。 !キーボードショートカット *<<複数行のコメント>>:Ctrl+Shift+C コメント(トグルになっている) *Rチャンク挿入:Ctrl+Alt+I   インサート *パイプ %>% :Ctrl+Shift+M !文字コード(左上のソースコードペインで文字化けが起きたら) *メニューの Tools から、Global Options で、Code、の Savingで、 **Default text encodeing を UTF-8にしておきましょう。 !プロジェクトの変更 *右上隅の「Project: 」というところでプロジェクトを切り替える。 *切り替えたプロジェクトごとに作業ディレクトリーも変更される。 !作業ディレクトリーの変更 *メニューSessionから、Set Working Directory => Choose Directory (Ctrl + Shift + H) !Knit Directory に注意 *RMarkdownで記述しながら、Chunkを実行していく際に、スクリプトやコンソールで設定している作業ディレクトリーとは別に、Knit Directory で設定するディレクトリーが別にあるので注意。 **Document Directory **Project Directory **<> *スクリプト内で setwd()で作業ディレクトリーを変更しても、チャンク内の一連の処理が終わったら、また、元のディレクトリーに戻ってしまう。 *Knit Directoryが変更されない限り、ドキュメント内での作業ディレクトリーは、チャンク内のsetwd()でセットしたディレクトリーではなくKnit Directoryで設定されているディレクトリーのままになっている。Knitのメニューから手動で変更する必要がある。 *現実的な対処法:処理するデータのディレクトリーへ setwd()を各スクリプトの前に書いておく。 !R Notebook *R Markdownのように使えるが、出力はhtml **PDF出力しようとすると、、、 !エラーメッセージの文字化け対策 Sys.setenv(LANG = "en") !Warningが表示されないようにする:options(warn=-1) options(warn=-1) *これをWarningがでるコマンドの上に書き足しておく。 !!References *https://syunsuke.github.io/r_beginners_guide/