Can R read from a file through an ssh connection?

Viewed 11540

R can read files on a web server using convenient syntax such as

data <- read.delim("http://remoteserver.com/file.dat")

I wonder if there is a way to do something similar with a file on an ssh server with passwordless-ssh already in place?

1 Answers

You can read a file using pipes like this:

d = read.table( pipe( 'cat data.txt' ), header = T )

If you wanted to read from an SSH connection, try this:

d = read.table( pipe( 'ssh hostname "cat data.txt"' ), header = T )

There's also no reason to confine this to just ssh commands, you could also do something like this:

d = read.table( pipe( 'cat *.txt' ) )

See the R Data Import/Export page for more information, specifically the Connections section.

Related