Hi,
If you want to assign a vector to every element of a list,
vec1<-11:20

list1<-split(LETTERS[1:10],1:length(LETTERS[1:10]))
list2<-lapply(1:10,function(x) vec1)
or,
list3<-lapply(list1,function(x) list1=vec1)
or
list4<-list()
vec2<-1:5
list4[1:length(list1)]<-list(vec2)

# if you want to assign each element of vector to each element of list 
(assuming both have the same lengths),

vec1<-11:20
list1<-split(LETTERS[1:10],1:length(LETTERS[1:10]))
newlist<-split(vec1,1:length(vec1))


A.K.


----- Original Message -----
From: Spencer Maynes <[email protected]>
To: [email protected]
Cc: 
Sent: Monday, July 2, 2012 6:16 PM
Subject: [R] Assigning a vector to every element of a list.

I have a vector d of unknown length, and a list b of unknown length. I
would like to replace every element of b with d. Simply writing b<-d does
not work as R tries to fit every element of d to a different element of d,
and b<-rep(d,length(b)) does not work either as it makes a list of
length length(d)*length(b) not a list of length(b). I know how to do this
with a for loop, but I feel that there has to be a more efficient way. Any
suggestions?

    [[alternative HTML version deleted]]

______________________________________________
[email protected] mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

______________________________________________
[email protected] mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to