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