2016-08-24 10 views
2

私はUnixシステムでRを使用しています。私は窓にRスクリプトを書いて、パテでUnixにアップロードしたので、コマンドはsource('CODE.R')でRでスクリプトを実行することができました。Rスクリプトの出力テキストファイルはどこにあるのですか?

ここで問題があります。私のRスクリプトでは、私は出力としてwrite.table(myDataOutput, file = "/myfolder/wantedData.txt")を書きましたが、スクリプトを実行した後、テキストファイルはどこにも見つかりません(フォルダにはありません)。

Googleでいくつかの調査をしましたが、私の質問はあまりにも具体的であると思われましたが、同様の問題を見つけることはできませんでした。

私を助けてください。ありがとうございました!

ps:スラッシュが更新されました。混乱させて申し訳ありません。

答えて

0

私はこの問題を自分で抱えており、Rが相対パスを持つファイルに使用するデフォルトのディレクトリを特定できません。絶対パスを使用したため、ファイルは\myfolder\wantedData.txtにあります。

sudo find . -name 'wantedData.txt` 

この検索が空の場合、Rはファイルを書きませんでした。あなたがそれを見つけたら、あなたが期待していなかった場所にいる場合、Rは絶対パスではなくの相対パスとしてあなたのパスを解釈します。この場合、次回にファイルを見つけるために場所を覚えておいてください。

更新

は、UNIXからもらった警告メッセージに基づいて、私はあなたのRスクリプトを使用すると、指定した場所に出力ファイルを書き込みする権限を持っていないことを推測します。この問題を回避できるsudoでRスクリプトを実行してみてください。

+2

ファイルが存在しないディレクトリに書き込むことはできません。これが相対パスであれば、私は 'myfolder'が存在するかどうかわかりません。 (もちろん、バックスラッシュはエスケープせずにウィンドウ上で動作しないし、* nixシステムではうまく動作しません) – Roland

+0

@Roland彼はスクリプトがUnix上で実行されていると述べました。 '\ myfolder'は、UNIXファイルシステムで何か相対的な意味ではありません。ルートの直下にある' myfolder'というフォルダを意味します。したがって、Rがこのようにディレクトリパスを解釈するのは謎です。 –

+2

@Downvoter:自分自身を明らかにしてください。私はあなたにdownvoteしません、私は約束します。 –

0

ようこそ。 This SuperUser questionは、WindowsがファイルパスでバックスラッシュとUNIXスラッシュを使用する理由を説明しています。 This SNAP TECHブログ投稿でchoose.OS機能が導入されました。この機能は、別のOSで作業する場合に便利です。 This SO questionは、バックスラッシュをスラッシュに効率的に変換する方法を説明しています。

+0

動機付けされていない場合、下降は役に立ちません。 – 000andy8484

関連する問題