★データ解析備忘録★

ゆる〜い技術メモ

{rjumanpp} ver0.0.0.9993 サーバーモードに対応しました & vignetteを公開しました

はじめに これまで 形態素解析器JUMAN++をRから操作するパッケージを作り始めました - ★データ解析備忘録★ 【R】{rjumanpp}ver0.0.0.9991の変更点とパッケージの構想について - ★データ解析備忘録★ {rjumanpp} ver0.0.0.9992 表層形ではなく活用の原形を出力…

{rjumanpp} ver0.0.0.9992 表層形ではなく活用の原形を出力できるようになりました

rjumanpp 形態素解析器JUMAN++をRから操作するパッケージを作り始めました - ★データ解析備忘録★ 【R】{rjumanpp}ver0.0.0.9991の変更点とパッケージの構想について - ★データ解析備忘録★ github.com 絶賛開発中で、今回は出力で原形を返すオプションをつけ…

RSeleniumでChromeからファイルをダウンロードするディレクトリを指定する方法

結論 RSeleniumはだいたいわかってるから読むのが面倒くさい人へ。サーバー起動時にextraCapabilitiesオプションでダウンロードディレクトリの情報をChromeオプションとしてlist形式で渡してやれば設定できます。 # Chromeオプションを追加 eCaps <- list( c…

Rで欲しい県について国勢調査 小地域 Shapefile を全部ダウンロードする

