2012-04-10 27 views
19

Tôi muốn hình dung một số phép tính thống kê của tôi trong Ruby.Cách tốt nhất để sử dụng R trong Ruby

Vấn đề của tôi là, tôi không thể tìm thấy đá quý phù hợp cho điều đó.

rsruby dường như không được cập nhật và tôi không thể cài đặt nó trong Ruby 1.9.2.

Bạn có biết cách chạy các lệnh R trong Ruby không?

+0

Rserve + http://rubygems.org/gems/rserve-simpler hoặc http://opencpu.org/ – Hansi

+0

Tìm kiếm '[r] [ruby]', điều này đã được trả lời trước ... –

+0

Tương tự như http://stackoverflow.com/questions/9287265/r-statistical-package-gem-for-a-rails-application – Azolo

Trả lời

40

Tôi vừa xem bài đăng này và nghĩ rằng tôi nên nhận xét vì tôi sử dụng R khá rộng rãi. Nếu bạn đến từ một nền R thì viên đá quý tốt nhất tôi đã tìm thấy là Rinruby. Lý do nó là tuyệt vời là bởi vì bạn không giải thích các lệnh trong ruby, bạn sử dụng mã R thực tế. Ví dụ:

require "rinruby"  
#Set all your variables in Ruby 
n = 10 
beta_0 = 1 
beta_1 = 0.25 
alpha = 0.05 
seed = 23423 
R.x = (1..n).entries 
#Use actual R code to perform the analysis 
R.eval <<EOF 
    set.seed(#{seed}) 
    y <- #{beta_0} + #{beta_1}*x + rnorm(#{n}) 
    fit <- lm(y ~ x) 
    est <- round(coef(fit),3) 
    pvalue <- summary(fit)$coefficients[2,4] 
EOF 

Trên trang web Rinruby Tôi liệt kê ở trên có một số ví dụ tuyệt vời để bạn bắt đầu. Hy vọng điều này đã giúp.

-Sean

+6

Sean, đừng cắt lời. Bạn có nghĩ rằng RinRuby là tuyệt vời hay không? –

+0

@sean, có cách nào để tạo biểu đồ thông qua trang web thay vì hiển thị chúng trong cửa sổ R không? Tôi đang sử dụng ví dụ Gettysburg từ trang web của thư viện để thử nghiệm hiện tại ... – daveomcd

+0

@daveomcd Đã lâu rồi ... nhưng bạn không thể chỉ hiển thị PNG như thiết bị đồ họa thay vì cửa sổ R và sau đó hiển thị PNG? – bigtunacan

3

Như @Hansi đã đề cập, RServe là cách tốt nhất tôi đã tìm thấy để chạy R từ xa. Nếu bạn đang sử dụng Ruby từ một bối cảnh web đặc biệt, RServe có thể cung cấp một số lợi ích tốt đẹp.

Tốt nhất của tất cả (trong tâm trí của tôi), bạn không bị khóa vào bất kỳ khuôn khổ lập trình nào, vì có RServe khách hàng cho nhiều ngôn ngữ bao gồm Java và C++. Khi sử dụng nền tảng có thể truy cập web, bạn thậm chí có thể giữ cho chạy Rserve trên một máy chủ riêng biệt và định tuyến lưu lượng truy cập qua TCP/IP để tăng cường bảo mật.

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