data.table์ ์ฌ์ฉํ๋ ํจํค์ง(๊ทธ๋ฆฌ๊ณ dplyr๋ ๋ฏฟ์ต๋๋ค)๋ R CMD ๊ฒ์ฌ์์ ์ด ์ฐธ๊ณ (์๋ง๋ ๋ง์)๋ฅผ ์ป์ต๋๋ค. ์ฐ๋ฆฌ๊ฐ ํ ์ ์๋ ์ผ์ด ์์ต๋๊น? ์ฐธ๊ณ ์ฌํญ์ผ ๋ฟ์ด๋ฏ๋ก ๋ฌด์ํ ์ ์์ง๋ง ๊ทธ๋ ์ต๋๋ค.
์ด๋ฌํ ๊ธฐํธ๋ฅผ ๊ฐ์งํ๊ณ ํจํค์ง ์์ฑ์๋ฅผ ์ํด ์๋์ผ๋ก globalVariables()
ํธ์ถ์ ์์ฑํ๋ ๊ธฐ๋ฅ์ ์ ๊ณตํ ์ ์์ต๋๋ค.
http://stackoverflow.com/questions/15409806/r-package-compilation-with-dependency-on-data-table
http://stackoverflow.com/questions/8096313/no-visible-binding-for-global-variable-note-in-r-cmd-check
IIUC, data.table๊ณผ dplyr ๋ชจ๋ ์ฌ์ฉํ๋ "๋นํ์ค ํ๊ฐ"๋ฅผ ์ธ์ํ๋๋ก 'R CMD ๊ฒ์ฌ'๋ก ๋ณ๊ฒฝํด์ผ ํฉ๋๋ค. ๊ทธ๊ฒ์ ์ด๋ ค์ด ๋ฌธ์ ์
๋๋ค(์ฝ๋๋ฅผ ์คํํ์ง ์๊ณ ๋ ๋ถ๊ฐ๋ฅํ ์๋ ์์ต๋๋ค). ๋ฐ๋ผ์ ?globalVariables
ํจ์๊ฐ 2.15.1์์ R์ ์ถ๊ฐ๋์๊ณ ๋ ์๋ ค์ง ๊ฒ์ NSE๋ฅผ ์ฌ์ฉํ์ฌ ์ฟผ๋ฆฌ๋ฅผ ๋ํํ๋ ๋ฐ ์ฌ์ฉํ ์ ์๋ ?dontCheck
๊ฐ R 3.1.0์ ์ถ๊ฐ๋์๋ค๋ ๊ฒ์
๋๋ค. ์ด๊ฒ๋ค์ NSE๋ฅผ ์ฌ์ฉํ๋ ๊ฒ๋ฟ๋ง ์๋๋ผ ์ฝ๋์ ๋ค๋ฅธ ์์ญ์์ ์ค์ ์ค๋ฅ๋ฅผ ์ฐจ๋จ(๋๋ ์ ์ค๋ฅ ์์ฑ)ํ ์ํ์ด ์๋ <-NULL
๋ณด๋ค ๋ซ์ต๋๋ค.
๋ฐ๋์ ๋ฌด์ํ ์๋ ์์ต๋๋ค. ์ผ๋ถ ํจํค์ง๋ ๊ฑฐ๋ถ๋๊ณ ์์ฑ์๋ CRAN์์ globalVariables
๋ฅผ ์ฌ์ฉํ์ฌ NOTE๋ฅผ ์ต์ ํ๋ผ๋ ์ง์๋ฅผ ๋ฐ์์ต๋๋ค. ์:
์๋
,
๊ทธ๊ฒ์ ์ค๋๋ ๋ฌธ์ ์ด์ง๋ง ๋ซํ์ง ์์์ต๋๋ค. ์๋ก์ด ์๋ฃจ์
์ด ์๋์ง ๊ถ๊ธํฉ๋๋ค.
๊ทธ๋ ์ง ์์ผ๋ฉด ๋ฐ๋ผ์ผ ํ ์ข์ ๊ดํ์ ๋ฌด์์
๋๊น? ์์ง๋ globalVariables
?
๋๋ ์ ์์ด๋์ด๋ฅผ ์ข์ํ๋ค
ํด๋น ๊ธฐํธ๋ฅผ ๊ฐ์งํ๊ณ
globalVariables()
๋ฅผ ์์ฑํ๋ ํจ์
๊ฐ์ฌํฉ๋๋ค.
@cderv ๋ฅผ ์ฌ์ฉํ๊ธฐ ์ ์ ๋ณ์์ NULL์ ํ ๋นํ๋ฉด ๋ฉ๋๋ค(๋ฎ์ด์ฐ๊ธฐ์ ํผ๋ํ์ง ๋ง์ญ์์ค). ๋ฐ๋ผ์ ์ ์ญ ๋ณ์๋ฅผ ์ ์ํ๋ ๊ฒ์ด ์๋๋ผ ์ฌ์ฉ ์ค์ธ ํจ์์์ ๋ก์ปฌ๋ก ์ ์ํ๋ ๊ฒ์ ๋๋ค. ๋๋ ์ฐ๋ฆฌ๊ฐ ๊ทธ๊ฒ์ ํน๋ณํ ๋ฐฉ์์ผ๋ก ๋ค๋ฃฐ ํ์๊ฐ ์๋ค๊ณ ์๊ฐํฉ๋๋ค. ๋ฌธ์ ๊ฐ ์ ์๋ ์กฐ์น ์์ด 2๋ ๋์ ๋๊ธฐ ์ค์ด๋ฉฐ ์ค์ ๋ก data.table ๋ฌธ์ ๊ฐ ์๋๋ฏ๋ก ์ง๊ธ์ ์ข ๋ฃํฉ๋๋ค.
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
@cderv ๋ฅผ ์ฌ์ฉํ๊ธฐ ์ ์ ๋ณ์์ NULL์ ํ ๋นํ๋ฉด ๋ฉ๋๋ค(๋ฎ์ด์ฐ๊ธฐ์ ํผ๋ํ์ง ๋ง์ญ์์ค). ๋ฐ๋ผ์ ์ ์ญ ๋ณ์๋ฅผ ์ ์ํ๋ ๊ฒ์ด ์๋๋ผ ์ฌ์ฉ ์ค์ธ ํจ์์์ ๋ก์ปฌ๋ก ์ ์ํ๋ ๊ฒ์ ๋๋ค. ๋๋ ์ฐ๋ฆฌ๊ฐ ๊ทธ๊ฒ์ ํน๋ณํ ๋ฐฉ์์ผ๋ก ๋ค๋ฃฐ ํ์๊ฐ ์๋ค๊ณ ์๊ฐํฉ๋๋ค. ๋ฌธ์ ๊ฐ ์ ์๋ ์กฐ์น ์์ด 2๋ ๋์ ๋๊ธฐ ์ค์ด๋ฉฐ ์ค์ ๋ก data.table ๋ฌธ์ ๊ฐ ์๋๋ฏ๋ก ์ง๊ธ์ ์ข ๋ฃํฉ๋๋ค.