Reputation: 5135
How to drop the row Name == 30
?
How about dropping 2 rows at the same time, say Name == 30
and Name == 40
?
Name Date sales discount net_sales
20 20060331 2.709 NaN 2.709
30 20060630 6.590 NaN 6.590
40 20060930 10.103 NaN 10.103
50 20061231 15.915 NaN 15.915
Thank you.
Upvotes: 0
Views: 211
Reputation: 30930
Use Series.ne
df[df['Name'].ne(30)]
or if 30 is str
df[df['Name'].ne('30')]
Output:
Name Date sales discount net_sales
0 20 20060331 2.709 NaN 2.709
2 40 20060930 10.103 NaN 10.103
3 50 20061231 15.915 NaN 15.915
To drop more than 1 you need to use Series.isin
:
df[~df['Name'].isin([20,30])]
Name Date sales discount net_sales
2 40 20060930 10.103 NaN 10.103
3 50 20061231 15.915 NaN 15.915
Use to drop column 5:
df.loc[:,~df.columns.isin([5])]
or
df.loc[:,df.columns != 5]
Upvotes: 0
Reputation: 5461
you can use index of filterd rows like below
df.drop(df[df["Name"]==30].index, inplace=True)
df
Upvotes: 1