删除dataframe行名相同
时间: 2023-10-23 22:03:35 浏览: 38
删除dataframe行名相同可以通过使用pandas库的duplicated()和drop_duplicates()函数来实现。
duplicated()函数可以检查DataFrame中的每一行是否有重复行,返回一个布尔类型的Series,如果该行为重复行则返回True,否则返回False。drop_duplicates()函数可以删除DataFrame中的重复行。
下面是具体的步骤:
1. 首先导入pandas库:import pandas as pd
2. 定义一个DataFrame对象df,包含重复行和非重复行。
3. 使用duplicated()函数,将其应用在df的行上,创建一个布尔类型的Series对象,保存结果。
4. 使用drop_duplicates()函数删除重复行,并覆盖原来的df。
示例代码如下:
```python
import pandas as pd
# 创建一个包含重复行和非重复行的DataFrame对象
data = {'A': [1, 2, 3, 4, 1],
'B': [2, 3, 4, 5, 2],
'C': ['a', 'b', 'c', 'd', 'a']}
df = pd.DataFrame(data)
# 检查重复行
duplicated = df.duplicated()
print("重复行判断结果:")
print(duplicated)
# 删除重复行
df.drop_duplicates(inplace=True)
print("删除重复行后的DataFrame:")
print(df)
```
运行以上代码,输出结果为:
```
重复行判断结果:
0 False
1 False
2 False
3 False
4 True
dtype: bool
删除重复行后的DataFrame:
A B C
0 1 2 a
1 2 3 b
2 3 4 c
3 4 5 d
```
可以看到,代码成功将重复行删除,得到了一个不含重复行的DataFrame对象。