暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Python数据分析笔记#6.2.2 Pandas-drop丢弃项

Yuan的学习笔记 2021-10-12
486


「目录」

  • 6.1 => Pandas的数据结构

  • 6.2 => Pandas的基本功能

    --------> reindex重新索引

    --------> drop丢弃数据

......

  • 6.3 => 数学和统计方法


drop丢弃数据

在整理数据的时候可能需要删除一个或多个项(也许是不需要,也许是没用,或者数据不对),drop方法可以返回一个在指定轴删除了项的对象

下面我们来看看对于Series和DataFrame怎么丢弃数据吧。

Series

我们先创建一个Series,值为0-5,索引是a-e:

In [7]: obj = pd.Series(np.arange(5.), index=['a''b''c''d''e'])

In [8]: obj
Out[8]:
a    0.0
b    1.0
c    2.0
d    3.0
e    4.0
dtype: float64

复制

比如我们删除行索引为'c'的项:

In [9]: new_obj = obj.drop('c')

In [10]: new_obj
Out[10]:
a    0.0
b    1.0
d    3.0
e    4.0
dtype: float64

复制

如果要删除多个行,可以将索引放入列表中,比如行'd'和'c':

In [11]: obj.drop(['d''c'])
Out[11]:
a    0.0
b    1.0
e    4.0
dtype: float64

复制


DataFrame

若是DataFrame,可以删除任意轴上的索引值。

In [12]: data = pd.DataFrame(np.arange(16).reshape((4,4)), index=['New York''Shanghai''Beijing''Tokyo'], columns=['one''two''three''four'])

In [13]: data
Out[13]:
          one  two  three  four
New York    0    1      2     3
Shanghai    4    5      6     7
Beijing     8    9     10    11
Tokyo      12   13     14    15

复制

对这个DataFrame调用drop方法会从行标签(axis 0)删除值:

In [14]: data.drop(['New York''Tokyo'])
Out[14]:
          one  two  three  four
Shanghai    4    5      6     7
Beijing     8    9     10    11

复制

传递参数axis=1axis='columns'可以删除列的值:

In [15]: data.drop('two', axis=1)
Out[15]:
          one  three  four
New York    0      2     3
Shanghai    4      6     7
Beijing     8     10    11
Tokyo      12     14    15

复制

同样,将列标签放入列表可以删除多个列

In [16]: data.drop(['two''four'], axis=1)
Out[16]:
          one  three
New York    0      2
Shanghai    4      6
Beijing     8     10
Tokyo      12     14

复制

上面使用drop方法不会改变原来的DataFrame,传入inplace=True参数可以就地改变DataFrame:

In [17]: data
Out[17]:
          one  two  three  four
New York    0    1      2     3
Shanghai    4    5      6     7
Beijing     8    9     10    11
Tokyo      12   13     14    15

In [18]: data.drop(['two''four'], axis=1, inplace=True)

In [19]: data
Out[19]:
          one  three
New York    0      2
Shanghai    4      6
Beijing     8     10
Tokyo      12     14

复制

Note:需要注意的是,使用inplace会销毁所有被删除的数据





往期回顾


Panda使用reindex重新索引





stay hungry, stay foolish.




记得点在看啦


文章转载自Yuan的学习笔记,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论