備忘ログ

チラシの裏的備忘録&メモ

R

Rで畳み込み(線形畳み込み)を行うconvolve()関数のメモなど

R

ちょっとしたメモ、三本立て。 Rで畳み込み(線形畳み込み)を行うconvolve()関数のメモ 雑感 二項演算子とパイプのメモ {naniar}パッケージはナルニア国物語 Rで畳み込み(線形畳み込み)を行うconvolve()関数のメモ Rでベクトルの畳み込みを行うconvolve()…

Rの三項演算子的関数であるifelse()関数(と{dplyr}のif_else()、case_when()関数)で出る謎のwarningメッセージについて

R

Rでデータ分析をする際に、三項演算子的な処理を行いたい時に{base}のifelse()関数や{dplyr}パッケージのif_else()、もっと複雑な条件分岐をするときにはcase_when()関数を使うことがある。これらの関数を使っている時に意図しない、結果にも反映されない謎…

CRANリポジトリからパッケージが多くremoveされる日を調べてみた

R

RのパッケージはしばしばCRANリポジトリからremoveされArchivesとなる(CRANのArchivesには、removeされたパッケージだけではなくパッケージがアップデートされた時に以前のパッケージもある)。 CRANリポジトリからremoveされるのは、多くの場合はCRANが定…

グラフが格納された、リストの入れ子を解消したい

R

入れ子のforループでグラフを複数出力したものを、{gridExtra}パッケージのgrid.arrange()か何かで並べたい。解決策案の一つ、入れ子状態のlist形式のオブジェクトの入れ子状態を解消し実現する。 これを見て qiita.com すでに回答済みなので必要ないと思う…

R本体やパッケージの引用情報を参照するcitation()関数について

R

R本体のRのパッケージの引用情報を参照する時に使うcitation()の役に立つかもしれないTIPS的なのものをまとめていく。だいたいヘルプドキュメントに書いてある。 引用情報を呼び出す Rの本体の引用情報を一番簡単に取り出すには次のようにするとできる。 cit…

RのパッケージのREADMEを読む方法を考える(READMEをvignetteにするなど)

R

READMEがある(ありそうな)ウェブページにアクセスする関数を作ってREADMEにウェブブラウザをつかってアクセスする パッケージをインストールする時にREAME.mdの内容をvignetteにコピーする処理を行い、vignette()関数を用いてREAMEを参照できるようにする …

CRANにsubmitしたあと公開(またはreject)されるまでのパッケージはどこにあるか

R

CRANにパッケージをsubmit(投稿)したあと、基本的な順序としては、自動チェック後、CRAN Maintainerにより手動チェックされ、問題なければCRAN上で公開、CRAN Policyに合致しないなど問題があればrejectされた理由がメールされる。 パッケージのsubmit後は…

RStudioのCheck for Package Updatesはupdate.packages()と微妙に挙動が異なる ほか2本

R

R関係で最近知った些末なことをメモしておく。一つずつ書くほどでもないので三本建て。 RStudioのTools > Check for Package Updatesはupdate.packages()と微妙に挙動が異なる ::で関数を呼び出してもパッケージはロードされている {purrr}パッケージのmap_d…

Rのlme4パッケージで"関数 'chm_factor_ldetL2' はパッケージ 'Matrix' では提供されていません"とエラーが出た

1ヶ月ぶりくらいにlme4パッケージをつかって(一般化)線形混合モデルを計算しようと思ったら関数 'chm_factor_ldetL2' はパッケージ 'Matrix' では提供されていませんとエラーが出たので解決させたときの対応をメモしておく。 英語だと、Error in initializ…

CRANからremoveされた他の人の作ったパッケージを再登録させた話(ポエム)

R

