2015-07-20 81 views
0

我認爲這應該有一個簡單的答案,但我還沒有找到它。基本上,我想創建一個調用和讀入文本文件的函數。以下是我已經(我在一個閃亮的功能ui.R文件寫入這一點,但我不認爲這是問題的一部分):R:用粘貼功能在文本文件中讀取

popovers <- function(pop_name){ 
    fileName <- paste0("\'",pop_name,".txt\'") 
    js <- readChar(fileName, file.info(fileName)$size)) 
    js 
} 

現在,我甚至不能串聯fileName因爲我從paste0函數中得到錯誤「不能強制類型'關閉'到'字符'類型的向量。有想法該怎麼解決這個嗎?這是在各種.txt文件中閱讀的正確方法嗎?

+1

通常,這個錯誤意味着R可以找到的唯一名爲'pop_name'的對象是一個函數,它不能將它強制轉換爲字符。但是用你提供的信息進行調試是不可能的。有很多方法可以讀取文本文件,具體取決於您想要的內容。有'read.table','readLines','scan'等。 – joran

+1

'str(pop_name)'的輸出是什麼? – RHertel

+0

確保你傳遞'popovers(「string」)'而不是'popovers(string)'。 – MichaelChirico

回答

0

我從評論中結合不同的建議得到了答案。下面是正確的代碼:

popovers <- function(pop_name){ 
    fileName <- paste0(pop_name,".txt") 
    js <- readChar(fileName, file.info(fileName)$size)) 
    js 
} 

我刪除周圍的____ TXT名額外的報價,並確保通過popovers()在引號中的字符串,如popovers("string")。只要___。txt文件在工作目錄中,就應該正確讀取它!