2014-01-30 24 views
14

我打算將我的一些代碼壓縮到一個包中,並在CRAN的指導下查看幾個已發佈包的來源。我注意到許多軟件包包含文件R\zzz.R,所以我認爲必須有一些約定這一點。R包 - 什麼是文件'zzz.R'用於?

但是,在官方Writing R Extensions指南中我找不到zzz.R的任何提及。這個文件是什麼,我需要在我的軟件包中包含一個文件嗎?爲什麼它是這樣命名的 - 爲什麼不是zzzz.R

+0

3個相同的字母是世界上最好的公認的慣例,4聽起來很愚蠢,不是嗎? – baptiste

回答

16

這是一個文件,其中一個通常會對包的加載進行操作。這是傳統/慣例,它被稱爲zzz.R,並且可以被稱爲任何東西。R

如果你想讓你的軟件包在加載時做一些不尋常的事情,你只需要包含它。繼續關注人們放在哪裏,你會開始瞭解他們的用途。

編輯快速谷歌搜索...

提到section 4 here
底部page 3 here

4

這zzz.R文件由哈德利韋翰在他的書中也提到 「R包」。

http://r-pkgs.had.co.nz/r.html

如果使用.onLoad(),可以考慮使用.onUnload()來清理任何副作用。按照慣例,.onLoad()和朋友通常保存在一個名爲zzz.R的文件中。 (注意.First.lib()和.Last.lib()是.onLoad()和.onUnload()的舊版本,不應再使用。)