📜  del df.loc - Python (1)

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

用 Python 中的 del df.loc 删除数据

Python 的 Pandas 库提供了许多方便的方法,其中之一就是使用 del 关键字来删除 DataFrame 中的一行或一列。在删除行或列时,可以使用 lociloc 函数来选择要删除的元素。

在本文中,我们将学习如何使用 del df.loc 删除 DataFrame 中的一行或一列。

1. 删除一列

要删除 DataFrame 中的一列,请使用以下代码:

del df.loc[:, 'column_name']
  • 使用 del 关键字。
  • loc 函数用于要删除的区域。
  • 冒号 : 表示要删除所有行。
  • 'column_name' 是要删除的列名。

例如,以下代码将从 DataFrame 中删除名为 age 的列:

import pandas as pd

data = {'name': ['Alice', 'Bob', 'Charlie', 'David'],
        'age': [25, 32, 18, 47],
        'gender': ['F', 'M', 'M', 'M']}

df = pd.DataFrame(data)

print('Original DataFrame:')
print(df)

# 删除 'age' 列
del df.loc[:, 'age']

print('\nDataFrame after deleting the column:')
print(df)

输出:

Original DataFrame:
       name  age gender
0     Alice   25      F
1       Bob   32      M
2   Charlie   18      M
3     David   47      M

DataFrame after deleting the column:
      name gender
0    Alice      F
1      Bob      M
2  Charlie      M
3    David      M

注意,使用 del 关键字会直接修改原始 DataFrame。如果要创建一个新的 DataFrame,则可以使用 drop 函数。

2. 删除一行

要删除 DataFrame 中的一行,请使用以下代码:

del df.loc[row_index]
  • 使用 del 关键字。
  • loc 函数用于要删除的区域。
  • row_index 是要删除的行索引。

例如,删除索引为 2 的行:

import pandas as pd

data = {'name': ['Alice', 'Bob', 'Charlie', 'David'],
        'age': [25, 32, 18, 47],
        'gender': ['F', 'M', 'M', 'M']}

df = pd.DataFrame(data)

print('Original DataFrame:')
print(df)

# 删除索引为 2 的行
del df.loc[2]

print('\nDataFrame after deleting the row:')
print(df)

输出:

Original DataFrame:
       name  age gender
0     Alice   25      F
1       Bob   32      M
2   Charlie   18      M
3     David   47      M

DataFrame after deleting the row:
     name  age gender
0   Alice   25      F
1     Bob   32      M
3   David   47      M

同样地,使用 del 关键字会直接修改原始 DataFrame。如果要创建一个新的 DataFrame,则可以使用 drop 函数。

结论

使用 del df.loc 可以轻松地删除 DataFrame 中的一行或一列。有助于简化数据处理任务,提高代码的可读性和可维护性。