2012-09-11 183 views
46

我試圖理解爲什麼發展已從reshape轉變爲reshape2包。它們在功能上似乎相同,但是,由於服務器上運行的R版本較舊,因此我無法升級到reshape2。我擔心可能會發生一個重大錯誤,將發展轉向一個全新的包,而不是簡單地繼續開發reshape。有誰知道reshape包裝中是否存在重大缺陷?重塑vs重塑在R

+0

'reshape2'替換'reshape'。但你的問題是什麼? – Andrie

+1

你發現官方文檔是正確的?http://cran.r-project.org/web/packages/reshape2/reshape2.pdf這個關於如何使用reshape2的解釋如何? http://wiki.stdout.org/rcookbook/Manipulating%20data/Converting%20data%20between%20wide%20and%20long%20format/ – Wilduck

+0

是的,我看到了官方文檔。會看看你的第二個鏈接,謝謝。我想弄清楚什麼改變了? 'reshape2'與'reshape'有什麼不同? – Alex

回答

61

reshape2讓哈德利重新啓動reshape,這種方式更快,同時避免打亂人們的依賴和習慣。

https://stat.ethz.ch/pipermail/r-packages/2010/001169.html

Reshape2是重塑包的重新啓動。自從該軟件包首次發佈以來,已經有超過五年的 ,並且在那段時間裏我學到了大量關於R編程的 以及如何使用 中的數據.RRhahape2使用該知識爲重塑 更集中且更快速的數據。

該版本以功能爲代價提高了速度,因此我已將其 重命名爲reshape2以避免對現有用戶造成問題。 根據用戶反饋,我可能會重新介紹其中一些功能。

什麼新的reshape2

  • 相當快,存取效率更高由於使用電力和 子集的速度在最大程度上,在大多數情況下,只有做出更 更好的底層算法 單一數據副本。

  • 根據輸出類型,鑄件被兩個功能取代: dcast產生數據框,acast產生矩陣/數組。

  • 多維利潤現在是可能的:grand_rowgrand_col已經下降:現在保證金的名稱是指 具有其值設置爲(全部)的變量。

  • 某些功能已被刪除,例如|轉換運算符和 從聚合函數返回多個值的功能。 我相當確定這兩個操作都可以通過 plyr更好地執行。

  • 新鑄的語法,它允許您根據功能
    變量重塑(基於相同的基本語法plyr):

  • 更好的發展實踐,如命名空間和測試。

+0

謝謝馬特!感謝你在郵件列表中發佈這個更公開熟悉的論壇。 – isomorphismes

+1

*從聚合函數返回多個值的能力*請參閱相關問題:http://stackoverflow.com/questions/21477040/reshape2-multiple-results-of-aggregation-function – landroni