論理の流刑地

地獄の底を、爆笑しながら闊歩する

R

Masseyレーティングで各チームの前半↔後半のレーティング差を可視化してみる(小中本の実践)

気分転換でしかない記事 Introduction Massey Ratingとは(小中本より) データ・関数の準備 分析:前後半の得点差からRatingを算出して、くらべてみる Introduction 先日名著『科学で迫る勝敗の法則』のメモをとった ronri-rukeichi.hatenablog.com 感想は…

【R備忘】{slider}パッケージの主要関数メモ

R

師走だけど、走らないよ Introduction 関数ごとの使い方 slide() slide_index() slide_period() tidyな処理との組み合わせなど Introduction 時系列データ(あるいはもっと一般に、sequenceのindexがあるデータ)をあつかうとき、いわゆる「window関数」を定…

{stm}パッケージ用に、日本語ドキュメントのベクトル⇒BoW表現のリスト&単語ベクトル、の変換をする

R

別記事を書いていて、トピック単体で切り出したほうがいいなと思ったので。 その記事はたぶん近日あげる*1 Introduction 解くべき問題 Data How to transform RMeCabでターム-文書行列を得る BoW表現を得る おまけ:ちゃんとstm::stm()が適用できるかのチェ…

【R】{randomForestSRC}パッケージの基本事項備忘用メモ

なんか日本語情報が全然なかったので、自分用メモ 別にrandom forestの計算ロジック自体が変わるわけではないので*1、情報がなくても不思議じゃないんだけど。ちょいちょい触ってみて、{randomForest}パッケージより使いやすいと思ったので必要最小限に書き…

【R】ありがたき{crosstable}パッケージで、集計や基礎分布の確認をラクにする

R

Introduction 引数の説明 よくある使い方の例 数値変数の基本統計量 カテゴリ変数の要約&列和を表示する 要約統計量の関数を自分で指定する グループ変数をふたつにする 特殊な使い方 相関係数の表示 効果推定 Introduction 高度*1な手法を使って効果検証や…

【R備忘】ggplot2で不要な図内の余白を消したい時/凡例を一つにまとめたいとき、にどうするか

R

百回忘れたことに対して百一回目の忘却を防ぐだけのためのメモ いやーggplotはありがたいパッケージではあるんだけど、毎日使うわけじゃないから細かい設定とかを忘れがち 不要な図内の余白を消す 凡例をひとつにまとめる 不要な図内の余白を消す 例によって…

{glba}パッケージ 備忘録

体調管理が、何よりいちばん難しいタスク。 Introduction LBAの概要かいつまみ Main Function Introduction response time(回答時間)をどうやって行動予測や(関心のある変数の)効果の推定精度につなげるか、というハナシをやっている界隈がある。 ご多分…

Rでパレート優越ソート

{rPref}パッケージの使い方についてのメモ。 必要に追われて調べたときに日本語資料がほぼみつからなかったので、自分の備忘ついでに書く はじめに:パレート優越性と多目的最適化問題 基本的な使い方 カスタマイズ 条件指定関数 複数条件指定系 抽出方法指…

各選手の先発ポジションを取得する

ほしいもの How to 個別選手について クラブ単位での取得 ほしいもの 過去記事などで触れたようにSofaScoreから各選手の試合別スタッツは取得できる。 ronri-rukeichi.hatenablog.comだが、若干分析上不便であるのが、ポジションがGK/DF/FW/MFの4区分でしか…

X→Yの効果と交互作用のあるZを見つける

Introduction How To Data Pre Analysis How to Find : Causal Tree Conclusion Introduction p-hackingやasterisk-seekingなんて言葉も人口に膾炙している通り、調査データから「有意な関連」を見出すこと自体が目的化しがちなのが経験科学における定量的研…

【備忘】関数の引数をそのまま関数内で呼び出す他の関数に引き渡したい時の方法

R

