How can I drop columns by name in a data frame ?

0 votes
Apr 13, 2018 in Data Analytics by shams
• 3,580 points
17 views

1 answer to this question.

Your answer

Your name to display (optional):
Privacy: Your email address will only be used for sending these notifications.
0 votes
We can Drop Columns by name in a Data frame using following two methods:

Create a data frame

The following code creates a sample data frame which we will use for demonstration.
set.seed(556)
mydata <- data.frame(m=letters[1:5], x=runif(5,10,50), y=sample(5), z=rnorm(5))
# Delete column by name

Method I :

One of the most easiest way to drop columns is by using subset() function.
The following code tells R to drop variables x and z.
The '-' sign indicates dropping variables.
Note: Don't specify the variable names in quotes when using subset() function.

df = subset(mydata, select = -c(x,z) )

> mydata
  m        x y           z
1 a 33.83910 2 -1.02569136
2 b 23.50851 3  0.59367584
3 c 22.91966 1 -0.06436851
4 d 33.18065 4 -0.04719129
5 e 13.79128 5 -1.80186137

> df
  m y
1 a 2
2 b 3
3 c 1
4 d 4
5 e 5

Method II :

The function names() returns all the column names and the '!' sign indicates negation.
drop <- c("x","z") #we are creating a character vector named drop in which we are storing column names x and z
df = mydata[,!(names(mydata) %in% drop)] #Selecting all the variables except the column names specified in the vector drop. The '!' sign indicates negation.
> df
  m y
1 a 2
2 b 3
3 c 1
4 d 4
5 e 5

It can also be written like :  df = mydata[,!(names(mydata) %in% c("x","z"))]

> set.seed(556)
> mydata <- data.frame(m=letters[1:5], x=runif(5,10,50), y=sample(5), z=rnorm(5))
> df = mydata[,!(names(mydata) %in% c("x","z"))]
> df
  m y
1 a 2
2 b 3
3 c 1
4 d 4
5 e 5
answered Apr 13, 2018 by zombie
• 3,690 points

Related Questions In Data Analytics

0 votes
1 answer

How to sort a data frame by columns in R?

You can just use the order function ...READ MORE

answered Apr 10, 2018 in Data Analytics by darklord
• 6,140 points
50 views
0 votes
1 answer

How to drop data frame columns by name?

Easily you can do it: drops <- c("V2","V4") df1[ ...READ MORE

answered Apr 10, 2018 in Data Analytics by DeepCoder786
• 1,700 points
13 views
0 votes
1 answer
0 votes
1 answer

How to drop factor levels in a subsetted data frame?

You can use factor(ff) to drop levels ...READ MORE

answered Apr 17, 2018 in Data Analytics by kappa3010
• 2,010 points

edited Apr 17, 2018 by kappa3010 576 views
+1 vote
2 answers

How can I get experience in Data Science as a fresher?

Work on projects of your own. It’s tough, ...READ MORE

answered Aug 9, 2018 in Data Analytics by ANMOL
• 3,620 points
29 views
0 votes
1 answer

How can I find number of columns in a dataframe

To know the number of columns in ...READ MORE

answered Oct 11, 2018 in Data Analytics by ANMOL
• 3,620 points
17 views
0 votes
1 answer

How to spilt a column of a data frame into multiple columns

it is easily achievable by using "stringr" ...READ MORE

answered Apr 9, 2018 in Data Analytics by DeepCoder786
• 1,700 points
23 views
0 votes
1 answer

How to convert a list to data frame in R?

Let's assume your list of lists is ...READ MORE

answered Apr 12, 2018 in Data Analytics by nirvana
• 3,040 points

edited Apr 12, 2018 by nirvana 1,283 views
0 votes
1 answer

How can I calculate mean per group in a data.frame?

You can use aggregate function for calculating ...READ MORE

answered May 24, 2018 in Data Analytics by zombie
• 3,690 points
12 views
0 votes
1 answer

How to convert tables to a data frame in R ?

> trial.table.df <- as.data.frame(trial.table) //assuming that trial.table ...READ MORE

answered Apr 20, 2018 in Data Analytics by zombie
• 3,690 points
17 views

© 2018 Brain4ce Education Solutions Pvt. Ltd. All rights Reserved.
"PMP®","PMI®", "PMI-ACP®" and "PMBOK®" are registered marks of the Project Management Institute, Inc. MongoDB®, Mongo and the leaf logo are the registered trademarks of MongoDB, Inc.