簡體   English   中英

將數據框應用於在 for 循環中更改名稱

[英]Apply data frames to changing names in for loop

for(i in 1:length(file.list)){
 
 assign(paste("order_", i, sep = ""),i)  <- Data_cleaner(file.list[i])
 
}
}

我正在嘗試應用數據框來獲取新命名的單獨數據框,以便我可以在之后完全加入它們,並且我所做的功能確實獨立工作,但我不斷收到此錯誤。

Error in assign(paste("order_", i, sep = ""), i) <- Data_cleaner(file.list[i]) : target of assignment expands to non-language object

file.list是一個包含一些文本文件的文件, Data_cleaner()將這些文本文件轉換為數據幀,現在我需要將其應用於file.list每個 txt 文件。

任何對可能出錯的見解將不勝感激。

assign已經創建了一個變量(名稱由第一個參數定義,內容由第二個參數定義),您不需要使用<- ,您可以只寫:

for(i in file.list){
    assign(paste("a", i, sep = ""), Data_cleaner(file.list[i]))}

但是也許有更好的方法來“完全加入它們”,如果您的意思是它們具有相同的列並且您想合並它們的觀察結果,則可以簡單地執行以下操作:

df = data.frame()
for(i in file.list){
    df = rbind(df, Data_cleaner(file.list[i]))}

如果這不是你加入他們的真正意思,請告訴我是什么,我可以嘗試適應它。

通過避免 for 循環並使用來自 purrr 包的map修復了該問題

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM