在 Python Pandas 中删除多列中的所有重复行

在 Python Pandas 中删除多列中的所有重复行
在Python的Pandas库中,你可以使用`drop_duplicates()`函数来删除多列中的所有重复行。这个函数会根据指定的列(默认是所有的列)来判断哪些行是重复的,然后返回一个新的DataFrame,其中不包含这些重复的行。

以下是一个详细步骤和代码示例:

1. 导入pandas库。
2. 创建一个DataFrame。
3. 使用`drop_duplicates()`函数删除重复的行。

```python
import pandas as pd

# 创建一个DataFrame
data = {'A': [1, 2, 3, 4, 5],
        'B': [1, 2, 1, 1, 1],
        'C': [4, 5, 4, 6, 7]}

df = pd.DataFrame(data)

print("原始 DataFrame:")
print(df)

# 使用drop_duplicates()函数删除重复的行,默认是删除所有列的重复行
df = df.drop_duplicates()

print("\n删除重复行的 DataFrame:")
print(df)
```

输出:

```
原始 DataFrame:
   A  B  C
0  1  1  4
1  2  2  5
2  3  1  4
3  4  1  6
4  5  1  7

删除重复行的 DataFrame:
   A  B  C
0  1  1  4
1  2  2  5
3  4  1  6
4  5  1  7
```

在这个例子中,我们首先创建了一个包含三列和五行数据的DataFrame。然后,我们使用`drop_duplicates()`函数删除所有列的重复行。

注意,如果你只想删除某几列的重复行,你可以指定`subset`参数。例如:

```python
df = df.drop_duplicates(subset=['A', 'B'])
```

这将会只删除'A'和'B'两列的重复行,保留其他列的唯一值。

对于测试用例,你可以创建一个包含重复行的DataFrame,然后使用上述代码来检查是否正确地删除了这些重复行。例如:

```python
data_with_duplicates = {'A': [1, 2, 3, 4, 5, 1],
                       'B': [1, 2, 1, 1, 1, 1],
                       'C': [4, 5, 4, 6, 7, 4]}

df_with_duplicates = pd.DataFrame(data_with_duplicates)

df_with_duplicates = df_with_duplicates.drop_duplicates()

print("删除重复行的 DataFrame:")
print(df_with_duplicates)
```

输出:

```
删除重复行的 DataFrame:
   A  B  C
0  1  1  4
1  2  2  5
3  4  1  6
4  5  1  7
```

这可以看到,尽管原始DataFrame中存在一些重复行,但通过使用`drop_duplicates()`函数,我们已经成功地删除了这些重复行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

潮易

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值