読者です 読者をやめる 読者になる 読者になる

Powershellで一時的にPATHを変更する

Seleniumをちょっと試しに動かそうと思ったら、ブラウザのドライバにパスが通ってないとだめだった。ちょっと試しに動かしたいだけなのでPathをグローバルにいじりたくはない。 stackoverflow.com

ggplot2 2.2.0 を使ってみる

追記(2016/11/13): この記事は「ggplot2 2.1.0.9000を使ってみる」として公開していたものです。ggplot2 2.2.0は先日リリースされましたが、この記事を公開して以降レポジトリのNEWS.mdに変更がなかったのでそのままタイトルを変更しました。 公式のアナウン…

ggplot2 2.2.0で2軸グラフを描くときのメモ

ggplot2 2.2.0で2軸グラフが描きやすくなりました。 描きやすくなりました、という微妙な言い方をしましたが、軸が2つつくれるだけで値のスケールは自分でやらないといけません。その辺のメモ。

メモ:httr::stop_for_status()とhttr::http_error()の違い

http_error()はエラーだったらTRUEになるやつで、stop_for_status()は成功つまり2XX系じゃなかったらstop()するらしい。「エラーだったら」と「成功じゃなかったら」のニュアンスの違い… x <- GET("http://httpbin.org/status/300") http_error(x) #> [1] FA…

メモ:Rでtelnet的なことをしたいときはsocketConnection()にcat()する

R

telnet的なことをしたいときはsocketConnection()でコネクションをつくってそこにcat()とかwriteLines()とかすればいいらしい。以下はテキストでHTTPリクエストを投げる例。

「Rで楽しむ統計(Wonderful R 1)」(奥村 晴彦著・石田 基広監修)を読んだ。

ご厚意で「Rで楽しむ統計」を頂きました。ありがとうございます!!! 読んだ。と言い切りつつまだざっと目を通しただけなんですが、すばらしい書評があふれて書くことがなくならないうちに書こう、今ならまだ薄っぺらい読書感想文でも許されるのでは?とい…

library(tidyverse)でtidyverseに決断的ダイブ!

R

これめっちゃ便利なのでは… New tidyverse packages makes it easy to install & load packages from the tidyverse: https://t.co/toVme1jeEY. To CRAN next week #rstats— Hadley Wickham (@hadleywickham) 2016年9月6日

メモ:dplyrがバックエンドにSQLを投げるときの流れ

ちゃんと追ってないけど、print()するにせよcollect()するにせよ結局collect.tbl_sql()が呼ばれるっぽい。

メモ:httr::GET()にリクエストボディを指定したいときはhttr::VERB("GET", ...)で

たまーにGET()にリクエストボディを指定したいときがあります。 そもそもGETリクエストにリクエストボディを含めるのは、RFCでも奥歯にものが挟まったような書き方がされています。ダメならダメってはっきり言ってくれればいいのに。。 A payload within a G…

メモ:httrのVERB関数の引数に指定できるもの

たとえばGET()はこんな感じ。urlはいいとして、configと...が謎。 packageVersion("httr") #> [1] ‘1.2.1’ httr::GET #> function (url = NULL, config = list(), ..., handle = NULL) #> { #> hu <- handle_url(handle, url, ...) #> req <- request_build(…

同じ愚を繰り返さないために何度Rを繰り返せばいいのかをRによって知りたい

ちょっとした猫に関するパッケージを作りたくて、猫っぽいパッケージ名というとあれです、purrrがありますよね(猫が喉を鳴らす時の音?らしいです)。安易安直な私は、じゃあpurrrrにしようかな、と思うわけですが、待てよ、と。パッケージ名が似ていること…

RからDigitalOceanにサーバを立てる

というのをやるのにはちゃんとパッケージがあります。羽鳥とかキャプテンアメリカとかもauthorに入っているということで使わない理由はありません。 が、人間は理由に隷属する生き物ですが、敢えてそれに抗う愚かさも兼ね備えています。ということで(?)、…

メモ:listの要素にNULLを代入する

R

listの要素のNULLを代入するとどうなるか。Rおじさんならみんな知っているこの操作。 x <- list(a = 1, b = 2) x #> $a #> [1] 1 #> #> $b #> [1] 2 x$a <- NULL x #> $b #> [1] 2

メモ:purrr::map()は深い階層の要素でも一発で取り出せる

R4DSに書いてある話。 たとえばこういう要素があるとする。

メモ:Rのパッケージリリース前に自問自答する

