python删除dataframe某一列重复的行
时间: 2023-07-06 17:13:06 浏览: 100
你可以使用pandas库中的drop_duplicates方法来删除DataFrame中某一列中重复的行。具体的代码如下:
```python
import pandas as pd
# 创建一个示例DataFrame
df = pd.DataFrame({'A': [1, 2, 3, 4, 5],
'B': [5, 6, 7, 8, 9],
'C': [1, 2, 3, 3, 4]})
# 删除'C'列中重复的行
df = df.drop_duplicates(subset='C', keep='first')
print(df)
```
其中,`subset`参数指定要删除重复行的列名,`keep`参数指定保留的行,可以选择保留第一个出现的行(即保留第一次出现的行),或者保留最后一个出现的行。
相关问题
python将dataframe某一列重复的行删掉
要删除DataFrame中某一列重复的行,你可以使用pandas库的`drop_duplicates()`方法。这个方法将根据指定的列标签删除所有重复的行。
以下是一个示例代码:
```python
import pandas as pd
# 创建一个示例DataFrame
df = pd.DataFrame({'A': [1, 1, 2, 2, 3],
'B': ['a', 'b', 'c', 'd', 'e']})
# 根据列'A'删除重复的行
df = df.drop_duplicates(subset=['A'])
# 打印结果
print(df)
```
在这个例子中,我们有一个包含两列'A'和'B'的DataFrame。我们使用`drop_duplicates()`方法,并通过`subset`参数指定我们想要根据的列'A'。
输出将为:
```
A B
0 1 a
2 2 c
4 3 e
```
可以看到,重复的行已被删除,只保留了第一次出现的行。
你也可以不指定`subset`参数,这样`drop_duplicates()`方法将删除所有列都完全相同的重复行。
dataframe删除某一列值重复的行
可以使用 `drop_duplicates` 方法来删除某一列值重复的行。
假设要删除名为 `col_name` 的列中值重复的行,可以按照以下方式操作:
```python
df.drop_duplicates(subset=['col_name'], keep='first', inplace=True)
```
其中,`subset` 参数指定要考虑的列名或列名列表,`keep` 参数指定保留哪些值,`inplace` 参数指定是否在原始 DataFrame 上进行修改。
例如,以下代码删除名为 `age` 的列中值重复的行:
```python
import pandas as pd
data = {'name': ['Alice', 'Bob', 'Charlie', 'David', 'Bob'],
'age': [25, 30, 35, 40, 30],
'gender': ['F', 'M', 'M', 'M', 'M']}
df = pd.DataFrame(data)
print(df)
df.drop_duplicates(subset=['age'], keep='first', inplace=True)
print(df)
```
输出:
```
name age gender
0 Alice 25 F
1 Bob 30 M
2 Charlie 35 M
3 David 40 M
4 Bob 30 M
name age gender
0 Alice 25 F
1 Bob 30 M
3 David 40 M
```