lib/rbbt/util/R.rb in rbbt-util-1.2.1 vs lib/rbbt/util/R.rb in rbbt-util-2.0.1
- old
+ new
@@ -1,6 +1,7 @@
require 'rbbt/util/cmd'
+require 'rbbt/util/tsv'
module R
LIB_DIR = File.join(File.expand_path(File.dirname(__FILE__)),'../../../share/lib/R')
UTIL = File.join(LIB_DIR, 'util.R')
@@ -16,9 +17,25 @@
cmd << command
end
Log.debug "R Script:\n#{ cmd }"
- CMD.cmd('R --vanilla --slave', options.merge(:in => cmd))
+ CMD.cmd('R --vanilla --slave --quiet', options.merge(:in => cmd))
end
+end
+
+class TSV
+ def R(script)
+ TmpFile.with_file do |f|
+ Open.write(f, self.to_s)
+ Log.debug(R.run(
+ <<-EOF
+data = rbbt.tsv('#{f}');
+#{script.strip}
+rbbt.tsv.write('#{f}', data);
+ EOF
+ ).read)
+ TSV.new(f, :type => :list)
+ end
+ end
end