2012-06-19 36 views
59

This, question, is, asked, over, and, over, and, over, thuộc danh R-sig-finance gửi thư, nhưng tôi không nghĩ rằng nó đã được yêu cầu trên stackoverflow.Không thể cài đặt gói R-rèn sử dụng install.packages

Nó giống như sau:

Tôi có thể lấy phiên bản gói XYZ mới nhất được lưu trữ trên R-giả mạo ở đâu? Tôi cố gắng để cài đặt nó với install.packages, nhưng đây là những gì đã xảy ra:

> install.packages("XYZ",repos="http://r-forge.r-project.org") 
Warning message: package ‘XYZ’ is not available (for R version 2.15.0) 

Nhìn trên website R-rèn cho XYZ, tôi thấy rằng gói thất bại trong việc xây dựng. Vì vậy, không có liên kết để tải xuống nguồn. Có cách nào khác để lấy mã nguồn không? Khi tôi nhận được mã nguồn, làm thế nào tôi có thể biến nó thành gói mà tôi có thể tải với library("XYZ")?

+4

Làm việc tốt - chúng tôi cũng có thể biến điều này thành một wiki hỗ trợ. 'R-giả mạo' thẻ, có thể? –

+0

@DirkEddelbuettel Đi cho nó. Tôi không nghĩ rằng tôi có đủ đại diện để làm điều đó. – GSee

+0

Tôi nghĩ bạn chỉ cần chỉnh sửa và do đó tạo một thẻ mới. Bằng cách sử dụng nó ngày càng nhiều câu hỏi nó sẽ trở thành hợp pháp. Hoặc vì vậy tôi hy vọng. –

Trả lời

50

R-Forge có thể không tạo được gói vì một vài lý do khác nhau. Có thể là tài liệu chưa được cập nhật để phản ánh các thay đổi gần đây trong mã. Hoặc, có thể là một số phụ thuộc không có sẵn tại thời gian xây dựng.

Bạn có thể kiểm tra mã nguồn bằng svn. Thứ nhất, tìm kiếm các dự án trên trang web R-Forge và đi đến trang chủ dự án - ví dụ http://r-forge.r-project.org/projects/returnanalytics/ Nhấp vào liên kết SCM để có được một trang như thế này http://r-forge.r-project.org/scm/?group_id=579

Trang này sẽ cho bạn biết lệnh để sử dụng để kiểm tra dự án. Trong trường hợp này bạn sẽ có được

This project's SVN repository can be checked out through anonymous access with the following command(s).

svn checkout svn://svn.r-forge.r-project.org/svnroot/returnanalytics/

Nếu bạn đang trên Windows, có thể bạn muốn tải về và cài đặt TortoiseSVN

Một khi bạn đã cài đặt TortoiseSVN, bạn có thể nhấn chuột phải trong cửa sổ Windows Explorer và chọn "SVN kiểm tra". Trong trường "URL của kho lưu trữ:", nhập mọi thứ ngoại trừ phần "svn checkout" của lệnh mà bạn tìm thấy trên R-Forge. Trong trường hợp này, bạn cần nhập "svn: //svn.r-forge.r-project.org/svnroot/returnanalytics/".

Khi bạn bấm OK, dự án sẽ được tải xuống vào thư mục hiện tại.

Nếu bạn đang ở trên một hệ thống UNIX-như nhau (hoặc nếu bạn cài đặt các công cụ khách hàng dòng lệnh khi bạn cài đặt TortoiseSVN cho Windows, mà không phải là mặc định), bạn có thể gõ lệnh rằng R-rèn cho bạn trong terminal của bạn (Hệ thống thiết bị đầu cuối, không phải là thiết bị đầu cuối R)

svn checkout svn://svn.r-forge.r-project.org/svnroot/returnanalytics/ 

Điều đó sẽ tạo ra một thư mục mới trong thư mục làm việc hiện tại mà chứa tất cả các file trong gói. Ở cấp cao nhất của thư mục đó sẽ là thư mục con được gọi là "pkg". Dự án cụ thể này (returnanalytics) chứa nhiều hơn một gói.

ls returnanalytics/pkg 
#FactorAnalytics MPO PApages PerformanceAnalytics PortfolioAnalytics 

Nhưng một số dự án R-forge chỉ có một gói duy nhất. e.g.

svn checkout svn://svn.r-forge.r-project.org/svnroot/random/ 
#Checked out revision 14. 
ls random/pkg 
#DESCRIPTION inst man NAMESPACE R 

Bây giờ bạn có một bản sao cục bộ tất cả các mã, nếu bạn muốn để có thể cài đặt gói, bạn phải xây dựng nó lần đầu tiên.

TỪ THẬN TRỌNG: Vì R-Forge không thể xây dựng gói, có một cơ hội tốt rằng có sự cố với gói. Vì vậy, nếu bạn chỉ cần xây dựng nó, bạn có thể tìm thấy rằng một số điều không hoạt động như mong đợi. Cụ thể, có khả năng là có bị thiếu hoặc tài liệu không đầy đủ.