意外とわからなかったのでメモ 結論としては、match.call& do.callのコンボを使う。 rnorm_wrap <- function(...){ arg_list <- as.list( match.call( expand.dots=T)) arg_list[[1]] <- NULL do.call(rnorm, args = arg_list) } rnorm_wrap( n = 5 , mean= …

rpartと因果木についての覚え書き

すっごいマニアックな備忘録だが、こういうの書いてまとめて自分事として納得しないと秒速で忘却してしまうので。 What's the problem? いきなり寄り道:Rのrpartについての注意点 本題:Causal TreeにおけるMSEの求め方。 前提:因果木のつくられかた 本題…

【備忘】Rで作ったデータフレームをPythonで使う時の手順

自分用備忘記事。 意外と該当する記事が(日本語で)なかった*1ので。 Motivation How To 手順1:まずrpy2を使って、rで作成したデータフレームを読み込む 手順2:rpy2py()で変換 Motivation Rのほうで色々作ったデータフレームをそのままPythonで使いたいと…

【備忘】日銀時系列統計データサイトをつかう

Introduction How To 前提:景気動向指数について 今回取得するもの Technical Notes Conclusion Introduction 以前よんだ鶴ら(2019)「日本経済のマクロ分析」を再読していた。 (数か月前に読んだ本だけど結構内容忘れていた。悲しきザル記憶力である...)…

J1の各試合のフォーメーションを自動取得する

ただの数字、されど数字。 それがフォーメーション。 Introduction Implementation scriptタグの内部を解析する フォーメーションを取得する 実装 実行する Introduction サッカーを戦術的に語るうえでの大きな要素としてフォーメーションがある。 Football …

data frameをはてな記法での表組に変える関数

R

ただのTechnical Notes。 いちいちスクショなり表を整形するなりまでする必要ないけど、ブログに表をのせたいとき使う データフレームを引数にとって、ただ実行するだけであとは「貼り付け」するだけではてな記法での表組に変換できる関数をつくる◆参考URL …

Jリーグの各試合におけるシュート位置の座標を推定・取得する

いとマニアックな備忘録というかもはや作業メモでしかない系記事 Motivation 座標の指定方法をしらべる ピッチの広さに関する知識 座標変換のロジックをつくる 試合ページから取得できるようにする 集計結果(やっぱ川崎すげー) Conclusion Motivation Foot…

StatsBombをRで遊ぶ

個人的な備忘録でしかないメモ。 Introduction Rでも実現したい処理工程の把握・書き出し データの取得・整形 大会情報の取得・整形 試合情報の取得・整形 ラインナップの取得 イベントデータの取得 イベントデータの基礎集計と可視化 チーム別集計(例:パ…

Rからestatapiパッケージを通してe-stat APIをつかう

Introduction e-stat APIの基本仕様 どんな機能があるか パラメータについて Rから使ってみる estatapiパッケージを使う 機能1:統計表を検索してIDを取得する 機能2:メタデータを取得する 機能3:データ本体の取得 機能4:データカタログの取得 Conclusion…

【備忘】交互作用のparameterizationについて考えたこと

実務上の分析をするなかでふと思ったこと。 いちいち書き留めるほどのことでもないけど、そうしないと忘れちゃうので(老兵はつらい)。 何が問題か じゃあどうすればいいか Zが離散変数:ダミー変数のcodingを工夫 Zが連続変数の場合はどう考えるとよいか C…

グラぽで掲載されていた出場時間集中係数の計算プログラム&分析結果再現をこころみる

仕事に疲れたので、休憩用に遊んでいたものをそのまま記事にするだけのやつ*1 車輪の再発明ってやつですね。 Motivation:コナカ先生の知的な試み ジニ係数(オリジナル)の計算方法について 集中係数へのアレンジ 再現できたかの検証 追記:Excelでやるには …

【R備忘】既存のテキストファイルの文字コードをUTF8からShift-JISに変換する関数

R

備忘。たぶんすごい基礎的なことだと思うんだけど、あんまり日本語情報がない気がしたんで。 まぁテキストエディタで文字コード変更して保存しなおせばええやん、って話ではあるんだが、Rだけでなるべく処理は完結したい。以下みたいな関数をつくっておくと…

【分析準備】Jリーグの会見コメントからコーパスをつくる by rvest/RSelenium/RMeCab

Motivation 実装(データ取得) ①:取得対象のURLの取得 ②:監督コメントの取得 実装(取得したtextからのコーパス化) テキストを監督ごとに結合する RMeCab::docDF()でコーパスをつくる 次回予告 Motivation 最近、マッシモの会見が面白くなってきたともっ…

【R小ネタ】最終引数以外でも、複数の変数を非標準評価(NSE)形式で与えたい場合のやりかた。

R

なんか簡単そうで意外と思いつかなかったので簡易な備忘 Probrem Solution Probrem 関数内でdplyrの諸関数をつかうときに、NSEな感じでquotationをつけずに引数を複数指定したいときがある。 そんなとき、最終の引数であれば 「...」をquos()で受け取ってか…

選手の個人スタッツのデータベースをつくる by rvest&RSelenium

鉄は熱いうちに打て、ということで分析基盤をやる気のあるうちにつくる。 テーマや領域にかぎらず、大抵の分析は「分析可能なデータをつくる」工程に大部分の時間・労力が費やされる説あります。 Introduction 目標の設定 実装(Rseleniumのとこだけ) 初期…

【データ検証】マッシモ名古屋は本当に「先行逃げ切り特化型」なのか?それはなぜか?

データから見るマッシモ名古屋シリーズ*1◆Outline Introduction: グラぽにおける問題提起 マッシモ名古屋=「先行逃げ切り特化型」説の提起 「先行逃げ切り特化型」説の検証の必要性 分析:マッシモ名古屋は「他チームと比較しても」先行逃げ切り特化型なの…

前後半のゴール数/シュート数/ボール支配率を取得する by rvest

Introduction どのページからとってくるか データ取得の方法:得点編 場合わけ(得点をとってない場合もあるよねという話) データ取得to整形 時間帯別のポゼッション/シュート数を取得する Possessionを取得する シュート数 Conclusion Introduction rvest…

Jリーグをデータから分析する準備

猫背、なかなか直らんすな.... Introduction Scrapingの流れ 欲しいデータの要件の定義 データ要件の定義が大事な理由 データの要件の定義@Football Lab rvestの使用手順を簡単におさらい 基本的な使い方 実行例 データをとっていく(クラブ編) 走査ルール…

【備忘】逆引きXLConnect

Introduction セルの背景色をつける セルを結合する セルの罫線を設定する オートフィルタを設定する Conclusion Introduction 意外と色々やれるXLConnect、すごいぞXLConnect。でもちょっと仕組みがわかりにくくて、初見さんに優しくない感じなので 色々な…

XLConnectでハマったこと備忘

Introduction 罠①:日本語を含んだfile pathが指定できない 罠②:値だけ書き込むためには、事前にsetStyleAction()での指定が必要 罠③:xlcFreeMemory()を忘れると直接編集したExcelの変更が直接保存できない。 Conclusion Introduction VBAも一応かけるけど…