2016-08-24 79 views
2

我在Unix系統上使用R.我在Windows中編寫了一個R腳本,並將其上載到Unix(通過putty),以便我可以使用命令source('CODE.R')在R(在unix中)運行腳本。我的輸出文本文件來自一個R腳本在Unix中運行?

現在,這是問題所在。在我的R腳本中,我寫了write.table(myDataOutput, file = "/myfolder/wantedData.txt")作爲我的輸出,但是在運行腳本之後,無法找到文本文件(不在任何文件夾中)。

我做了一些關於谷歌的研究,但似乎我的問題有點太具體,而且我沒有設法找到類似的問題。

請幫幫我。謝謝!

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:請揭示你自己。我保證,我不會冷落你。 –

0

歡迎來到SO。 This SuperUser question解釋了爲什麼Windows在文件路徑中使用反斜槓和Unix正斜槓。 This SNAP TECH博客文章介紹了choose.OS函數,如果您使用不同的操作系統,該函數很有用。 This SO question解釋瞭如何有效地將反斜槓轉換爲正斜槓。

+0

當動機不足時,Downvotes沒有用處。 – 000andy8484

相關問題