[R] edit.row.names taking row names from the edited dataframe

Erik Iverson eiverson at NMDP.ORG
Thu Jul 30 20:59:29 CEST 2009


I didn't test what I wrote, but I see that "id" should be "ID" in the first line of R code; the one with the %in% operator, sorry!

-----Original Message-----
From: r-help-bounces at r-project.org [mailto:r-help-bounces at r-project.org] On Behalf Of Erik Iverson
Sent: Thursday, July 30, 2009 1:56 PM
To: Ross Culloch; r-help at r-project.org
Subject: Re: [R] edit.row.names taking row names from the edited dataframe

Hello, 

Try the following instead of your many separate assignments (I do not like to give objects the name "data", since that is the name of a built-in function). 

> ids <- subset(mumpup, id %in% c("A1", "B1", ... , "G1")) 
#in above line, fill in ... with other IDs you want

> ids$ID <- factor(ids$ID)
#remove extra factor levels, this would also work after the rbind
#if you called your object "ids" instead of "data". 

This really has nothing to do with the "row names" issue you mention, as far as I can tell.  It has to do with this: 

http://stackoverflow.com/questions/1195826/dropping-factor-levels-in-a-subsetted-data-frame-in-r

Best,
Erik Iverson 

-----Original Message-----
From: r-help-bounces at r-project.org [mailto:r-help-bounces at r-project.org] On Behalf Of Ross Culloch
Sent: Thursday, July 30, 2009 1:46 PM
To: r-help at r-project.org
Subject: [R] edit.row.names taking row names from the edited dataframe


Hi all,

I am struggling to work out how to use the rownames from an edited dataframe
rather than the row names from the original dataframe. In my data set i'm
trying to extract several rows of data on particular individuals, i don't
doubt i'm using the long way round but what i have in the way of a script is
this:


##selecting the IDs from the dataframe individually
A1<-mumpup[ID=="A1",]
B1<-mumpup[ID=="B1",]
B2<-mumpup[ID=="B2",]
B3<-mumpup[ID=="B3",]
B4<-mumpup[ID=="B4",]
B6<-mumpup[ID=="B6",]
B7<-mumpup[ID=="B7",]
B8<-mumpup[ID=="B8",]
B9<-mumpup[ID=="B9",]
B13<-mumpup[ID=="B13",]
C1<-mumpup[ID=="C1",]
G1<-mumpup[ID=="G1",]

data<-rbind(A1,B1,B2,B3,B4,B6,B7,B8,B9,B13,C1,G1)

It works fine to a certain extent, the only problem being that i get are all
the IDs in the original dataframe so if i use

summary(data$ID)

I get:

 A1  B1 B10 B13  B2  B3  B4  B6  B7  B8  B9  C1  G1  G3  H2  H9  J1  J2  J3 
K1 
354 354   0 354 354 354 354 354 354 354 354 246 210   0   0   0   0   0   0  
0 

So it does take the data out of the dataframe but it keeps the IDs for some
reason.

I have looked at the edit.data.frame help and i understand why it is
happening, it is taking the rownames from the original dataframe and not the
edit and it seems i should use edit.row.names=T in my script, but i can't
get that to work.

Does anyone have any suggestions at all? Any help is much appreciated,

Best wishes,

Ross

-- 
View this message in context: http://www.nabble.com/edit.row.names-taking-row-names-from-the-edited-dataframe-tp24744741p24744741.html
Sent from the R help mailing list archive at Nabble.com.

______________________________________________
R-help at r-project.org 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.

______________________________________________
R-help at r-project.org 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.




More information about the R-help mailing list