使用pandas的drop函数删除数据
使用pandas对DataFrame进行删除操作drop函数参数详解DataFrame.drop(labels=None, axis=0, index=None, columns=None, level=None, inplace=False, errors='raise')labels:待删除的行列名,labels =‘A’ 即表示A列或者A行axis:{0或1}默认方向为0,纵向也就是列方向,
·
使用pandas的drop对数据进行删除操作
drop函数参数详解
DataFrame.drop(labels=None, axis=0, index=None, columns=None, level=None, inplace=False, errors='raise')
- labels:待删除的行列名,labels = ‘A’ 即表示A列或者A行
- axis:{0或1}默认方向为0,纵向也就是列方向,1则表示横向,即行方向
- index:某一行或者多行
- colums:某一列或者多列
- level:等级,针对多重索引,暂时不会遇见
- inplace:True 或 False 默认为false,指是否在原数据上做操作
- errors:一般不会用到
drop删除行列
df = pd.DataFrame([[1,2,3,3,5],
[2,3,4,5,6],
[1,3,5,7,9],
[2,4,6,8,5]],
index=['a','b','c','d'],
columns=['A','B','C','D','E'])
df
数据框数据如下
- 删除缺失值
## 删除缺失值是dropna函数,顺带一提
df.dropna() ## 删除所有含缺失值的行,默认axis = 0
df.dropna(axis=1) # 删除含缺失值的列
df.dropna(axis='columns') # 删除含有缺失值的列
df['columns'].dropna() # 删除指定列缺失值
- 直接删除行列
# 删除行数据
df = df.drop(['a']) ## 方法一,直接填写行索引
df = df.drop(labels = ['a','b']) ## 方法二,使用labels
df = df.drop(index='a') ## 使用index参数
# 删除列数据
df = df.drop(['A'],axis=1) ## 需加上axis参数才可删除列数据
df = df.drop(labels='A',axis=1)
df = df.drop(columns='A') ## 使用columns参数
- 删除满足条件行列数据
## 删除行数据
df = df.drop(df.index[df['A'] == 2]) ## 删除A列数值为2的行
df = df.drop(df.index[(df['A'] == 2)|(df['A'] == 3)]) ## 删除A列数值为2或者3的数据所在行
df = df.drop(df.index[(df['A'] >= 2)&(df['A'] < 3)]) ## 删除A列数值大于等于且3的数据所在行
## 删除列数据
df = df.drop(df.columns[df.loc['a'] == 3],axis = 1) ## 删除a行数据为3的列
df = df.drop(df.columns[(df.loc['a'] == 3) | (df.loc['a'] == 2)],axis = 1)
df = df.drop(df.columns[(df.loc['a'] < 3) & (df.loc['a'] >= 2)],axis = 1)
更多推荐
已为社区贡献1条内容
所有评论(0)