12
我對使用R進行編程非常新,但我正嘗試在多個文件中讀取某個目錄,併爲它們分別指定一個唯一的名稱。我正在使用R中的樹木年代學程序庫(包dpIR)和read.tucson
函數讀取文件。雖然我使用的是特定的包,但我認爲我的問題相當一般:如何重新命名for循環中的數據幀
在循環中,我想通過連接"t"
與每個單獨的文件名創建文件。所以,如果我的目錄中有一個名爲"2503"
的文件,我想在R中創建一個數據幀"t2503"
。接下來,我想讀取使用r.tucson
函數到每個數據幀的數據。而不是將讀入數據分配給數據框,我只是用數據覆蓋連接。有人能幫我弄清楚我失蹤的步驟嗎?
這裏是我嘗試使用代碼:
#set to appropriate directory
setwd("C:/work")
#get a list of files in the directory
files <- list.files()
numfiles <- length(files)
for (i in 1:numfiles)
{
name<-paste("t",files[i],sep="")
name<-read.tucson(files[i],header=NULL)
}
謝謝你的幫助!我嘗試使用「assign」,正如你在這裏概述的那樣,它完全符合我的需要。謝謝! – user1913921
警告:當你在一個函數中使用'assign'時,它的行爲與在頂層使用它有所不同,你遲早需要'env = .GlobalEnv'。 – user1666959
這是一個很好的建議。如果OP想要更多的信息,他可以看看[這裏](http://stackoverflow.com/questions/9801208/assign-a-function-in-a-loop)。 –