はじめに 先日、国勢調査 小地域 Shapefileからより細かい粒度で逆ジオコーディングを行う方法を書きました。 y-mattu.hatenablog.com しかし、ここで使っていた小地域shapefileをダウンロードをする関数では県と市をこちらで指定する必要がありました。(uri…

【R】{rjumanpp}ver0.0.0.9991の変更点とパッケージの構想について

はじめに 現在開発中のJUMAN++をRから操作するパッケージ{rjumanpp}ですが、まだ完成には程遠いもののベースになる部分はほぼできており、前回からいくつか基本的な変更があります。 ver 0.0.9991 関数名について rjumanppパッケージでは、解析に関係する主…

【R】国勢調査 小地域 Shapefile を使って緯度経度から住所を求める(市までわかっているときver.)

はじめに @u_riboさんによるこんなツイートがある。 一部で話題の(?)e-Statが提供する国勢調査小地域のShapefileをRからダウンロードする関数を書きました (gifが高速過ぎる orz) コードは https://t.co/Dd2R58ov94 pic.twitter.com/SRo2H1Fk4W— Uryu Shinya…

形態素解析器JUMAN++をRから操作するパッケージを作り始めました

はじめに JUMAN++という日本語の形態素解析器が昨年登場したようです。 速度はMeCabには劣るものの、解析精度(特に表記ゆれや話し言葉)に強いようです。 JUMAN++自体のインストールや使い方は公式マニュアルや以下のリンクが参考になります。 qiita.com あと…

SASで緯度経度から地域メッシュコードを計算する

はじめに 検索してもでてこなかったので、緯度経度からその点が含まれる3次メッシュ(基準地域メッシュ)コードを算出する関数をSASで作成しました。(僕が知らないだけでもしかしたら既にあるのかもしれませんが。) 地域メッシュコードの概要については統計局…

SASによる逆ジオコーディング(緯度経度から都道府県・市を求める)

SASによるジオコーディングはアメリカやカナダのデータは標準装備されていて非常にやりやすいのですが、日本のデータでやろうとするとshapfileから用意しなければならず、非常にやりづらいです。一応、動くものが作れたので備忘録としてメモ。 shapefile シ…

【R】OSMのNominatimでAPIを使わずに緯度経度から都道府県と市を求める(スモールデータ向きお手軽版)

はじめに Rで逆ジオコーディングをやるやり方は、以下のようなやり方が提案されています。 qiita.com qiita.com ただし、いずれも速度面や正確さの面で問題があると記事内でも言及されています。

『データサイエンティストのための最新知識と実践 Rではじめよう! [モダン]なデータ分析』という本をちょっとだけ書きました。

タイトル通りです。 データサイエンティストのための最新知識と実践 Rではじめよう! [モダン]なデータ分析作者: 瓜生真也,工藤和奏,高柳慎一,牧山幸史,松村杏子,松村優哉,簑田高志,本橋智光,ホクソエム出版社/メーカー: マイナビ出版発売日: 2017/06/30メデ…

Rのdplyr::renameとSASのDATA STEP のRENAMEステートメントでは変数の書く順番が違うので注意

R SAS

タイトル通りです。 SASとRと両方使う人でないと特に意識する場面はないと思いますが、どちらも記法が酷似しているので両方使う人は気をつけてないとミスります。 Rのdplyr::rename dplyr::rename(新しい変数名=古い変数名) です。

SASで緯度経度から国名を求める

とりあえず備忘録的にコードと出力だけ。 細かいプロシージャの仕様は後ほど追記します。 コードと出力

RStudio Server + tidyverse + RMeCab で日本語もOKなDockerイメージを作りました

はじめに RStudio Server の Docker イメージを作りました。入っているメインコンテンツは、tidyverse なパッケージ群、MeCab および {RMeCab}パッケージ、LaTeX環境 です。また、ggplot2 などでの日本語プロットも文字化けしないようにIPAexフォントを入れ…

tidyverseの正式登場でDockerまわり(rocker)もいろいろ変わってた

はじめに データ分析では再現性が大切です。しかし、同じコードとデータを使っていても実行環境の違い(OS, ソフトやパッケージのバージョンなど)によって結果が異なることがあります。複数の場所で同じ環境をそろえるための手段の一つとして、はオープンソー…

2016 年を雑に振り返る

年の瀬ですので、2016 年を簡単に振り返りたいと思います。 プライベートのことをここで言ってもしょうがないので、それ以外のことで。 あとリンクばっかりです。すいません笑 ブログを始めました 1 月このブログを開設しました。 自己紹介的な記事が全くな…

Emacsで作るオレオレRStudio

この記事は RStudio Advent Calendar 2016 と Emacs Advent Calendar 2016 22 日目の記事です。 はじめに そもそもなぜ RStudio じゃダメなのか 無ければ作る!それが・・・ 環境 準備 Emacs を RStudio っぽく ESS 補完 オブジェクト構造の確認 オブジェク…

Emacs (ESS) で SAS のシンタックスハイライトを直す

はじめに 今回は小ネタです。 みなさんは SAS コードを何で書いてますか? Atom? Sublime Text? Vim? Emacs? 僕は Emacs で書いてますが、エディタの好みは人それぞれなので、好きな物を使えばいいと思います。 さて、Emacs で SAS を編集する際に便利なのが…

{haven}パッケージでストレスなくRとSASで分析する

R SAS

前置き 僕のメイン言語はSASとRなので、この二つを連携させたり行き来したりということがどうしても発生します。*1 そんなわけで、以前SASの中でRを動かす方法を書きました。 SAS/IML StudioでRを使う - データ解析備忘録 SAS/STATでもPROC IMLしてRを使う -…

Rでgroup_concatする方法をまとめる

この記事は R Advent Calendar 2016 4 日目の記事です。 group_concat について MySQL などの 多くの SQL には group_concat という関数があります。 どういう関数かというと、複数のレコードを一つにまとめるもので、たとえば以下のようなデータを考えます…

Emacsのddskkで辞書をGoogle IMEにする

Emacsでは日本語入力にSKKを利用しているのですが、どうもデフォルトの辞書では変換がショボいので、GoogleのIMEを使おうと思います。 何がすごいのか 例えば、「さーばー」と入力すると、自分で辞書登録せずとも サーバー、Server、server、SERVER が変換候…

(Macの)Rでipadic-neologdを使う

前置き 7月のTokyo.Rにて、こんな発表をしました。 RとMeCabと正規表現 MeCabでの顔文字とかの誤解析を前処理ではなく「後処理」で整理する、という内容だったのですが、こんな指摘がありました。 顔文字や機種依存文字を含む文書を形態素解析したいなら、me…

【SAS】アルファベットや飛び飛びの値でもループしたい

SAS

SASの繰り返しのマクロである%doループでは%do i=1 %to 10のように、整数値でしかループさせることができません。 今回は、整数以外でもループさせたいときの対処法をまとめてみます。 飛び飛びの値 飛び飛びの値とは、%do i=1 , 2, 3, 5のように整数が連続…

Tokyo.R #55 に参加してきた

R

Tokyo.R #55に参加してきました。 今回の会場はサイバーエージェント社。 今回は自分で補足できる内容がほとんどないので、現時点で集められたスライドをまとめるだけです。 ほぼ自分用メモです。 自分のLTについては別記事で補足を書きます。 初心者セッシ…

R Presentationで長いRの出力を表示したい

R

R Studioでプレゼンのスライドが作れるR Presentationですが、Rの出力が長い場合スライドからはみ出てしまいます。 回避方法として、1枚目のスライドのところに以下のCSSを書いてやることで解決しました。 <style> body { overflow: scroll; } </style> ページ内に入りきら…

SASのマクロ変数を文字列中で呼び出したいときの注意

SAS

備忘録。SASで文字列を入力したいとき、''(シングルクオーテーション)か""(ダブルクオーテーション)かはあまり気にせずに使って良いのですが、マクロ変数を使いたいときはちょっと変わってきます。例えば、以下のような適当なマクロを作って呼び出したいとき…

Tokyo.R #54の振り返りと補足

R

6/18にTokyo.Rに参加したので、遅ればせながら振り返りと(自分の知識の範囲内での)補足をしたいと思います。 初心者セッション 10分で分かるR言語入門 ver.2.19 質疑 パッケージを手動で入れるには? パッケージはinstalll.packagesや{githubinstall}パッ…

【SAS】PROC SQL では LIMIT 句が使えない

SAS

普通のSQLを書くとき、データが巨大だと一部をちら見するためにLIMIT 1000と書いて一部だけを抽出したりします。 SASのPROC SQLではSQLの構文がほぼそのまま使えて便利なのですが、LIMIT句はどうやら使えないようです。 代わりにOUTOBS=1000で指定すれば良い…

SASの(よく使う)ショートカットキー一覧

SAS

よく使いそうなSASのショートカットキーをまとめました。 製品版でしか試してないのでSAS雲丹でも同じかはわかりません。 他のソフトと同じもの キー 機能 Ctrl+C コピー Ctrl+X 切り取り Ctrl+V ペースト Ctrl+A 全選択 Ctrl+S 上書き保存 Ctrl+Shift+S 新…

MacTeXのbstファイル置き場

メモbstファイルは /usr/local/texlive/2015/texmf-dist/pbibtexstyファイルは /usr/local/texlive/2015/texmf-dist/tex/latexにある。usrフォルダをファインダーで開くにはターミナルで open /usr

Treasure Dataの日付範囲指定はイコールを含むのか

Treasure Dataでクエリを書くとき、where句で日付指定をする場合が多いわけですが、範囲はイコールを含むのでしょうか? 以前書いた記事でちょろっと触れてそこに答えもあるのですが、イコールの有無に焦点を当てたものも欲しかったのでメモ。 なのか なのか…

統計の誤解と濫用や「p値至上主義」を憂慮しp値の6原則を発表したASAの声明に対する統計学徒の素人意見

アメリカ統計学会がp値に関して以下のような声明を3月7日(現地時間)に発表したということで注目を集めているようです。AMERICAN STATISTICAL ASSOCIATION RELEASES STATEMENT ON STATISTICAL SIGNIFICANCE AND P-VALUES https://www.amstat.org/newsroom/p…

Matlabで変数の削除

新しい言語、特に対話型のをやると必ず気になるのが変数の除去について。Matlabの場合、は以下のようにやります。変数をすべて除去 clearvars 特定の変数を削除 変数名をvariablesで指定 clearvars variables 特定の変数を残してあとは削除 keepVariablesで…

多項分布とディリクレ分布のまとめと可視化

多項分布とその共役事前分布について、可視化をしながら整理してみたいと思います。 どちらかというと、可視化をしてパラメーターで分布の形がどう変わるのかを見ることがメインです。 多項分布とは 二項分布の一般化と考えればよいです。 「コインを投げた…

『R言語徹底解説』(原著 "Advanced R")を読んだので感想を書く

待望の『R言語徹底解説』が届きました。(2/10) R言語徹底解説作者: Hadley Wickham,石田基広,市川太祐,高柳慎一,福島真太朗出版社/メーカー: 共立出版発売日: 2016/02/10メディア: 単行本この商品を含むブログ (29件) を見る本来は昨年のクリスマスあたりに…

sas7bdatファイルの作成と各種ソフトでの読み込み

sas7bdatとは何か sas7bdatというファイル形式があります。これは一言で言えばSASで作ったデータのファイル形式です。 このファイル形式はSASのいろいろなアウトプットを格納できて、例えば回帰分析後のパラメーター推定値や予測値、ベイズ推定のMCMCであれ…

RMeCabの顔文字の誤解析を後処理で消す

顔文字を含んだ文の解析 {RMeCab}、日本語の形態素解析に便利なのですが顔文字の分類は苦手です。 例えば、 words ふう。お腹いっぱい( ´•౪•`) 暇だな(☝ ՞ਊ ՞)☝ 試験頑張るぞ\\\\ ٩( ‘ω’ )و //// というデータフレームを解析して単語の頻度を数えるとし…

SASでライブラリ内のデータセットを全て削除する

SAS

タイトルの通りSASでライブラリ内のデータセットを全て削除する方法です。 Rでいうと rm(list=ls()) にあたるものですが、SASだとライブラリという概念がある点で異なります。 特にライブラリ名を指定してない時はWORKライブラリが割り当てられています。 例…

【SAS】PROC SQLが強かった件

SAS

SASでデータ集計をやらなきゃいけなくなって、SAS初心者*1の僕がいろいろ調べた結果、SQLプロシージャがよさそう。使ってみた結果、とても便利だということが分かったので使い方を自分用にメモ。 SQL文がそのまま使える MySQLなり、SQLiteなり、HiveQLやPres…

『ベイズ法の基礎と応用』を読みました

間瀬茂先生による『ベイズ法の基礎と応用-条件付き確率分布による統計モデリングとMCMC法を用いたデータ解析-』が昨日に発売されたようなので早速買ってみました。ベイズ法の基礎と応用 条件付き分布による統計モデリングとMCMC法を用いたデータ解析作者: 間…

IMLの行列とSASデータセットを行き来する

SAS

IMLで作った行列をSASデータセットとして使いたいとき。 SASデータセットをIMLに取り込んで行列にしたいとき。 IMLで作った行列をSASデータセットにする 必要なコマンドは create A var { 取り出したい変数名 }; /*Aは作りたいデータセット名*/ append; clos…

TreasureData Command Line のインストール

TreasureDataで、以下のように結果が重すぎてブラウザからダウンロードできないとき、ターミナルからコマンドライン(CLI)でダウンロードできます。 その手順を説明します。 手順 環境設定 Rubyを使います。 1.9.0以上じゃないと対応してないみたいです。 ま…

GitHubを初めて使う準備

GitHubを初めて使うときの準備的な。 要点は1個だけですが(笑) 環境はWindows10 GitHub for Windowsのインストール これをインストールしないと始まりません。 desktop.github.com 最新版をインストールします。 インストールすると二つのショートカットが…

Prestoでの日付の扱い方

Prestoで日付の処理に躓いたのでメモ。TreasureData (TD)ってUDF(user defined functions)が多いから、HiveにしろPrestoにしろ結構躓いたりするんですよね。 公式のマニュアルページが手放せません。 docs.treasuredata.com今回はこのなかで初心者やSQLユー…

重回帰のパラメーター推定理論とSAS/IMLによる行列実装

統計学の「基本の「き」」である重回帰を復習しながらSAS/IMLで行列で実装していこうと思います。 理論 重回帰を式で表すと、 となります。 これを行列で表すと 要素を書き下すと となります。

史上最大の素数が本当に素数なのか確かめてみた

史上最大の素数が更新されたらしいです。wired.jpこういうの見つける人ってすごいですよね、、、 でも この数って本当に素数なの? という疑問がわきます。気になります。 どうしましょう。 確かめてみましょう。素数を見つけるのは大変でも、ある数が素数か…

LaTeXで左上付き文字

僕の通う大学の数学の教授で、転置行列の t を右上ではなく左上に書く人がいます。 これをTexでどう書くのかなーと思って調べたら判明したので自分用にメモしておきます。結論から言うと超簡単でした。 %数式内で ^{t}A 出力 化学の論文とかで質量数12の元素…

Python3.5でワードクラウドを描く

Pythonでワードクラウドを描く方法は、すでに結構な数の記事があるので、基本はそこを見ればいけます。 なので、今更僕が解説するようなことはしません。 例えば qiita.com ライブラリの入れ方も丁寧に説明してくださってます。 今回もこのページをほぼその…

LaTeXで「1」を白抜きにする

インディケーター関数とかで「1」を白抜きにしたいとき。 これは元々のtexには入ってないので自分で定義します。 1とl(Lの小文字)を組み合わせて作るといった感じです。 %プリアンブルで \newcommand{\1}{\mbox{1}\hspace{-0.25em}\mbox{l}} %数式内で \1 (y…

jsonを楽に扱えるjqコマンドを導入(Mac, Windows)

データ解析の一連のプロセスの中で、前処理の占める割合はたいへん大きいです。 その前処理のなかで、json形式のものを楽に扱えるjqコマンドというものがあります。json形式はデータベースなんかではよく見る形式で、自分でも個人的に必要になったのでその導…