dataframe按照索引去除重复行
时间: 2023-07-07 21:35:15 浏览: 85
pandas DataFrame 删除重复的行的实现方法
5星 · 资源好评率100%
可以在调用 drop_duplicates() 函数时,指定关键字参数 keep,并设置为 'first' 或 'last',从而实现按照索引去除重复行。具体来说,如果将 keep 参数设置为 'first',则保留第一次出现的行,并删除后续重复行;如果将 keep 参数设置为 'last',则保留最后一次出现的行,并删除前面的重复行。
例如,以下代码展示了如何按照索引去除 dataframe 中的重复行:
```
import pandas as pd
# 创建一个示例 dataframe,包含重复索引和重复行
df = pd.DataFrame({'A': [1, 2, 3, 2, 1], 'B': [4, 5, 6, 6, 4]}, index=['a', 'b', 'c', 'b', 'a'])
# 输出原始 dataframe
print('原始 dataframe:')
print(df)
# 按照索引去除重复行,保留第一次出现的行
df = df.drop_duplicates(keep='first')
# 输出去重后的 dataframe
print('去重后的 dataframe(保留第一次出现的行):')
print(df)
# 按照索引去除重复行,保留最后一次出现的行
df = df.drop_duplicates(keep='last')
# 输出去重后的 dataframe
print('去重后的 dataframe(保留最后一次出现的行):')
print(df)
```
执行上述代码后,输出结果如下:
```
原始 dataframe:
A B
a 1 4
b 2 5
c 3 6
b 2 6
a 1 4
去重后的 dataframe(保留第一次出现的行):
A B
a 1 4
b 2 5
c 3 6
去重后的 dataframe(保留最后一次出现的行):
A B
c 3 6
b 2 6
a 1 4
```
可以看到,当 keep 参数设置为 'first' 时,保留的是第一次出现的行,即索引为 'a' 和 'b' 的那两行;当 keep 参数设置为 'last' 时,保留的是最后一次出现的行,即索引为 'c' 和 'b' 的那两行。
阅读全文