Sha256: 6ddf8817c806c87572d95e69ce6c63d56ceaad3a47ce513d802b2ad85fdfc17d

Contents?: true

Size: 804 Bytes

Versions: 4

Compression:

Stored size: 804 Bytes

Contents

module PubliSci
	module Rconnect

		def connect(address=nil)
			if address
				Rserve::Connection.new(address)
			else
				Rserve::Connection.new
			end
		end

		def load_workspace(connection,loc=Dir.home,file=".RData")
			loc = File.join(loc,file)
			connection.eval "load(\"#{loc}\")"
		end

		def get(connection, instruction)
			connection.eval instruction
		end

		def get_vars(connection)
			connection.eval("ls()")
		end

	end

	class Client
		include PubliSci::Rconnect
    attr :R

		def initialize(auto=true, loc=Dir.home)
      @R = connect
			@loc = loc
			load_ws if auto
			puts "vars: #{vars.payload}" if auto
		end

		def load_ws
			load_workspace(@R, @loc)
		end

		def get_var(var)
			get(@R,var)
		end

		def get_ws
			"#{@loc}/.RData"
		end

		def vars
			get_vars(@R)
		end
  end
end

Version data entries

4 entries across 4 versions & 2 rubygems

Version Path
publisci-0.1.2 lib/bio-publisci/r_client.rb
bio-publisci-0.1.0 lib/bio-publisci/r_client.rb
bio-publisci-0.0.8 lib/bio-publisci/r_client.rb
bio-publisci-0.0.7 lib/bio-publisci/r_client.rb