まだ厨二病

RとPyhtonを使ったデータ分析・統計解析らへんの話題をしていくだけ

2017年度版 RStudioを使ったReproducible Research、補足ポエム

この記事はRStudioアドベントカレンダーの10日目の投稿の補足です。私ももう、ゴールしても良いよね、という気になってきました(注)。本体は以前書いた記事で申し訳ないのですが、 qiita.com になります。古くなったので刷新し、追記をしました。 RによるRep…

中級者向けggplot2でこんな図が描きたい - 地図編

どーも。ggplot2は空手の一種として知られているので(要出典)普段の稽古が欠かせまん。今年を振り返り、ggplot2での作図について、いくつかの知見を共有します(書いている余裕がなかったんや...) library(magrittr) library(jpndistrict) ## Loading req…

本日発表!ほくぽえむ大賞2017 俳句の部

ホクソエムといえばポエムです(要出典)。今日はTwitterでのホクソエム氏の投稿から、俳句を探してこようと思います。そして、今年のベスト俳句を独断と偏見により決めます。戦略としては、Twitterから投稿を取得、日本語形態素解析システム JUMAN++により…

ある日tidyと一緒に: tidyverseは厳しいがとても優しい

この記事はtidyポエムAdvent Calendarの4日目の記事となります。タイトルは釣りです。釣られた人は乙でした。 本当のタイトルは「tidyverseは厳しいがとても優しい」です。某ホクソエム氏のようです(個人の意見です)。 uribo.hatenablog.com tidyverseな世…

私とホクソエム

この記事は「HOXO-M Advent Calendar 2017」の2日めです。昨日は id:yutannihilationさんの「出ない順ホクソエム語彙集(その1)」でした。ホクソエムってなんなんでしょうね笑 さて、2日目は私が担当します。それでは聞いてください「私とホクソエム」。 現…

macOS (High Sierra)で利用しているRからタイムゾーンの警告がでる件とその対策

タイトルの通り、macOSを使っている皆さん、こんな警告を見たことはないだろうか。 lubridate::today() # [1] "2017-11-30" Warning message: In as.POSIXlt.POSIXct(x) : unknown timezone 'zone/tz/2017c.1.0/zoneinfo/Asia/Tokyo' なにやらタイムゾーンで…

熱いプルリクエストをお待ちしております

今日の話。先日CRANにあげたパッケージに早速バグが見つかって、ちょっと直していた。直していると人間不思議なもので、余計な機能改善までしたくなってしまう。それで罠にはまった、という失敗談。 ...失敗談でもあるのだけど、罠にはまっていたところ r-wa…

標準地域メッシュを扱うRパッケージを更新しました: jpmesh v.1.0.0

ここでさりげなく触れたのですが、jpmeshという、国勢調査などの統計調査に用いる標準地域メッシュをRで扱うためのパッケージを更新し、CRANにリリースしました。これまで対応していたメッシュのスケールをより細かくし、125mメッシュまでを扱えるようになり…

自分のRパッケージページにORCIDを表示させる

Rのパッケージについて、CRANでその情報を見る際、Authorの欄にORCIDを埋め込めるという話。 RのパッケージはAuthor欄にORCIDを埋め込めるって知ってました? 例:https://t.co/mDCdLxJZOw — Hiroaki Yutani (@yutannihilation) November 16, 2017 これにつ…

Rで名刺 ggplot2編

新しい職場で名刺を作る機会があったので、Rで作ることにしました。 Rで名刺を作成するというマニアックな知見は以前からありますが、これらはいずれも標準の作図機能を利用しているもので、せっかくなのでggplot2で作れないかと試行錯誤しました。 松村俊和…

hex mapの決定版になりそうなhexmapr

以前、このような記事を書きました。 uribo.hatenablog.com ここに書いた通り、私は簡単に六角形の地図を描画できるパッケージを探しています。 今回紹介するのは、前回のhexamapmakerとは別の方法で六角形を作るhexmaprパッケージです。geospatial polygons…

転職・転居しました: 大学→企業→研究機関

初めての転職 & 引越しエントリー 要約 10月末をもって株式会社ナイトレイを退職しました。また、次の職場となる国立環境研究所への勤務のために茨城県つくば市へ引越しを行いました。生態系サービスの評価や生物多様性の保全に関する実証研究の技術的補佐を…

世界を六角形で表したい

これはなんでしょう。 そう、日本ですね。正しくは日本列島を簡略化し、各都道府県を六角形 (hexagons) で表現した図です。日本列島がおさまってしまうネタ画像が出回るほどに面積の大きな北海道が他の都道府県と同じサイズで小さくなってしまっていたり、現…

地名情報を地図に反映させる

Google MapsやOpenStreetMapに慣れてくると、地名や地物のラベルが地図上に表示されていることに違和感がなくなり、感謝の気持ちが薄れてしまうなと感じる今日この頃です。みなさまいかがお過ごしでしょうか。 今日は、ラベルつきの地図への感謝の気持ちを思…

Rラジオをやってみての感想

R

先日、年始に立てた目標の一つである「Rラジオ」をやることができた。自分一人では成り立たなくて、ゲストとして id:yutannihilation さんに参加してもらった。感謝しかない。謝謝(収録後に坦々麺を食べに言った)。 uribo.hatenablog.com 口で喋るのは難し…

