2016-12-07 4 views
0

ファイルをリモートサーバーからRセッションにプルしようとしています。ここでRCurlのscp関数を使用しているときに接続/ファイルを開くことができません

は、私が使用しているコードです:ファイル内

エラー(ファイル、「RT」):さらに接続 を開くことができません

library(RCurl) 
x = "/mypath/thefile.txt" 


y = read.fwf(scp(host = 'myhost.place', path = x, 
      user= "myusername", password = "mypass", binary = FALSE), 
      widths = c(-1, 9, -42, 4), colClasses = c("character", "character"), 
      col.names = c("Var1", "Var2")) 

そして、ここでは、私はエラーメッセージです:警告メッセージ: ファイル(ファイル、 "rt"): ファイル ' を開くことができませんが、読み取ろうとしているファイルに属すると思われる数字が続きます。

私は同じサーバーから同じような方法で読み込みに成功しました。たとえば、このコードは正常に動作します:

a = "/myotherpath/someSASfile.sas7bdat" 

b = read_sas(scp(host = 'myhost.place', path = a, 
      user= "myusername", password = "mypass", binary = TRUE)) 

誰もがコードの2セットは働く理由として任意のアイデアを持っていますが、最初はそうではないでしょうか?

+0

ファイルの種類が異なります。呼び出される関数は異なります。 – Marichyasana

+0

問題は、 'scp'はリモートファイルの内容を返しますが、最初の' read.fwf'はファイル名です。読み込みファイルを保存し、read.fwfのファイル名を使用します。そのread_sas関数は、生の文字ストリームを受け取り、データと直接関係しているようです –

答えて

0

コメントありがとうございます。彼らは私が解決策を見つけるのを助けました:readrのread_fwf関数。 はここCRANのreadr PDFファイルへのリンクです: https://cran.r-project.org/web/packages/readr/readr.pdf

read_fwf機能はread.fwfと同様に動作しますが、それは大規模なデータを読み込んで、より良い作品、およびこれらの機能を交換することは、私はファイルを正常に読み聞かせています。

h = scp(host = 'myhost.place', path = x, 
    user= "myusername", password = "mypass", binary = FALSE) 

i = read_fwf(h, fwf_positions(c(2, 53), c(11, 56), c("Var1", "Var2"))) 
関連する問題