2013-05-21 45 views
14

Vì một lý do nào đó tôi đột nhiên không thể cài đặt các gói trong R (sau đó tôi đã cập nhật lên phiên bản mới nhất của R và đang chạy Windows 7). Ví dụ, nếu tôi gõ:Cài đặt các gói lên R

install.packages('beeswarm') 

Cài đặt gói vào 'D:/Rlibs' (như 'lib' là không xác định) --- Vui lòng chọn một gương cran để sử dụng trong phiên này --- cố gắng URL 'http://www.stats.bris.ac.uk/R/bin/windows/contrib/3.0/beeswarm_0.1.5.zip' Content loại 'text/html' chiều dài chưa biết mở URL tải 1859 byte

Lỗi trong read.dcf (file.path (pkgname, "MÔ tẢ"), c ("trọn gói", " Loại ")): không thể mở kết nối Ngoài ra: Cảnh báo tin nhắn: 1: Trong giải nén (zipname, exdir = dest) : lỗi 1 khi trích xuất từ tệp zip 2: Trong read.dcf (file.path (pkgname, "DESCRIPTION"), c ("Gói", "Loại")): không thể mở tệp nén 'beeswarm/DESCRIPTION' , lý do có thể xảy ra 'Không có tệp hoặc thư mục' như vậy '

Tôi đã đọc rằng trong Windows 7 có thể có những hạn chế quan trọng về quyền ghi vào một số thư mục nhất định, vì vậy tôi đã đi một số thời gian để cài đặt R và thư viện các thư mục trong các vùng không phải mặc định của máy tính của tôi và để cho phép bản thân tôi có quyền đối với một số thư mục nhất định, nhưng không có kết quả. Có thể cũng có tầm quan trọng là khi tôi gõ:

.libPaths() 

# [1] "D:/Rlibs"            
# [2] "C:/Users/L.Halsey/Documents/R/win-library/3.0"   
# [3] "C:/Users/L.Halsey/Documents/Documents/R-3.0.1/library" 

Tôi đã tạo ra một số thư mục trong một nỗ lực để tạo ra một mà tôi có thể cài đặt thành công các thư viện vào và thiết lập chúng để được công nhận bởi R sử dụng 'biến môi trường' từ nút bắt đầu. Tôi không biết làm thế nào để xóa bất kỳ của họ mặc dù - không chắc chắn nếu điều này là có liên quan đến vấn đề tổng thể của tôi bây giờ không thể cài đặt/cập nhật các gói vì lý do nào.

Trả lời

10

Lỗi được báo cáo là không có khả năng mở kết nối. Trong Windows là often a firewall problem and is in the Windows R FAQ. Các nỗ lực đầu tiên thông thường nên được chạy internet2.dll. Từ một phiên giao diện điều khiển, bạn có thể sử dụng:

setInternet2(TRUE) 

(Bạn là chính xác trong suy nghĩ này không phải là do thiết lập thư viện của bạn Lỗi nói gì về quyền truy cập..) Tôi không nghĩ chỉ cần gõ .libPaths nên trở về nhân vật mà vector kể từ trên máy tính của tôi, tôi sẽ cần phải gõ .libPaths() để xem một cái gì đó như thế. Nếu bạn muốn giảm số lượng địa điểm cho thư viện, bạn có thể sử dụng chức năng .libPaths để đặt giá trị. Điều này sẽ chọn phần thứ hai và thứ ba của các đường dẫn hiện có

.libPaths(.libPaths()[2:3]) 

Cuộc gọi bên trong truy xuất vectơ đường dẫn và cuộc gọi bên ngoài đặt nó thành véc tơ giảm.

2

tôi có lẽ sẽ lặp lại rất nhiều câu trả lời khác trên stackoverflow, nhưng tôi đã hoàn toàn lỗi tương tự như OP, cụ thể là: Warning messages: 1: In unzip(zipname, exdir = dest) : error 1 in extracting from zip file 2: In read.dcf(file.path(pkgname, "DESCRIPTION"), c("Package", "Type")) : cannot open compressed file 'zoo/DESCRIPTION', probable reason 'No such file or directory'

Hóa ra, trong khi tôi như một người dùng có quyền truy cập để viết trong một số thư mục, R không. Để chắc chắn rằng bạn không có một cái gì đó tương tự, làm như sau:

  1. có được một ổ usb, hãy đặt tên cho nó E
  2. nguồn tải về gói như một.file zip và lưu trữ nó vào usb-ổ đĩa trong một số thư mục, hãy đặt tên cho nó E:/nguồn
  3. Tạo thư mục cho các thư viện trên ổ đĩa USB, hãy đặt tên cho nó E:/libs
  4. Cài đặt gói gọi lệnh R install.package từ R console và thiết lập tất cả các thư mục có liên quan để trỏ đến ổ usb của bạn:

    (ở đây tôi sử dụng gói vườn thú là một ví dụ)

    install.packages("E:/source/zoo_1.7-12.zip", 
           destdir = 'E:/source', # no "/" after the path 
           lib = 'E:/libs', 
           repos = NULL) 
    
  5. tải gói khỏi danh bạ, nơi bạn cài đặt nó: library('zoo', lib.loc = 'E:/libs')


Sau khi bạn chắc chắn, nó hoạt động theo cách này trên ổ usb của bạn, bạn có thể bắt đầu giải quyết các thư mục cho phép, và thử bằng cách thay đổi các đường dẫn trong đoạn code trên.

cập nhật: Trong một số môi trường cửa sổ, thậm chí thanh USB của bạn có thể được bảo vệ khỏi ghi đọc bằng R. Đảm bảo bạn kiểm tra các quyền bằng máy bạn đang làm việc.

1

Sau đây làm việc cho tôi (dựa trên câu trả lời ở trên)

install.packages ("clustvarsel", lib = "C:/Users/dnentchev/Chương Trình/R-3.2.2/thư viện")

0

Chạy RStudio với tư cách quản trị viên đã sửa nó cho tôi!

Các vấn đề liên quan