R可以通过ssh连接从文件中读取吗?

hat*_*rix 19 ssh r

R可以使用方便的语法读取Web服务器上的文件,例如

data <- read.delim("http://remoteserver.com/file.dat")
Run Code Online (Sandbox Code Playgroud)

我想知道是否有办法在ssh服务器上使用passwordless-ssh的文件做类似的事情?

Jam*_*son 35

您可以使用以下管道读取文件:

d = read.table( pipe( 'cat data.txt' ), header = T )
Run Code Online (Sandbox Code Playgroud)

如果您想从SSH连接中读取,请尝试以下操作:

d = read.table( pipe( 'ssh hostname "cat data.txt"' ), header = T )
Run Code Online (Sandbox Code Playgroud)

也没有理由将此限制为ssh命令,你也可以这样做:

d = read.table( pipe( 'cat *.txt' ) )
Run Code Online (Sandbox Code Playgroud)

有关详细信息,请参阅R数据导入/导出页面,特别是" 连接"部分.