Sha256: 9c1c6fab588f2c05830edc7a804ea1edef8f54fbffed8bbe39bb0dfc33820963

Contents?: true

Size: 805 Bytes

Versions: 6

Compression:

Stored size: 805 Bytes

Contents

module R2RDF
	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 R2RDF::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

6 entries across 6 versions & 1 rubygems

Version Path
bio-publisci-0.0.6 lib/bio-publisci/r_client.rb
bio-publisci-0.0.5 lib/bio-publisci/r_client.rb
bio-publisci-0.0.4 lib/bio-publisci/r_client.rb
bio-publisci-0.0.3 lib/bio-publisci/r_client.rb
bio-publisci-0.0.2 lib/bio-publisci/r_client.rb
bio-publisci-0.0.1 lib/bio-publisci/r_client.rb