通过drop方法,可以删除Series的一个元素,或者DataFrame的一行或一列。默认情况下,drop方法按行删除,且不会修改原数据,但指定axis=1则按列删除,指定inplace=True则修改原数据。
In [9]: s= pd.Series(np.arange(5),index=list('abcde')) In [10]: s Out[10]: a 0 b 1 c 2 d 3 e 4 dtype: int32 In [11]: new_s = s.drop('c') In [12]: new_s Out[12]: a 0 b 1 d 3 e 4 dtype: int32 In [13]: s Out[13]: a 0 b 1 c 2 d 3 e 4 dtype: int32 In [14]: df = pd.DataFrame(np.arange(16).reshape(4,4),columns=['one','two','three','four']) In [15]: df Out[15]: one two three four 0 0 1 2 3 1 4 5 6 7 2 8 9 10 11 3 12 13 14 15 In [16]: df.drop(2) Out[16]: one two three four 0 0 1 2 3 1 4 5 6 7 3 12 13 14 15 In [17]: df.drop('two',axis = 1) # 指定删除列,而不是默认的行 Out[17]: one three four 0 0 2 3 1 4 6 7 2 8 10 11 3 12 14 15 In [18]: df Out[18]: one two three four 0 0 1 2 3 1 4 5 6 7 2 8 9 10 11 3 12 13 14 15 In [21]: df.drop(2,inplace=True) #修改原数据 In [22]: df Out[22]: one two three four 0 0 1 2 3 1 4 5 6 7 3 12 13 14 15