Tôi hiện đang chuyển đổi một bài viết JSS, sử dụng knitr
, thành một họa tiết gói R . Tuy nhiên, tôi đang nghi ngờ về vị trí làm mờ nét ảnh, cấu trúc và cách tôi xử lý thời gian tính toán rất dài mà nó yêu cầu đó là ~ 2 ngày trên một máy tính xách tay thông thường.Vignettes R nặng tính toán
official documentation cung cấp ít hoặc không có thông tin về việc này. Một lưu ý ngắn trong câu trả lời trong số mailing list là thông tin duy nhất tôi tìm thấy khi tìm kiếm. Brian Ripley viết ở đây:
Đặc biệt, cran không chấp nhận gói với họa tiết Sweave rằng mất quá nhiều thời gian để kiểm tra - một diễn ca 8 giờ [...]. Chúng tôi chỉ yêu cầu chúng tôi được thông báo như vậy.
Hadley Wickham's description của họa tiết nói để đặt eval = FALSE
làm tùy chọn đoạn. Tuy nhiên, đây không phải là một cách tiếp cận khả thi trong trường hợp của tôi khi dữ liệu được tạo ra từ các tính toán là cần thiết.
This presentation gợi ý rằng /inst/doc
sẽ được sử dụng cho các họa tiết được biên dịch trước và nặng. Tuy nhiên, điều đó không đồng ý với các hướng dẫn mới về cách sử dụng /vignettes
cho các họa tiết gói (hoặc cái gì?).
Hiện tại, tôi đã đặt các tệp nguồn của mình trong /vignettes
và tôi tạo tệp .RData
chứa các đối tượng có tính toán đắt nhất (và cũng khá lớn). Các tập lệnh sau đó kiểm tra xem các đối tượng có sẵn thông qua tệp .RData
đó hay không, nếu không, các đối tượng sẽ được tạo. Vì vậy, biên dịch và chạy hoàn toàn từ đầu, tệp .RData
chỉ đơn giản có thể bị xóa.
Có ai có một số kinh nghiệm hoặc gợi ý về vấn đề này không? Nếu họa tiết phải ở trong /vignettes
hoặc /inst/doc
? Nếu trước đây được ưu tiên, tôi đặt các tệp cần thiết như .bib
, .RData
, v.v ... ở đâu? Tôi phải thừa nhận rằng tôi thấy số /vignettes
và /inst/doc
hơi khó hiểu.
Thật không may, đây thực sự là câu hỏi về chính sách CRAN, không phải là câu hỏi lập trình. Câu trả lời hay nhất sẽ đến từ một email đến CRAN. Bạn cũng có thể thử r-devel, nhưng tôi nghi ngờ họ sẽ nói với bạn chỉ cần hỏi CRAN, quá. – Thomas
@Thomas Vâng, tôi thấy điều đó ngay bây giờ. Tôi đoán đây cũng là một nỗ lực để tránh làm phiền các nhà bảo trì CRAN (mà tôi chắc chắn đã có quá ít thời gian) và để nghe và làm thế nào những người khác đã xử lý các vấn đề tương tự. Nếu nó không phù hợp, tôi sẽ để lại câu hỏi ở đây và gửi email cho những người bảo trì sau này nếu không có gì xảy ra. –
Làm cho tinh thần. Nếu bạn nhận được câu trả lời từ CRAN, tôi khuyến khích bạn đăng câu trả lời ở đây để những người khác có thể tìm thấy câu trả lời đó. Họ là những người bận rộn, nhưng nó cũng là công việc của họ (chủ yếu là tự bổ nhiệm) để duy trì hệ thống, vì vậy nếu các tập tin trợ giúp của họ không rõ ràng, đó là trách nhiệm của họ để làm rõ mọi thứ. – Thomas