Nếu bạn đang sử dụng hệ thống UNIX, gói có thể được cài đặt và cài đặt tương đối dễ dàng. Đối với một dự án nhiều gói như returnanalytics, nếu bạn muốn cài đặt, ví dụ: gói PortfolioAnalytics, bạn có thể làm điều đó như thế này

R --vanilla CMD INSTALL --build returnanalytics/pkg/PortfolioAnalytics 

"PortfolioAnalytics" là tên của thư mục có chứa các gói bạn muốn xây dựng/cài đặt. Đối với một dự án duy nhất gói, bạn có thể xây dựng và cài đặt như này

R --vanilla CMD INSTALL --build random/pkg 

Nếu bạn muốn xây dựng/cài đặt một gói phần mềm trên Windows, xem this question và làm theo twolinks rằng @JoshuaUlrich cung cấp

Bạn có thể tìm thêm thông tin tại R Installation and Administration, the R-Forge User Manualthe SVN manual.

+0

Việc sử dụng '--vanilla' có thể không cần thiết tùy thuộc vào những gì có trong .Rprofile. Xem http://stackoverflow.com/a/11639336/ – GSee

+0

'INSTALL --build' xây dựng một phiên bản nhị phân của gói, nhưng không cài đặt nó. Ngoài ra, sẽ dễ dàng hơn để thực hiện 'install.packages (" XYZ ", repos =" http://r-forge.r-project.org ", type =" source ")' – hadley

+0

@hadley R CMD xây dựng các bản dựng một gói mà không cần cài đặt nó. R CMD INSTALL --build _does_ cài đặt nó; hãy thử cho chính mình. Đối với 'install.packages (..., repos =" http: // r-forge ... ", type =" source ")', có lẽ bạn nên đọc lại câu hỏi. – GSee

2

Nó cũng có thể là phiên bản hiện tại của gói bạn đang cố gắng để cài đặt đòi hỏi một phiên bản mới hơn của R, ví dụ, bạn có thể thấy lỗi như:

"ERROR: R đây là phiên bản 2.15.0 , gói 'PerformanceAnalytics' đòi hỏi R> = 3.0.0"

sau đó bạn có thể cố gắng cập nhật R của bạn

hoặc, nếu bạn đang phải đối mặt với tình huống tương tự với tôi, đó là cố gắng sử dụng PQR (hiện đang sử dụng Phiên bản R 2.15), bạn có thể tìm thấy gói đã lỗi thời tại đây:

http://cran.at.r-project.org/src/contrib/Archive/PerformanceAnalytics/

Bạn có thể đến đây từ trang gói R-Forge -> "Ổn định phát hành: Nhận PerformanceAnalytics 1.4.3541 từ cran" -> nguồn Cũ: PerformanceAnalytics lưu trữ

ví dụ, bạn sẽ tìm thấy PerformanceAnalytics gói phiên bản 1.1.0 chỉ đòi hỏi R> = 2.14

Chúc may mắn

3

Nếu (và chỉ nếu) bạn có toolchain thích hợp cho hệ điều hành của bạn, thì đây có thể thành công:

# First download source file to your working directory 
# As an example use browser to download pkg:partykit from: 
# http://download.r-forge.r-project.org/src/contrib/partykit_1.1-2.tar.gz 
# Move to working directory 
# Or in the case of returnanalytics (which is a bundle of packages): 
# http://r-forge.r-project.org/R/?group_id=579 and download the tar.gz (source) 
# Then in R: 

install.packages("partykit_1.1-2.tar.gz", repo=NULL, type="source") 
# for the first of the ReturnAnalytics packages: 
install.packages("Dowd_0.11.tar.gz", repo=NULL, type="source") 

Hướng này phải là "đa nền tảng". Tôi không chắc chắn các chỉ dẫn trong câu trả lời được chấp nhận có thể áp dụng cho máy Mac (OSX) . (Sau đó tôi xác nhận rằng họ "làm việc" trên máy Mac nhưng thấy quá trình này liên quan nhiều hơn đến những gì tôi đề xuất ở trên.Chúng sẽ dẫn đến một thư mục chứa các gói trong biểu mẫu sẽ thành công với R --vanilla CMD INSTALL --build pathToEachPackageSeparately)

0

Hoặc, bạn có thể cài đặt gói cụ thể từ GitHub, nếu nó có repo tại GitHub.

Tôi chạy install.packages('ggfortify'), và có

Warning message: “package ‘ggfortify’ is not available (for R version 3.3.2)”

ggfortify là repo GitHub cho cùng một gói.

Thư viện devtools cho phép bạn cài đặt gói từ GitHub trực tiếp với install_github('username/repo').

library(devtools) 
install_github('sinhrks/ggfortify') 
Các vấn đề liên quan