Pandas中DataFrame数据删除详情

  • Post category:Python

当我们得到的DataFrame数据中存在着不需要的、重复的或者错误的数据时,我们可以使用Pandas中的删除方法对其进行清洗,以提高数据的准确性和可用性。本文将介绍Pandas中DataFrame数据删除的详细攻略。

删除行

  1. 删除单行数据

使用.drop()方法可以删除单行的数据,该方法在原数据上进行操作,需要注意的是,该方法默认是以行为单位进行删除,如果要删除列数据,需要指定axis参数为1。

示例代码:

import pandas as pd

data = pd.read_csv('data.csv')
print('删除前:')
print(data)

data = data.drop(0, axis=0)
print('删除后:')
print(data)

执行结果:

删除前:
       name  age  gender
0      Jack   20    male
1     Alice   25  female
2  Benjamin   30    male
3   Charlie   35    male
删除后:
       name  age  gender
1     Alice   25  female
2  Benjamin   30    male
3   Charlie   35    male

可以看到,该示例中我们从数据中删除了第一行(index为0)的数据。

  1. 删除多行数据

使用.drop()方法可以删除多行数据,该方法在原数据上进行操作,需要注意的是,传入的参数需要为列表形式。

示例代码:

import pandas as pd

data = pd.read_csv('data.csv')
print('删除前:')
print(data)

data = data.drop([1, 2], axis=0)
print('删除后:')
print(data)

执行结果:

删除前:
       name  age  gender
0      Jack   20    male
1     Alice   25  female
2  Benjamin   30    male
3   Charlie   35    male
删除后:
      name  age gender
0     Jack   20   male
3  Charlie   35   male

可以看到,该示例中我们从数据中删除了第二行和第三行(index为1和2)的数据。

删除列

  1. 删除单列数据

使用.drop()方法可以删除单列的数据,需要指定axis参数为1。

示例代码:

import pandas as pd

data = pd.read_csv('data.csv')
print('删除前:')
print(data)

data = data.drop('age', axis=1)
print('删除后:')
print(data)

执行结果:

删除前:
       name  age  gender
0      Jack   20    male
1     Alice   25  female
2  Benjamin   30    male
3   Charlie   35    male
删除后:
       name gender
0      Jack   male
1     Alice female
2  Benjamin   male
3   Charlie   male

可以看到,该示例中我们从数据中删除了‘age’这一列的数据。

  1. 删除多列数据

使用.drop()方法可以删除多列数据,需要指定axis参数为1。

示例代码:

import pandas as pd

data = pd.read_csv('data.csv')
print('删除前:')
print(data)

data = data.drop(['age', 'gender'], axis=1)
print('删除后:')
print(data)

执行结果:

删除前:
       name  age  gender
0      Jack   20    male
1     Alice   25  female
2  Benjamin   30    male
3   Charlie   35    male
删除后:
       name
0      Jack
1     Alice
2  Benjamin
3   Charlie

可以看到,该示例中我们从数据中删除了‘age’和‘gender’这两列的数据。

除了以上介绍的方法外,还可以使用布尔索引进行删除,或利用条件语句进行删除等操作。总而言之,在数据清洗中,使用Pandas中的删除方法可以对数据进行有效的清理,以保证数据的准确性和可用性。