Я новичок на языке R, и мне еще многое предстоит узнать.
У меня есть список W
элементов J, и я хотел бы переименовать его элементы W[[i]]
с Wi
, то есть W[[1]]
с W1
и т.д., Используя цикл. Как я могу сделать?
Как переименовать список элементов, проиндексированный петлей в R
Ответ 1
names(W) <- paste0("W", seq_along(W))
должен сделать трюк.
Обратите внимание, что paste0
был введен в R 2.15 как "немного более эффективная" версия paste(..., sep = "", collapse)
. Если вы используете более раннюю версию R, вы можете добиться того же, используя paste
:
names(W) <- paste("W", seq_along(W), sep = "")
Ответ 2
В качестве альтернативы вы можете использовать sprintf()
:
w<-list(a="give",b="me an",c="example")
names(w)<-sprintf("W%i",1:length(w))
Как вы можете видеть, для этого вам не нужен цикл.
Он должен выполнять эту работу. В этом примере имена W1, W2 и W3
print(w)
$W1
[1] "give"
$W2
[1] "me an"
$W3
[1] "example"