pandas.DataFrame.drop()函数

在Pandas库中,DataFrame.drop() 用于移除DataFrame中的行或列。

df.drop(labels = None, axis = 0, index = None, columns = None, level = None, inplace = False,errors = 'raise')
参数:
1.labels:要删除的列或者行,如果要删除多个,传入列表
2.axis:轴的方向,0为行,1为列,默认为0
3.index:指定的一行或多行
4.columns:指定的一列或多列
5.level:索引层级,将删除此层级
6.inplace:布尔值,默认为False
7.errors:ignore或raise,默认为raise,如果为ignore,则容忍错误,仅删除现有标签

删除行

1.使用索引删除行:

df.drop(1,axis=0)

2.使用索引删除多行

df.drop([1,2,3],axis=0)df.drop(index=[1,2,3])等效。

3. 删除某列指定值所在的行

df = df.drop(df[df['columns_name'] == 'USA'].index) # 删除columns_name列中值为USA的行

4. 根据某列条件删除多行的值

df = df.drop(df[df['score'] < 80].index) # 删除score列中小于80的行

5. 根据多个列的条件删除行

(1)删除gender为M或者score小于90的行
df = df.drop(df[(df['gender'] == 'M') | (df['score'] < 90)].index)
(2)删除gender为M 同时score小于90的行
df = df.drop(df[(df['gender'] == 'M') & (df['score'] < 90)].index)

删除列

1.删除单列

df.drop('columns_name', axis=1) # 注意此处 axis参数为1

2.删除多列

df.drop(df.columns[1:3], axis=1, inplace=True)

posted @ 2024-02-13 15:59  华小电  阅读(136)  评论(0编辑  收藏  举报