この記事はR言語 Advent Calendar 2023の2日目の記事です。Rに少しでも関連していれば誰でもなんでもOKとのことで、本稿はその趣旨を信じて次に記載する本稿の要旨の通り、R言語のHOW TOやトリビア的な内容ではありません(お祭りに参加したいけど手持ちネタ…

RでLittleのMCAR検定を行う場合、{BaylorEdPsych}パッケージのLittleMCAR()は使うべきではない

R

欠測値(欠損値)のを含むデータについて、データが完全にランダムに欠落しているかどうか、つまりMCAR(Missing Completely at Random)であるかを検定するLittleのMCAR検定をRで行う場合、やや古めのウェブページ等では{BaylorEdPsych}パッケージというす…

欠損値(欠測値)を含むデータのmultivariate normal maximum-likelihood estimation、つまり多変量正規分布の平均ベクトルと共分散行列の最尤推定値の計算をRで行う方法のメモ

R

欠損値(欠測値)を含むデータのmultivariate normal maximum-likelihood estimation、つまり多変量正規分布の平均ベクトルと共分散行列の最尤推定値の計算をRで行う方法。メモ。 CRANにあるパッケージでは{mvnmle}と{norm}で計算できる。ほかにも実現できる…

RでExcelのLOOKUP関数のように対応表として値を別のデータフレームを参照して列を追加する方法について

RでExcelのLOOKUP関数のように対応表として値をデータフレームでもっているの場合に、対応している値を参照して列を追加する方法について考えてみる。小ネタ。 次のQiitaの記事を読んで思った。 qiita.com いろいろな手法が考えられるが、{dplyr}を使うので…

Rの`{ggplot2}`でグラフを描画するときの、欠測値等のデータの一部が欠けた場合の積み上げ面グラフについて考えてみる

Rの{ggplot2}でグラフを描画するときの、欠測値等のデータの一部が欠けた場合の積み上げ面グラフについて考えてみる。 そもそも歯抜けの場合には面グラフが微妙な気がするという話は一旦おいておく。 サンプルデータは次の通り。 set.seed(123) df <- data.f…

RStudioのアップデートの有無をPosit社(旧RStudio社)のウェブページ上の情報を参照し確認するRStudio用のアドインを作ってみた

RStudioはアップデートがあると通知してくれるし、上のメニューからHelp > Check for Updatesをクリックすると任意のタイミングでアップデートの有無のチェックができる……ことになっているが、しばしばこれがうまく行かないことがある。 Check for Updatesを…

Rで値の文字と数字を分ける方法のメモ

R

Rで値の文字と数字を分ける方法のメモ。方法はいろいろありそうだが、とりあえずシンプルに。 例えば、データに30cmや500mlなどの数値と文字列がくっついている場合がある。このとき、これらの値(30cmなど)は文字列として処理されるので処理しにくく、数値…

Rでまとめて無相関検定(相関分析)を行って、その結果を一覧したい

R

Rでまとめて無相関検定(相関分析)を行って、その結果を一覧したいと思った。 相関係数だけを一括して見たいならcor()という関数もあるが、無相関検定や95%信頼区間なども一緒に確認したいと思った。 cor(iris[1:4]) ## Sepal.Length Sepal.Width Petal.Le…

Rでまとめてt検定を行った結果を一覧で確認する方法のメモ

Rでまとめてt検定を行った結果を一覧で確認する方法のメモ。 要旨としては まとめてt検定を行った時の結果をデータフレーム(tibble)形式で表示してくれる{broom}パッケージのtidy()関数をつかって表示する。 というもの。 まとめてt検定を行う方法について…

ロジスティック回帰分析の適合度検定であるHosmer-Lemeshow test(ホスマー・レメショウ検定)のRでの実装について考えてみる-その3。

ロジスティック回帰分析の適合度検定であるHosmer-Lemeshow test(ホスマー・レメショウ検定)のRでの実装について考えてみる-その3。 要旨としては Hosmer-Lemeshow testについて、十分位でサブグループを分割する方法がうまく行かない場合のサブグループの分…

ロジスティック回帰分析の適合度検定であるHosmer-Lemeshow test(ホスマー・レメショウ検定)のRでの実装について考えてみる-その2

ロジスティック回帰分析の適合度検定であるHosmer-Lemeshow test(ホスマー・レメショウ検定)のRでの実装について考えてみる-その2。 要旨としては 単純にデータを期待確率の小さい順に並べて上から等分に指定されたサブグループ数で分けた場合でのHosmer-Lem…

ホスマー・レメショウ検定(Hosmer-Lemeshow test)のRにおける実装について考えてみる-その1

ロジスティック回帰分析の適合度検定の手法の一つであるホスマー・レメショウ検定(Hosmer-Lemeshow test)*1について、Rにおける実装について考えてみる。 要旨としては RでHosmer-Lemeshow testを実行する{ResourceSelection}のhoslem.test()では0.3.5を含…

Rで任意の列でNA(欠損値)が含まれている行のみを削除したり、取り出したりしたいメモ

要旨 lm()やglm()などでは指定した従属変数や独立変数に欠損値がある行が削除される(ペアワイズ)が、ここで削除された行はどんな行なのか確認したいと思ったのでその方法のメモ。 逆に、削除されなかった行たちも確認したいと思った。 また、そもそもこう…

Rで値の置換用のリストをデータフレーム等で持っている場合の値の置換について考えてみる

R

Rでの値の置換を考えてみたのでメモ。 データフレーム(Excelファイルなどから読み込んだ)のリストで持っている条件に完全一致したものを同じリストで持っている値に置換するというのを考える。 最初に自作関数で実行する方法を提示し、その他の方法も後述…

Rの{future.apply}や{furrr}をつかってmultisessionで並列処理しようとしたときに、"object 'xxx' not found"(xxxはグローバル環境にあるオブジェクト名)とエラーがでてちょっと困ったので暫定的な解決策のメモ

要旨 Rの{future.apply}や{furrr}をつかってmultisessionで並列処理しようとしたときに、object 'xxx' not found(xxxはグローバル環境にあるオブジェクト名)とエラーがでたときの暫定的な解決策について。 {future.apply}ならfuture.globals引数に参照でき…

Rでロジスティック回帰分析の疑似決定係数(pseudo R-squared)を{perfomance}パッケージを使って求める方法のメモ

Rでロジスティック回帰分析の疑似決定係数(pseudo R-squared)を{perfomance}パッケージを使って求める方法のメモ。 決定係数(R-squared、R2乗)は線形回帰分析のモデルの当てはまりの良さの指標の一つとなっている。 ロジスティック回帰分析では非線形モ…

Rの{gghighlight}で折れ線グラフをいろいろな条件でハイライトするグループを決定したいメモ

最後の値を条件にしてハイライトするグループを決めたい(または任意の1点での値を条件にしてハイライトするグループを決めたい) 任意の範囲期間に観測された値が任意の範囲にすべて収まっている場合にハイライトしたい場合 任意の範囲期間に観測された値が…

Rでe-statからxls(xlsx)ファイルをダウンロードするときにうまくいかなかったときに対処したメモ

要旨 Rでe-statのXLS形式のファイルをダウンロードするときdownload.file()ではうまくいかなかったが、{httr}パッケージのGET()とwrite_disk()を使ったらうまくいった。 e-statのapiの仕様の関係でXLS形式のファイルが.xlsなのか.xlsxなのかはわからないが、…

Rで縦方向に連結されたcsvファイルを分割したい

R

chemstat.hatenablog.com この記事をたまたまみてRでやってみようと思った。 こういう仕様のファイルは見たことがなかったが、任意の文字(値)で挟まれた範囲の行でデータフレームを分割したいという欲求はあり得るかと思った。 とりあえず今回の仕様につい…

Rで集計済み(記述統計量)データでt検定を行うメモ

Rでt検定をするときに使用する、t.test()は集計前のデータのベクトルを与えることでt検定を行ってくれる({stats}の)。 ところで、t検定はサンプルの平均値と分散、サンプル数がわかればt値と自由度が分かるので、p値等々ほしい値が分かる。 pythonだとscip…

Rで多肢多重回答のものをダミーコディングするメモ

Rで多肢多重回答のものをダミーコーディングするときのメモ。 調査回答で複数の選択肢から当てはまるものを選んでもらう回答方式を、多肢選択法(multiple-choice method)といい、一つだけしか選べないものを単一回答(single answer)とか、複数選べるもの…