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

Pychef's Diary

I consider myself an engineer, aren't I?

『ビジネス活用事例で学ぶ データサイエンス入門』第3章のggplot2エラー対処法

R ggplot2

夏休みに、Rを勉強しようとid:yokkunsさんのビジネス活用事例で学ぶ データサイエンス入門を購入しました。前線で活躍されている方々の知識を2200円+税で買えるなんてお得すぎる!なんのためらいもなく購入です。

「Rの文法って特徴的だな~」と思いつつ第3章をカチカチ打っていたところ、p.61ページのggplot2でヒストグラムをプロットするところでエラーが発生(R-Code 03-08)。

 

Error : Mapping a variable to y and also using stat="bin".

With stat="bin", it will attempt to set the y value to the count of cases in each group.
This can result in unexpected behavior and will not be allowed in a future version of ggplot2.
If you want y to represent counts of cases, use stat="bin" and don't map a variable to y.
If you want y to represent values in the data, use stat="identity".
See ?geom_bar for examples. (Defunct; last used in version 0.9.2)

 

p.62上段のヒストグラムが描画できない!付録のオリジナルコードでもダメだった。エラーメッセージをみてみると、geom_bar()が怪しい模様。"If you want y to represent values in the data, use stat="identity"とあるように、以下のように書き換えるとアッサリ解決。

 

ggplot(mau.payment.summary, aes(x = log_month, y = total.payment, fill = user.type)) + geom_bar(stat="identity") + scale_y_continuous(label = comma)

 

きっと、R上級者の人にとってはショボすぎる問題でしょうけど、僕みたいなペーペーには困ると思うし、なによりヒストグラム1つがプロットできないからって、こんな素晴らしい本から途中離脱するというのはもったいなすぎると思ったので記しておきます。

「うごかねーからやーめた」なんてことは、技術書には往々にしてありえますからね(eg. 過去の自分)。