Drop column from a data frame
assign NULL to the column:
dfxyz <- data.frame(x=1:10,y=11:20,z=factor(c(rep(0,5),rep(1,5)))) dfxyz
x y z 1 1 11 0 2 2 12 0 3 3 13 0 4 4 14 0 5 5 15 0 6 6 16 1 7 7 17 1 8 8 18 1 9 9 19 1 10 10 20 1
dfxyz$y <- NULL dfxyz
x z 1 1 0 2 2 0 3 3 0 4 4 0 5 5 0 6 6 1 7 7 1 8 8 1 9 9 1 10 10 1
On Sun, Dec 26, 2010 at 8:22 PM, John Sorkin
<jsorkin at grecc.umaryland.edu> wrote:
I am trying to drop a column of a data frame. The code below attempts to drop a numeric column (which does not work but gives no error or warning) and a factor column (which does not work but gives an error).
I would appreciate someone telling me why my code does not work, and suggesting code that will work.
Thanks,
John
rm(dfxyz,dfxz,dfxy)
# create the data frame.
dfxyz <- data.frame(x=1:10,y=11:20,z=factor(c(rep(0,5),rep(1,5))))
dfxyz
names(dfxyz)
# try to drop y column
# does not work, does not produce error message
dfxz <- dfxyz[,-(dfxyz$y)]
dfxz
# try to drop z column
# does not work, produces error message:
# In Ops.factor(df$z) : - not meaningful for factors
dfxy <- dfxyz[,-dfxyz$z]
dfxy
John David Sorkin M.D., Ph.D.
Chief, Biostatistics and Informatics
University of Maryland School of Medicine Division of Gerontology
Baltimore VA Medical Center
10 North Greene Street
GRECC (BT/18/GR)
Baltimore, MD 21201-1524
(Phone) 410-605-7119
(Fax) 410-605-7913 (Please call phone number above prior to faxing)
Confidentiality Statement:
This email message, including any attachments, is for ...{{dropped:17}}