羽鳥がツイ消ししてしまったけど、ちょっとした論争?があってzzz.rを眺めていて、こんな関数があるのに気づきました。元の論争とは関係ないんですけど。 release_questions <- function() { c( "Have you built the book?" ) } (https://github.com/hadley/…

Tokyo.RでrwinlibについてLTしてきました。

第56回東京R勉強会@東京(a.k.a. Tokyo.R)でLTしてきました。Rcpp祭りという風の噂を聞いて、私に話せるといえばこれくらいかなと思って発表しました。 匿名バイナリ配布集団rwinlib from yutannihilation

TwitterのAPIドキュメントをスクレイピングしてRのパッケージを自動生成する

R

というやり方でパッケージをつくってみました。まだエラーが残ってますが、たぶんある程度は動くはずです。 Rのコードを生成するRのコードはこちらです。 twihttr/generate_R_code.R at master · yutannihilation/twihttr · GitHub あんまり大したことはして…

R MarkdownでRのコードから画像URLを埋め込む

GithubのAPIからemoji一覧を取れることに気づいたので、一覧で出力したいと思ってやり方を探したときのメモ。

estatapiパッケージ0.3.0をリリースしました

夏ですね。夏休みの自由研究のネタに困っているみなさんのために、e-Stat APIをRから使うためのパッケージestatapiの新しいバージョンをリリースしました。 CRAN - Package estatapi すでにCRAN上にあるので、 install.packages("estatapi") すれば0.3.0がイ…

e-Stat APIバージョン2.1をRから使う

e-Stat APIがちょっとバージョンアップしていて、統計データ取得APIのデータ形式にCSVが追加されました。 前にRからe-Stat APIを使ったときはちょっとJSONをdata.frameに直すのが大変すぎて、 estatapiというパッケージをつくったんですが、 …ひょっとしても…

R使いのためのDocker「Rocker」をScalewayの物理サーバで動かす

フランスのベアメタルサーバホスティングサービスScalewayが前から気になってたので使ってみました。 Scalewayでは、月€2.99を払ってdeveloper accountにアップグレードするとDockerファイルをビルドしてつくった自作イメージを使うことができます。 www.sca…

dplyrのmutate_if()とかについて

1か月前にキターとつぶやいたものがついにCRANにきたのでそれについて書きます。 Colwise update https://t.co/AotXyUjYmv キター!— Hiroaki Yutani (@yutannihilation) 2016年5月31日

dplyr 0.5.0を使ってみる

※この記事は4/9に書いた「dplyr 0.4.3.9000を使ってみる」という記事を加筆したものです 「1か月くらいしたら新しいdplyr出るよ」とHadleyが言ってました。 Getting ready to start dplyr release process. Over >150 issues fixed: https://t.co/N6fOAnN5pF…

メモ:install_github()で「cp: unknown option -- )」とかいうエラーが出る

最近こんなエラーが出る。↓はdlmパッケージのZIPを取ってきて解凍してそれをインストールしようとしたとき(tools::Rcmd()はR 3.3.0から加わった関数) tools::Rcmd("INSTALL . --install-tests --debug") #> processing '.' #> a directory #> * installing…

Rの依存パッケージにCRANにリリースされる前のものを指定する。

devtoolsパッケージでinstall_github()するときには、CRANにリリースされていないパッケージも依存パッケージとして指定することができます。 Devtools dependencies

RのパッケージをインストールするAnsible Moduleをつくりました

Rは主にWindows環境で使っていて、Linux環境は必要なときにつくって壊す、ということをしています。で、環境構築をAnsibleでやれないかな?と思ったときに、こういう書き方をしたくなります。 - name: Install hadleyverse cran: name={{ item }} with_items…

Rのglobal string poolに溺れる

だいぶ昔にdplyrにこんなIssueを立てたことがあります。r-wakalangでの議論のスピンオフ企画みたいなものです。 この時に、Rの文字列型データがメモリ上でどのように保持されるかについてちらっとコメントがついていました。 dplyr should be taking advanta…

ggplot2で円を描く

なんかそんな話で微妙にTLが盛り上がっていて、やろうとしたら意外とむずかったのでメモ。

ちょっとしたポップアップ代わりにShinyを使う

Rでパスワードを入力するときには.rs.askForPassword()が便利ですが、たしかこの関数は↓のIssueで見つけました。 で、そういえばHadleyが別解としてShinyがどうとか言ってたなあ、と思い出してちょっと使ってみました。

メモ:FreeBSD 10.2でRStudio Serverをビルドしようとした

さっきの記事の続き。 基本的にはここの指示に従う。 ただし、FreeBSDについては指示がないのでlinuxのところを見ながら何をすればいいか推測する。

メモ:FreeBSD 10.2でRをビルドする

必要なパッケージをインストール $ sudo pkg install gcc gmake wget icu ビルド $ wget https://cran.r-project.org/src/base/R-3/R-3.2.5.tar.gz $ tar xf R-3.2.5.tar.gz $ cd R-3.2.5 $ env MAIN_LDFLAGS=-Wl,--export-dynamic CC=clang CXX=clang++ ./c…

Tokyo.RでdplyrについてLTしてきました。

第53回東京R勉強会@東京(a.k.a. Tokyo.R)でLTしてきました。発表の概略はこちらのスライドをご覧ください(一部省略したスライドがあります)。 dplyrとは何だったのか from yutannihilation

Why are you using UTF-8???

追記(2016/5/1):直りました!!! 追記(2016/12/1):と思ったらそのあとまた壊れてました!!!(涙) Encoding problems on Windows caused by character -> symbol -> character roundtrip · Issue #1950 · hadley/dplyr https://t.co/b6dESZt5WZ フワー…

Ubuntu 16.04でRStudio Serverを動かす

