Câu trả lời:
Lệnh install.packages xem qua biến .libPaths. Đây là những gì tôi mặc định trên OSX:
> .libPaths()
[1] "/Library/Frameworks/R.framework/Resources/library"
Tôi không cài đặt các gói ở đó theo mặc định, tôi thích cài đặt chúng trong thư mục nhà của tôi. Trong .Rprofile của tôi, tôi có dòng này:
.libPaths( "/Users/tex/lib/R" )
Điều này thêm thư mục "/ Users / tex / lib / R" vào trước biến .libPaths.
Điều này được ghi lại trong hướng dẫn 'Cài đặt và Quản trị' đi kèm với cài đặt của bạn.
Trên hộp Linux của tôi:
R> .libPaths()
[1] "/usr/local/lib/R/site-library" "/usr/lib/R/site-library"
[3] "/usr/lib/R/library"
R>
có nghĩa là đường dẫn mặc định là đường dẫn đầu tiên. Bạn có thể ghi đè thông qua một đối số cho cả hai install.packages()
(từ bên trong R) hoặc R CMD INSTALL
(bên ngoài R).
Bạn cũng có thể ghi đè bằng cách đặt biến R_LIBS_USER.
$R_LIBS
và $R_LIBS_USER
không được đặt? (Tôi muốn có thể thực thi tập lệnh R trong inst/
thư mục của gói đã cài đặt) trên bất kỳ hệ thống Unix nào.
Cảm ơn sự chỉ đạo từ hai người trả lời trên. Đề xuất của James Thompson hoạt động tốt nhất cho người dùng Windows.
Đi đến nơi chương trình R của bạn được cài đặt. Điều này được gọi là R_Home
trong các tài liệu. Khi bạn tìm thấy nó, hãy đi đến thư mục con / etc.
C:\R\R-2.10.1\etc
Chọn tệp trong thư mục này có tên Rprofile.site. Tôi mở nó bằng VIM. Bạn sẽ thấy đây là một tập tin cơ bản với ít hơn 20 dòng mã. Tôi đã chèn đoạn mã bên trong:
# my custom library path
.libPaths("C:/R/library")
(Nhận xét được thêm vào để theo dõi những gì tôi đã làm với tệp.)
Trong R, gõ .libPaths()
hàm mang lại mục tiêu đầu tiên tạiC:/R/Library
LƯU Ý: có thể có nhiều hơn một cách để đạt được điều này, nhưng một số phương pháp khác tôi đã thử không hoạt động vì một số lý do.
.libPaths=("C:/R/library")
vào tệp Rprofile.site của tôi . Tôi khởi chạy R 2.13.1 64 bit và gặp lỗi này: Lỗi: không thể thay đổi giá trị của ràng buộc bị khóa cho '.libPaths' Tôi đang sử dụng Windows 7.
.libPaths("...")
(một cuộc gọi và không phải là một nhiệm vụ).