dataframe完全重复的行删除
时间: 2023-04-06 07:02:44 浏览: 94
可以使用 pandas 库中的 drop_duplicates() 方法来删除 dataframe 中完全重复的行。具体操作如下:
df.drop_duplicates(inplace=True)
其中,inplace=True 表示在原 dataframe 上进行修改,如果不加该参数,则会返回一个新的 dataframe。
相关问题
pandas: DataFrame 删除重复的行
在 Pandas 中,可以使用 drop_duplicates() 方法删除 DataFrame 中的重复行。
示例代码:
```python
import pandas as pd
# 创建 DataFrame
data = {'name': ['Alice', 'Bob', 'Alice', 'Charlie', 'Bob'],
'age': [25, 30, 25, 35, 30],
'city': ['New York', 'Paris', 'London', 'Tokyo', 'Paris']}
df = pd.DataFrame(data)
# 删除重复行
df.drop_duplicates(inplace=True)
# 打印结果
print(df)
```
输出结果:
```
name age city
0 Alice 25 New York
1 Bob 30 Paris
3 Charlie 35 Tokyo
```
可以看到,重复的行已经被删除了。注意,drop_duplicates() 方法默认会判断所有列的值是否相同,只有完全相同的行才会被删除。如果只想根据某些列进行判断,可以使用 subset 参数指定这些列的名称。例如,如果只想根据 name 和 city 这两列进行判断,可以这样写:
```python
df.drop_duplicates(subset=['name', 'city'], inplace=True)
```
如何剔除两个Dataframe中完全重复的行?
在Python的pandas库中,你可以使用`duplicated()`函数配合`drop_duplicates()`函数来去除DataFrame中完全重复的行。以下是步骤:
1. 首先,你需要对DataFrame应用`duplicated()`函数,这将返回一个布尔值的Series,表示每一行是否与其他行完全相同。
```python
duplicates = df.duplicated()
```
2. 然后,可以使用这个布尔索引来选择不重复的行,或者直接传给`drop_duplicates()`函数来删除重复行。
```python
# 如果你想要保留不重复的第一行,可以这样做
df_no_duplicates = df[~duplicates]
# 或者如果你想直接删除重复行
df_no_duplicates = df.drop_duplicates()
```
如果你只想删除特定列的重复行,可以在`duplicated()`函数中指定`subset`参数:
```python
df_no_duplicates = df.drop_duplicates(subset=['column1', 'column2'])
```
阅读全文