Skip to content
Back to formatted view

Raw Message

Message-ID: <49D24FD5.8020409@univie.ac.at>
Date: 2009-03-31T17:16:05Z
From: Erich Neuwirth
Subject: naming vectors/ matrices in R
In-Reply-To: <22802121.post@talk.nabble.com>

This is probably what you want

mydf<-as.data.frame(matrix(1:60,10))
for (i in (1:dim(mydf)[2])) assign(letters[i],mydf[,i])


I would not, however, recommend it.
It really does not produce very readable code.


emj83 wrote:
> I would like to create a series of vectors in a loop and name them with
> letters.
> 
> I know the command letters gives me the 26 letters of the alphabet.
> 
> For example, I have a dataframe, called A, with 6 columns.
> 
>> B<-length(A)
>> C<-letters(1:B)
> [1] "a" "b" "c" "d" "e" "f"
> 
> I would like to extract the first letter "a", and put the first column of
> dataframe A in a vector called "a"
> 
>> C<-e[1] 
> [1] "a"
> 
> but when I type
> 
>> e[1]=A[,1]
> 
> Warning message:
> In e[1] =A[, 1] :
>   number of items to replace is not a multiple of replacement length
> 
> It thinks I am trying to replace the first element of e with the first
> column of A.
> 
> is there any other way in which I can achieve this?
> 
> Thanks in advance
> 
> 
> 

-- 
Erich Neuwirth, University of Vienna
Faculty of Computer Science
Computer Supported Didactics Working Group
Visit our SunSITE at http://sunsite.univie.ac.at
Phone: +43-1-4277-39464 Fax: +43-1-4277-39459