Ubuntu 16.04(Xenial)が4/21にリリースされましたが、DigitalOceanでさっそく使えるようになっていたので、ひとまずRとかRStudio Serverをインストールしてみたときのメモ。 結論から言うと、軽く触った感じ何の問題もなく動いてそうでした。

メモ:e-Stat APIから入手できるデータの大分類ごとの数

e-Stat APIで提供しているデータの分野は以下のページにまとまっていますが、「あれ、データない?」と思って調べた時のメモ。 統計分野 | 政府統計の総合窓口(e-Stat)−API機能

メモ:dplyr::mutate()に引数のリストを渡したいときは.dotでがんばるよりpurrr::invoke()

これはうまくいく。 common_params <- list(zero = 0, one = 1) data.frame(x = seq(1, 10)) %>% mutate_(.dots = common_params) #> x zero one #> 1 1 0 1 #> 2 2 0 1 #> 3 3 0 1 #> 4 4 0 1 #> 5 5 0 1 #> 6 6 0 1 #> 7 7 0 1 #> 8 8 0 1 #> 9 9 0 1 #> 1…

メモ:S4のクラスをつくるときはCollateが必要

R S4 DBI

DBIを使ったパッケージをつくろうとしていて、なんか in method for 'dbConnect' with signature '"SPARQLDriver"': no definition for class "SPARQLDriver" みたいなエラーが出る。 なんでかなと思って調べてたら、 Collate controls the order in which R…

メモ:httrでSPARQL

↓この記事をhttrでやってみる。

dplyrで複数カラムを追加したいと思ったときはpurrrでslice_rows+by_slice

r-wakalangでそんな話があった時のメモ。もっといいコードがある気もしつつ、まあこれが割とシンプルなのではないでしょうか。問題は、purrrの使い方をいざという時に思い出せないというだけで。。(重大) plyr::mdply() 私はポストplyr世代なのでplyrまっ…

メモ:RでOradano明朝フォントを使う。

R

Oradano明朝というフォントを見かけて面白そうだったので使ってみました。 Oradano明朝フォントを十年半ぶりにアップデートしました。よろしければRTじゃなくDLを!https://t.co/B7whehY9ZXお気に召したらFavじゃなく用例ツイートを!!もしくはバグレポート…

lubridate 1.5.6を使ってみる

1.5.0 → 1.5.6なので大きな変更はないんですが、いくつか新しい機能追加があったので。

メモ:httrでJSON形式のリクエストを送るときのコツ

httrパッケージでJSON形式のリクエストを送るときは、bodyに送りたい内容を、encodeに"json"を指定します。 たとえばこんな感じです。 httr::POST("example.com", body = list(id = 1), encode = "json") このとき、bodyに渡されたリストは最終的にどのよう…

RからWunderlist APIを使うパッケージwunderlistrをつくりました

Rに管理されたい勢のみなさまこんにちは。 WunderlistというToDo管理ツールがあって前からちょっと気になってたところ、↓の記事を見かけました。 ということで(?)、RからAPIを使うパッケージをつくりました。これでもうRに管理され放題ですねっ!

estatapiパッケージがCRANで公開されました。

政府統計の総合窓口 e-StatのAPIをRから利用するパッケージestatapiがCRAN上に公開されました。 CRAN - Package estatapi ということで、install.packages()でインストールすることができるようになっています。 install.packages("estatapi") estatapiパッ…

Travis CIでRがsudo: falseで使えるようになったので試してみた

ちょっと前にRStudioのブログにそんな話が出ていたので使ってみました。

メモ:dplyrの中で使われるDBIのメソッドをリストアップする

dplyrのバックエンドとして使えるようにするにはDBIのメソッドを実装しなくてはいけません。とはいっても全部実装しなくてもいいはずで、じゃあどれを実装すればいいのかと言うとAdding a new SQL backendを読めばいいはずなんですが、いまいちピンと来なか…

メモ:httr::oauth2.0_token()のredirect_uriを変える

@teramonagiさんのこのパッケージ、httr::oauth2.0_token()だとムリなのかな?と思ってやってみたらムリだったけどメモ。

Rでいらすとやからアナゴのイラストを取ってくる

追記(2016/03/17):@dichika氏から指摘を受けて、以下を修正しました。annotation_raster()に渡すのはrasterでなくてもいいらしいです(rasterでもいい)。 as.raster(httr::content(httr::GET(url)) → httr::content(httr::GET(url)) 思い出はいつもキレ…

メモ:Rtools 3.3のパスが変わってた

前にちらっと書きましたが、Rtools 3.3からはGCCのバージョンが4.9.3になります。 notchained.hatenablog.com GCCのツールチェインは以前はC\:Rtools\gcc-4.6.3にありましたが、新しいのはC:\Rtools\mingw_64\binとC:\Rtools\mingw_32\binに変わったみたいで…

Extending ggplot2を訳しました。

ggplot2がバージョン2.0.0になって、拡張パッケージをつくりやすくなりました。そのやり方を解説しているvignetteを、需要があるのかさっぱり分かりませんが、、訳しました。 ggplot2を拡張する(原題:Extending ggplot2) ちなみになぜGithub pagesにした…