好書妙評之《R語言實戰》

陳鋼發表於2012-10-16

《R語言實戰》書評

評論人:Dirk Eddelbuettel Debian專案

Journal of Statistical Software 2012年2月

《R實戰(R in Action)》

  • 作者:Robert I. Kabacoff
  • 出版社:Manning, Shelter Island, NY, 2011.
  • ISBN 978-1-935-18239-9. 472頁. USD 59.99.
  • http://www.manning.com/kabacoff/

Robert Kabacoff的《R語言實戰》一書是非常好的R入門書籍。本書評會介紹該書的一些特別之處,當然也會指出這本非常值得推薦的入門書籍中的一些不足。

這本書分為四個部分。第一部分是“Getting Started”,介紹了R的獲取和安裝。接下來的一章介紹如何建立資料集,然後是對圖形的基本介紹。從初級到高階的資料管理佔據了兩章的篇幅,其中還介紹了資料結構、控制流和函式。

第二部分是四個部分中最短的。首先是對基本統計方法的概述。重點是描述性統計量和繪圖,以及基本的推斷。接下來是第三部分“中級方法”,這是最長的一個部分,由5章組成。首先是迴歸分析,包括迴歸診斷和後迴歸分析。方差分析佔據了一章,然後是效能分析,最後以中級的圖形結束這一部分。

最後一部分的重點是高階方法,包括4章。通用線性模型擴充套件了前面的迴歸分析。主成份和因子分析涵蓋了多元統計。第3章深入討論了缺失值的問題。最後一章回到了圖形,討論了lattice、ggplot2,以及互動式圖形。

除了這四個部分的主要內容,該書還有八個簡短的附錄。這些附錄的內容涉及圖形介面、自定義R啟動、資料和圖形的匯出、矩陣代數運算等方面的各種技巧,還列舉了該書中所涉及的各種擴充套件包,介紹了大資料處理,最好講述瞭如何更新R。這些都是值得一讀的內容,但很好奇為什麼不把這些好東西放到書的正文中。

縱覽全書,Kabacoff展示了他對R的精通,對各種內容的嫻熟,及其深厚的統計學基礎。這確實是一本能讓人獲益匪淺的好書。

我只發現了一些小問題:第2章中關於資料註釋的討論如果能提及comment或attribute函式就更好了。同樣,在4.3節中記錄年齡的變數可以用cut更緊湊地實現。在圖5.5中的圖中是用來自pretty的有限的點畫出的正態分佈。但這個圖中是一條條的線段,應該用curve(dnorm)把它畫得更平滑些。第5章中說迴圈式低效的,建議使用apply函式,但實際上隨著R解析器的不斷改進,這兩者間的差距已經不是那麼的明顯。

類似的,這本書的編輯工作也有一些不足。同一章中的圖形所使用的字型卻不相同。還有一些書寫錯誤:第8.2節中的普通最小二乘估計器的最後一個,也是最主要的一個公式缺了負號。不過,最糟糕的事情應該是,這本書裡面大量的引用了他人的工作,但卻沒有一節“參考文獻”來介紹其所引用的這些工作。

瑕不掩玉,Kabacoff的這本書是R入門的好書,對R的各個方面都做了介紹。《R語言實戰》應該是R語言入門課程,甚至是進階課程的好教材,也是研究人員和相關人員自學R語言的好書。

書評人:

  • Dirk Eddelbuettel
  • Debian專案
  • Chicago, IL, United States of America
  • 電子郵件: edd@debian.org
  • 網址: http://dirk.eddelbuettel.com/

相關文章