📜  删除功能 pandas - Python (1)

📅  最后修改于: 2023-12-03 14:50:18.649000             🧑  作者: Mango

删除功能 pandas - Python

在使用Pandas进行数据处理时,删除数据是常见的操作,有两种方法可以在Pandas中实现删除功能。本文将介绍这两种方法,并提供示例代码和使用建议。

方法一:使用drop函数

drop函数是Pandas中的一种非常常用的函数,可以用来删除DataFrame或Series的数据。这个函数有许多参数可以使用,如用来删除行或列、删除多个行或列、删除时是否修改原始对象等。

删除一行或一列

我们可以使用drop函数来删除一行或一列,如下所示:

import pandas as pd

df = pd.DataFrame({'a': [1, 2, 3], 'b': [4, 5, 6], 'c': [7, 8, 9]})
df = df.drop('a', axis=1)  # 删除一列
df = df.drop(0, axis=0)    # 删除一行

其中,参数axis用来指定删除的是行(axis=0)还是列(axis=1),行列的标识不可颠倒。

删除多行或多列

要删除多行或多列,只需要传递一个列表,其中包含要删除的所有行或列的标签。

import pandas as pd

df = pd.DataFrame({'a': [1, 2, 3], 'b': [4, 5, 6], 'c': [7, 8, 9]})
df = df.drop(['a', 'b'], axis=1)  # 删除多列
df = df.drop([0, 1], axis=0)      # 删除多行
是否修改原始数据

默认情况下,drop函数不会修改原始数据。如果想要原地删除,需要将inplace参数设置为True。以下示例删除行,同时修改原始DataFrame。

import pandas as pd

df = pd.DataFrame({'a': [1, 2, 3], 'b': [4, 5, 6], 'c': [7, 8, 9]})
df.drop([0, 2], inplace=True)  # 删除多行,并修改原来的 df
方法二:使用del关键字

我们也可以使用Python中的del关键字来删除一列或多列。

import pandas as pd

df = pd.DataFrame({'a': [1, 2, 3], 'b': [4, 5, 6], 'c': [7, 8, 9]})
del df['a']           # 删除列
del df['b'], df['c']  # 删除多列

但是需要注意的是,del关键字无法删除行,只能删除列。

总结

以上就是在Pandas中进行删除操作的两种方法。当需要删除的数据比较少时,简单易懂的del关键字会很方便。但如果需要删除大量数据或对原始数据修改,则使用drop()函数最为方便。