見えないRの関数のソースコードを読む

要約 lookupパッケージで標準の関数定義ソースコードの出力機能を改善する 総称関数や.C(), .Internal()などの関数で呼び出されるコードも出力 prettycodeパッケージで関数定義のハイライトを有効にする prettycodeはRの起動時に読み込み、lookupは適宜、名…

データフレームの特徴をもっと早く掴みたい ~ ハドリーへの挑戦

探索的なデータ分析 (Explore Data Analysis: EDA)を行う際は、データの要約や欠損の有無の確認、可視化が欠かせない作業となります。 特に可視化は、データのもつ性質や関係を表現するのに大変役立ちます。一方で、可視化に用いた図はコードとは別に保存す…

RStudioを使ってKaggleコンペティションをやっていくためのプロジェクトテンプレートを作っています

はじめに注意書きですが、この記事で書かれているプロジェクトテンプレート機能は、今日現在、開発版のRStudioを利用したものです。厳密には、実行のためにはv1.1.28以上である必要があります。おそらく次の安定版には盛り込まれる機能であると思うので、し…

Rおじさん、Pythonistaになる

こちらをご覧ください。踏み絵ではありません。R上で地理空間データを扱うPythonモジュール、geopandasによる作図を行なっている画面です。 え、RでPythonを!?と驚かれる方もいるかもしれませんが、reticulateというRパッケージを使うことで、ほぼストレスフ…

データフレームの変数を正しく扱うためにreadr::type_convert関数やreadr::parse関数群を使う

Rをやっていると時々、データ型の違いによる関数実行の失敗や不正確な結果の出力が起こる。errorで処理が停止したりwarningで間違っていることがわかると良いのだけど、間違ったデータ型で処理が通ってしまって、結果を見て「あれへんだな」ということがある…

Kaggleでも利用されている高圧縮ファイル形式7zをRで解凍する

たまたまKaggleのDatasetsをのぞいていたのだが、そこで.7zという見慣れない形式のファイルが提供されていた。容量はテスト用のファイルで1GBを超えている。大きい…。ダウンロードするにも時間がかかるのだけど、それよりも問題だったのは、この.7z圧縮ファ…

すっからかん(欠損値しかない)の列を削除して完全データにしたい

【20170518 追記】 あーだこーだしているが、ゆた兄さんに教えてもらった方法を使った方が楽チン。 @u_ribo ちがった、_at()じゃなくて_if()でよかったのでした! 存在を忘れてた。df.list %>% select_if(function(x) VIM::countNA(x) < 1)— Hiroaki Yutani …

【小ネタ】リストにNULLがある場合のpurrr::map系関数の挙動

タイトルが適切かわからないが、小ネタ。次のようなリストオブジェクトがあるとする。リストに含まれる要素はname, age, genderの値をもっているが、2番目の要素はgenderがない、というようなもの。 library(purrr) x <- list(list(name = "A", age = 23L, g…

estatapiパッケージで読み込めないデータの取得を諦めない

先日、estatapiパッケージを使って政府統計の総合窓口 e-statが提供する統計データの取得を行おうとしました。 library(tidyverse) library(estatapi) df.list <- estat_getDataCatalog(appId = Sys.getenv("ESTAT_TOKEN"), searchWord = "自然公園") df.tgt …

readxlパッケージ 1.0.0の主要な変更点

先日、エクセルファイルのデータをRに読み込ませるパッケージのreadxlパッケージの1.0.0がCRANに登録されました。 実はしばらく更新を追えていなくて、色々な新機能があったのでメモしておきます。まとめると以下の通りです。気になった点を挙げていますので…

日本の人口密度を可視化する: population lines

少し前(4月下旬ごろ?)に、redditで人口密度の高さを表現した地図が話題になりました。 www.reddit.com この地図は、James Cheshire博士 (@spatialanalysis)が2014年に投稿した “Population Lines Print” が元となっていて、再現性のあるRコード、ヨーロッパ…

日付から曜日を取得する関数と日本語表記の対応

日付から曜日を取得する関数としてlubridate::wday() (days of the week)をよく使う。この関数は曜日を与えて実行し、デフォルトでは数値化した値(日曜日を起点 1とした1から7までの値)を返すが、label引数を有効化することで曜日のラベルが得られる。また省…

Microsoft Cognitive Service Face APIにローカル上の画像を投げる

dichikaさんのMicrosoft Cognitive Serviceを使った記事、APIに投げる画像はサーバ上にある必要がある、ということだが、リクエストボディのContent-Typeでapplication/octet-streamを指定することでローカルファイルをサーバを経由せずに直接投げることがで…

leafletでベースタイルを表示させずにポリゴンだけを表示する方法と投影法を変更する方法

先日行われたGlobal Tokyo.Rにてleafletについて発表してきました。発表後、ドイツからの参加者 @henningsway から質問をもらいました。それがタイトルの内容です。ちょっと焦っていたので、いや多分無理、みたいな回答になってしまいましたが、落ち着いてや…

leafletで描画した地図を画像ファイルとして保存する

お手軽に地図データを表示するために{leaflet}を頻繁に利用しているが、出力した地図を画像に保存するにはOSのスクリーンショット機能やアプリケーションを使う必要があって面倒だった。 調べてみると{mapview}パッケージに{leaflet}のレンダリング結果を保…