戯言日記

Rの話だと思ったら唐突にサバゲーが混じってくる何か。

gtパッケージの表を便利にするための小技

この記事はR言語 Advent Calendar 2023の20日目の記事です。 ギリギリ日付跨いだことについては見なかったことにしてください。 qiita.com gtパッケージとは 適当なデータをgt::gt()に放り込むだけで、簡単にいい感じの表として出力できるパッケージ。 見た…

bookdownで図の相互参照が機能しない

wordで解析結果を報告するとかいう魔の業務が降ってきたので、cookbookを参考に図の相互参照を使おうとしたのだが機能してくれなかった。 gedevan-aleksizde.github.io bookdown::html_document2: へは変更済み チャンクのラベルも設定してある 参照タイプ(…

Rのバージョンアップでゴリ押ししようとしたけどpacmanパッケージでいいじゃんとなった

概要 以前にこんな記事を書いた。 doubtpad.hatenablog.com 最新版のRStudioでいくつかの関数が文字化けする問題で、R 4.2にすれば治るのか確認したくて開発者版を入れたため、この記事の時と同じようにセットした。 install.packages(dir(file.path("C:/...…

RStudioの最新バージョンで`str_c()`の挙動がおかしい

概要 RStudioを最新版に更新して、さて解析するかと意気込んでいたら、どでかい地雷を踏んだ。 > library(tidyverse) > str_c("文字", "化け") [1] "\u0095�\u008e\u009a\u0089�\u0082�" 日本語の結合がおかしなことになっている。 簡単に検証 確認すると、s…

RMarkdownでtargetsパッケージを使って前処理データを引っ張ろうとしたらknitr時にエラーを起こした

この記事はR Advent Calendar 2021 23日目のところに大遅刻して投稿した記事です。 概要 targetsパッケージとRMarkdownを併用しようとしたらエラーが発生 RStudioのRMarkdownの設定でチャンク評価時のディレクトリの設定変更を忘れていたせいだった targets…

ジャンクのマテバを手に入れたので修理

という訳で、つい買ってしまった。 マテバ 以前から見た目がめっちゃ好みでずっと欲しかったところに、ハンマーの動作不良が原因のジャンク扱いで安く出てたのを見つけて、1日悩んでから結局ポチった。 修理できなかったらそのまま飾る予定。 全体 銃身 スイ…

pngの保存形式が変わったと思ってたらggsave()の保存形式が変わっていた

去年の後半に作ったShinyアプリを久しぶりに動かしたら、処理の途中でいきなり落ちるとかいう恐ろしい目にあった。 具体的にはggplot2で作図したグラフをggsave()でpng保存し、それをEBImageパッケージを使って読込と解析をするアプリなのだが、その途中でア…

RのバージョンアップをRからやろうとして失敗したからゴリ押した話

少し前に、メジャーアップデートとしてR 4.1.0が来ていた。 地味に分量が多くて把握しきれていないが、Rネイティブなパイプ「|>」の実装とか、関数の「(x) x+1」表記とかが目立つ変更点かと思う。 せっかくならメジャーアップデートは対応しておきたいので、…

data.tableにfurrr::future_map()を入れるとむしろ速度が低下するっぽい

data.tableに対する処理の一部が妙に重くて困ってたのだが、その原因を調べてたらfurrr::future_map()との食い合わせが最悪だったってことが分かったのでメモ。 data.tableとは data.frameを発展させたデータ形式で、高速かつメモリ効率の良さが売り。 cran.…

「MAD」が問題を抱えすぎている気がする

一昔前に某動画サイトでうpされていたアレの話とかではなくて。 データの標準化の話を調べていた時、「中央絶対偏差(MAD)」に行き当たったのが事の発端。 doubtpad.hatenablog.com このMAD、バラつきに関する指標の1つで、標準偏差と比較すると外れ値に強…

R上でロバストな標準化をしたい

データ分析をする際には各データを標準化するのが一般的だが、大抵の場合は特に何も考えずに平均0、分散1になるよう処理するのが基本だと思う。 これはRならscale()で実行できる。 ただし、この方法では外れ値によって大きく影響を受けることがある1。 ここ…

ガスハンドガンのマガジンメンテナンス

という訳で買ってみた。 KSCのバルブレンチ 仕事が笑えるほど忙しくてブログの更新どころではなかったんだけど、落ち着いたタイミングで約1年ぶりにサバゲーの予約を入れたら何となくマガジンのメンテナンスをしたくなったのでAmazonで買った。 なお今回はち…

DTの*_rows_selectedでデータテーブルからプロットを直接制御する(Shiny)

こちらはR Advent Calendar 2020 21日目の記事です。 qiita.com 8日目の記事でRアドカレに初参加した分際で2回目もやるってどうなのかとも思ったんですが、カレンダーが空いてるとひとまず予定突っ込みたくなる病気のせいで気が付いたら空いてる枠をクリック…

【R-bloggers翻訳】Python DashとR Shinyのどっちを選ぶべきか

R-bloggersを眺めていたら面白い記事が入っていた。 www.r-bloggers.com 「ShinyとDashのどっちが今後もWebアプリを作っていくのに良いの?」って内容。 Rを使っている人からすると「Shinyから乗り換えるべきか否か」で読む感じか。 記事の流れとしては「そ…

forcatsパッケージでggplot2の因子軸を反転させる

こちらはR Advent Calendar 2020 8日目の記事です。 qiita.com 初参加ですが宜しくお願い致します。 なお、内容的にはggplot2の初心者向けです。 因子型データの軸を反転させたかった時に「ggplot2 軸 factor 反転」とかで検索をかけてもfactorのlevelsを直…

Shinyに手を出したらエラーを吐き出されたので何を言ってるのか纏めてみる

そのまま。 諸事情でShinyを使うことにした。 そこそこの大きさのデータを細かい条件で少しずつ弄りながら解析してみるとか、複数ファイルを読み込んで所定の動きをさせたいとか、そういうやり方をするならWebアプリ化しておくと毎度コード書き換えなくても…

HK45コンバットマスター(自称)を作ってみた

先日、こんなイベントがあった。 hobbyjapan.co.jp 昨年の第1回を見て「いつかこういうのに出してみたいなぁ」とか思っていたのだが、気が付いたら色々とカスタムをやるようになってきたのでしれっと応募してみた。 という訳で、『HK45 コンバットマスター…

はてなブログにRMarkdownのチャンクコード全体を表示したい

タイトルそのまま。 はてなブログの記事内で「```{r}」とかまで含めてチャンクコード全体を表記したい時、大体の人はMarkdown形式で記事を書いていると思われる。 が、この状態で普通にチャンクコードを書いてしまうと当然ながら中のコードのみが表示される…

複数ファイル、readrから見るか、data.tableから見るか(read.csv、read_csv、fread、vroom)

「ファイルを読み込んでください」と言われた時に、多くの人がぱっと思いつくのはこの辺だと思われる。 file <- "sample.csv" utils::read.csv( file, skip=2, header=T ) data.table::fread( file, skip=2 ) readr::read_csv( file, skip=2, col_types="ddd…

ArduinoでString→char変換を試したらドツボに嵌った

スマホが新しくなった。 というか長いこと使ってたXperia Z5にガタが来てた。指紋認証は故障、少し使っているだけでホッカイロ状態、バッテリー60%↑なのに落ちる、背面パネルの左端が剥がれてくる(中身が見える)、などなど……。よくここまで使ったと思う。 …

RMarkdownでソースコードを折り畳んで表示する

ここ最近の業務でPythonやらC++やらHTMLやらJavaScriptやらに手を出すことになった。R解析芸人とは一体。 ただ他言語で色々やってても解析自体は基本的にRでやってるため、報告書なんかもRMarkdownで書いているのだが、そうなるとソースコードをサンプルとし…

acrossでsummarize()が楽になる

・across()で複数列の処理を簡易化 doubtpad.hatenablog.com 上の記事でも書いたが、dplyrにacross()がやってきた。 dplyr.tidyverse.org 分かりやすく言うと_if()、_at()、_all()を無くすためのツールで、それぞれの関数に存在した固有の書き方(ルール)を…

dplyr1.0.0 が来てた話(自分が気になった変更点まとめ)

最新情報を積極的に追うタイプではなかったので、気が付いたら大きいバージョンアップが来てた。 cloud.r-project.org なお0.9はない。たぶんRの闇に消えた(適当)。 というかWindowsにしろiPhoneにしろ、ナンバリングで9を飛ばしたがるのはなんでだ。 tidy…

スパス12の修理1_解体(特殊工具不要の箇所まで)

某フリマサイトを眺めてたら掘り出し物を見つけた。 www.tokyo-marui.co.jp ショットガン好きの皆さんご存じ、スパス12。 このゴリッゴリの見た目いいよね。外装関連のパーツ類がいくつか欠品&弾速出ない&一部が弾ポロする、というなかなかヤバい個体が300…

M92Fカスタムその3_マグナポート加工

前回弄ったスライドの色味が気に入ったのでトップコート処理を迷ってる。 doubtpad.hatenablog.com しょうがない(?)ので、その間にアウターバレルへのマグナポート加工を試してみる。例によってアームズマガジンのカスタム例を参考にしようと思ったが、卓…

M92Fカスタムその2_スライドの塗装

状況が状況なので自宅に引きこもってのカスタムが捗る昨今。 厳しい状況は続いてるしサバゲも行きたいけど、何とか収束してほしいので今日も引きこもってインクで侵略する方のイカをやってる。バイト楽しい。 さて、前回はベレッタのカスタム用にパーツを回…

M92Fカスタムその1_パーツ取り用のサムライエッジ購入

気が付いたら更新期間が空いてるわ新型コロナが猛威を振るってるわ緊急事態宣言だわで無事に外出自粛と相成りました。 在宅勤務に切り替わったので、R関連の話もネタが見つかり次第書くと思う。というか研究職がデータ持ち出せない時点でやれることは限られ…

バーチャートレースで国内の感染状況を可視化

前回、偉そうなことを言いながらRで可視化したネタを書いたが、二番煎じだったことが分かった。 というか、外務省がやってた。 https://www.anzen.mofa.go.jp/covid19/country_count.html 既に更新されているので自分が書いた日のデータと比べるのは不可能だ…

3/9時点の各国におけるコロナウイルス発症者数の人口比を調べてみる

コロナウイルス関連で世界各国が日本に入国制限をかけたり、WHOが名指しで憂慮してるとか言ってるのを見て、「各国の人口とか考えずに話進めていいの?」って思った。 人口が多ければ感染者数も多くなるのはしょうがないし、その辺は考慮した方がいいのでは…

gtrendsRで今が旬のサバゲー装備をグーグル先生に訊いてみる

サバゲー装備というかガスハンドガン限定だけど()。 という訳で、グーグル先生での検索数から気になる装備がどれくらい興味を持たれているか、{gtrendsR}を使って調べてみる。 今回は調査というより「こうやれば調べられる」みたいなところに主眼を置いてる…