isin函数 (请点击链接:isin函数提取和删除Dataframe指定行列)
更多原创PYTHON数据分析博文,请关注博文专栏(超链接:PYTHON数据分析)
本文介绍主要结介绍用Drop函数删除Dataframe指定行列:
drop(labels=None, axis=0, index=None, columns=None,
level=None, inplace=False, errors='raise'):
labels:一个字符或者数值,加上axis ,表示带label标识的行或者列;如 (labels='A', axis=1) 表示A列
axis:axis=0表示行,axis=1表示列
columns:列名
index:表示dataframe的index, 如index=1, index=a
inplace:True表示删除某行后原dataframe变化,False不改变原始dataframe
1. drop函数删除行
1.1. drop函数基于Index和columns删除行
IN [1]: data
Out[1]:
A B C D
0 0 1 2 3
1 4 5 6 7
2 8 9 10 11
IN [2]: data.drop(index=0) #删除index=0的行
Out[2]:
A B C D
1 4 5 6 7
2 8 9 10 11
IN [3]: data.drop(labels=0, axis=0) #删除 "行号为0" 的行
Out[3]:
A B C D
1 4 5 6 7
2 8 9 10 11
1.2. drop函数删除特定条件的行(加入条件,找出满足此条件的index,参考isin函数3(点击打开链接))
如删除A列中包含数值4 所在的行,可以先找出满足此条件的行号,再利用drop函数,如index=data[data['A'].isin([4])].index[0], 或者用index=data[data['A']==4].index[0]
In [4]: data.drop(index=data[data['A'].isin([4])].index[0]) #删除包含4的行
Out[4]:
A B C D
0 0 1 2 3
2 8 9 10 11
In [5]: data.drop(index=data[data['A']==4].index[0]) #删除包含4的行
Out[5]:
A B C D
0 0 1 2 3
2 8 9 10 11
2. drop函数删除列
2.1 drop函数基于Index和columns删除列
IN [6]: data.drop(columns='A') #删除columns为A的列
Out[6]:
B C D
0 1 2 3
1 5 6 7
2 9 10 11
IN [7]: data.drop(labels='A', axis=1) #删除 "列名为A" 的列
Out[7]:
B C D
0 1 2 3
1 5 6 7
2 9 10 11