[英]Using names() in a loop in r
我是R的新手,並沒有超越使用for循環。
我想用以下代碼完成的是一個循環,為30個列表命名變量1到400:
for(m in 1:30)
{
names(paste0("points_GW", m)) <- 1:400
}
我得到以下結果:
Error in names(paste0("points_GW", m)) <- 1:400 :
target of assignment expands to non-language object
提前致謝
這樣做的最好的辦法往往是有一個list
列表。 然后可以使用例如points_GW[[1]]
來訪問單獨的列表。 如果你有充分的理由讓它們保持在全球環境中,那么另一種選擇是:
for(m in 1:5)
{
names(.GlobalEnv[[paste0("points_GW", m)]]) <- 1:400
}
這是因為全局環境可以像任何其他環境一樣使用,並且可以使用標准[[
operator]來索引環境。 另一個選擇是使用eval
並parse
或substitute
。 但是,我建議list
清單絕對是更常規的選擇。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.