備忘ログ

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

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

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

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

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

Rの`step()`関数で任意の一部の独立変数を強制投入する方法のメモ

Rで重回帰分析や多重ロジスティック回帰分析などlm()やglm()でつくった回帰式の独立変数の取捨選択を行うstep()関数をつかって、任意の一部の独立変数を強制投入し、それ以外の任意の独立変数をステップワイズでふるいにかける方法をメモしておく。 やり方と…

Rの`t.test()`や`cor.test()`などの引数`subset`の使い方

R

t.test()やcor.test()などの引数subsetの使い方 Rのt.test()やcor.test()など{stats}の関数でformula形式で値を指定した場合に使える引数subsetの使い方がヘルプを読んでもいまいちわかりにくかったのでメモしておく。 使い方としては{base}のsbuset()の引数…

Rのパッケージで作成・入力するcashや、設定、データファイルのうちRのセッション間で共有したい値をどこに保存すべきかというメモ

R

Rのパッケージで作成・関数実行時に入力するcashや、設定、データファイルのうちRのセッション間で共有したい値をどこに保存すべきかというメモ。 Rのパッケージを適当に作っているときに、パッケージに含まれない(含むことができない)値を関数等の挙動で…

appIdを一度設定すると各関数でappIdを指定しなくても良くなる{estatapi}のラップ関数のパッケージをつくった

Rで政府統計総合窓口(e-Stat)のAPIを操作する{estatapi}があり、政府統計情報をR上で取り扱うにあたりめちゃくちゃ便利である。 github.com しかし、何度もコードを叩いていると、appIdを何度も引数で指定するのがめんどくさく感じる。 最初にオブジェクト…

CRANに登録されているRのパッケージを最も多くメンテナンスしているのはなのか?

R

今月も何も特に書くことがないので、CRANに登録されているRのパッケージを最も多くメンテナンスしているのはなのかを調べてみた。 CRANに登録されているRのパッケージのDESCRIPTIONのデータを持ってきてくれる{tools}のCRAN_package_db()を使うと、{utils}の…

Rでゾンビの増え方のシミュレーションを雑にしてみた

R

ゾンビ化する人の数は? ゾンビ数のRでシミュレーション ゾンビ化する人の数は? 柳田理科雄氏のこの記事を読んで、ゾンビの増え方について考えてみた。 news.yahoo.co.jp 1体のゾンビが1人に噛みつくと、ゾンビは2体になる。 その2体がそれぞれ1人を噛むと4…

Rで最頻値(mode)とその度数を求めたい(データフレーム中の各列の最頻値と度数を求めたい&データフレームの複数の列を組み合わせでの最頻値とその度数も求めたい)

R

Rで最頻値(mode)とその度数を求めたいと思った。 最頻値を求めるRの組み込みの関数はないので、いろいろ工夫が必要となる。 データフレーム中の各列の最頻値と度数を求めたいと思った。 また、後述するがデータフレームの複数の列を組み合わせでの最頻値と…

Rの`{ggplot2}`で角の丸い棒グラフを描きたい

Rの{ggplot2}で角の丸い棒グラフを描きたいと思った。メモ。 真四角の棒グラフよりも少し角を落とした棒グラフにして、スライドに貼り付ける時に少し周りのテーマと揃えたいなと思った。 Github上に公開されている{ggchicklet}を使用すると角が丸い棒グラフ…

Rの`{ggplot2}`のグラフの軸ラベルを縦書きにしたい(第二弾)、そして改行もしたいと思った(追加要素)

Rの{ggplot2}のグラフの軸ラベルを縦書きにしたい(第二弾)、そして改行もしたいと思った(追加要素)。 できればscale_x_discrete()内でlabels引数に関数等を指定することでいい感じにしたいと思った。投入する前のデータでいじるのではなく、ggplot内で簡…

`{ggplot2}`で作れるグラフの軸ラベルを縦書きにしたい

{ggplot2}で作れるグラフの軸ラベルを縦書きにしたいと思った。 ラベルを90°回転させて縦にするのではなく、縦書きにしたいと思った。 できればscale_x_discrete()内でlabels引数に関数等を指定することでいい感じにしたいと思った。投入する前のデータでい…

Rの`{stringi}`でInternational Components for Unicode(ICU)で西暦を和暦に直したり、和暦を西暦に直したりできることを知った、すごいというメモ

Rの{stringi}でInternational Components for Unicode(ICU)で西暦を和暦に直したり、和暦を西暦に直したりできることを知った。 formatをちゃんと書けば逆もひと通りできる pic.twitter.com/eQPvTvnnWu— あきる (@paithiov909) 2022年5月16日 すごいφ(..)メ…

R 4.2.0の`as.vector()`

R

R 4.2.0からas.vector()の結果が微妙に変わって、 as.vector(iris) |> is.vector() ## [1] TRUE というあたり前田のクラッカーな結果になるようになった。 なにも知らなければだからどうしたという結果だが、R 4.1.xまではこれがFALSEになっていて、as.vecto…

RStudioの`|>`と`%>%`のキーボードショートカットを共存させる方法のメモ(もちろん異なるキーボードショートカットキーで)

Rのパイプとして、{magritter}パッケージが提供する%>%とR 4.1.xからの|>があって、RStudioで、どちらか一方をキーボードショートカットとしてCtrl + Shift + Mに割り当てることができる。 どちらにするかはToolsのGlobal OptionのCodeのGeneralのところにあ…

Rでggplot2を使ってロジスティック回帰分析の結果のオッズをフォレストプロット風のプロット図を作成する(その2)

「ロジスティック回帰分析 フォレストプロット」のキーワードで検索すると現在、前に書いた記事が結構上位にヒットする。 indenkun.hatenablog.com 別に手法はそれでいいのだが、ロジスティック回帰分析のオッズ比と95%信頼区間の計算を{broom}でやったほう…

{readr}の`read_csv()`で思いがけない`Files must end with a newline`エラーでCSVファイルが読み込めない事案に遭遇したのでメモ

R

(2022/10/01追記) Vroom 1.6.0で解決され、当該問題発生しないようになった様子。 (追記終了) {readr}のread_csv()で思いがけないFiles must end with a newlineエラーでCSVファイルが読み込めない事案に遭遇したのでメモしておく。 現在、エラー自体は…

Rで標本分散から母分散の信頼区間を求めたい

R

Rで標本分散から母分散の信頼区間を求めたい 東京大学出版会の統計学入門(基礎統計学Ⅰ)を眺めていてp.226-227、242の母分散の信頼区間を求めたり、母分散のχ二乗検定をRでやりたいと思った。 最初に自作関数(パッケージ)を使うパターンを示すが、よくわ…

Rのインストールしているパッケージを確認して名前を取り出す

小ネタ。 Rのインストールしているパッケージを確認する関数として、installed.packagesという関数がある。 新しいPC(環境)にRをインストールするとき、今使っているパッケージ名を取り出せればそのままインストールし直そうとするときに使えそうだが、イ…

Rで1年ごと、1ヶ月ごとの日付のベクトルを作る

R

タイトルの通り。たまにやるがしばしば失念するのでメモ。こういう事するとき本当に必要なのは年数までか、月数までで、日付はそんなに重視されていないことが個人的に使用するときには多い気がする。 1年ごとのベクトルを任意の日付から任意の日付まで(始…

Rのggplot2で軸の値を力技で任意の値に変えたい

タイトルの通り。やるときにちょっと調べることがあるのでメモしておく。下記はx軸のことをずっとやっているがy軸も似た要領でできるはず。ただy軸いじるのはEvilな例が多いと思う。 {ggplot2}で軸の値を力技で任意の値に変えたいと思った。本来は軸の値用の…

Rでデータフレーム ⇔ リスト の変換

R

qiita.com こちらでRで各行を要素としたリストを作成する方法が自分で関数を定義して紹介されているが、今なら{purrr}のpmap()を使うと簡単にできそう。 今回は例としてirisデータを使うが、全部を使うと見にくいので冒頭5行だけ使用するために、iris.headと…

メモ:Rで長さの異なるlistをデータフレームに変換したい

R

Rで長さの異なるlistをデータフレームに変換したいということがあったので方法のメモ。 a <- list(A = 1, B = 1:2, C = 1:3, D = c(1, NA, 3:4), E = c(1, NA)) こんなリストがあったときに 次のようなデータフレームがほしいとき(データフレーム1、リストそ…

メモ:エスケープシーケンスは`\`+`1文字`はRの`{base}`の`nchar()`や、`{stringr}`の`str_length()`で文字数カウントするとき、1文字でカウントされる

R

メモ:エスケープシーケンスは\+1文字はRの{base}のnchar()や、{stringr}のstr_length()で文字数カウントするとき、1文字でカウントされる。テキスト処理していてちょっとハマったのでメモ。 というかエスケープシーケンスの最初の\文字はカウントされていな…

CRANで公開されているRのパッケージの依存関係(ImportとSuggest)をみてみた

R

個人的な興味関心でCRANで公開されているRのパッケージの依存関係(ImportとSuggest)をみて、依存されている件数が多いパッケージ、つまり引用件数が多いパッケージ等をみてみたのでメモ。 とりあえず、前処理 ImportsもSuggestsもないパッケージは…… 依存…

Rで`for`ループで大量に`{ggplot2}`でグラフを書きたい(`purrr::map()`も添えて)

Rでforループで大量に{ggplot2}でグラフを書き、Rmarkdown で書いたレポートに入れたいと思った。forループじゃなくpurrr::map()の例は最後に書く。 {ggplot2}で、例としてirisデータのSpeciesごとに、Sepal.LengthとSepal.widthの散布図を書きたいとする。3…

Rの{psych}のrevese.code()のメモと逆転項目の処理のメモ、蛇足で{car}のrecode()で逆転項目を処理する方法も添えて

Rの{psych}パッケージに逆転項目を逆転させる処理するrevese.code()という関数があるのでそのメモ。 Rで逆転処理をする話がたまに見かけるので。 ここでの逆転項目というのは1~7の結果を1は7、2は6、……と結果を逆にしなければならない項目のこと。心理尺度…

`{tidyr}`の`pivot_longer()`の`names_pattern`と`pivot_wider()`の`names_glue`で混乱したメモ

たまに次のような時系列を意図したデータに出くわす時がある。 # サンプルデータを作る set.seed(5) d <- data.table::data.table(ID = letters[1:5], "BMI(0)" = rnorm(5, 25), "BMI(6)" = rnorm(5, 25), "BMI(12)" = rnorm(5, 25), "Steps(0)" = rnorm(5, …

Rのggplot2で地図を書いた時にいい感じに見えるようにするときのメモ

タイトルそのまま、Rのggplot2で地図を書いた時にいい感じに見えるようにするときの個人的なメモ。 例として東京都の市区町村レベルの地図を人口データで色分けしてみる。 データは東京都の国土地理院の行政区域のシェープファイル(N03-20210101_13_GML.zip…

国土地理院のシェープファイルからRで使いやすいデータを作ってggplot2で都道府県レベルの日本地図を描くメモ

R

国土地理院の公開している日本の行政区域のシェープファイルをつかってRで使いやすい塩梅の都道府県レベルのデータにして{ggplot2}で日本地図(都道府県レベル)を描画する。 以前書いたこれ indenkun.hatenablog.com がだめになったので代替案的な。 シェー…