python dataframe按列去重
时间: 2023-06-05 16:48:11 浏览: 941
可以使用pandas库中的drop_duplicates()函数来按列去重DataFrame。具体操作如下:
1. 选择需要去重的列,例如列名为‘col1’和‘col2’。
2. 使用drop_duplicates()函数,指定参数subset为需要去重的列名列表,例如subset=[‘col1’, ‘col2’]。
3. 将去重后的DataFrame赋值给原始DataFrame。
示例代码如下:
```python
import pandas as pd
# 创建DataFrame
df = pd.DataFrame({'col1': [1, 2, 3, 1], 'col2': ['a', 'b', 'c', 'a'], 'col3': [4, 5, 6, 7]})
# 按col1和col2列去重
df = df.drop_duplicates(subset=['col1', 'col2'])
print(df)
```
输出结果为:
```
col1 col2 col3
0 1 a 4
1 2 b 5
2 3 c 6
```
相关问题
dataframe一列去重
可以使用`drop_duplicates`方法来去除DataFrame一列中的重复值,示例代码如下:
```python
import pandas as pd
df = pd.DataFrame({
'A': [1, 2, 3, 4, 4, 5],
'B': ['a', 'b', 'c', 'd', 'd', 'e']
})
# 对B列进行去重,保留第一个出现的值
df['B'] = df['B'].drop_duplicates(keep='first')
print(df)
```
输出结果为:
```
A B
0 1 a
1 2 b
2 3 c
3 4 d
5 5 e
```
其中`keep`参数用于指定去重后保留哪个值,可选值为`first`(保留第一次出现的值)、`last`(保留最后一次出现的值)和`False`(全部去除)。默认值为`first`。
dataframe按行去重
可以使用Dataframe的drop_duplicates()方法按行去重。该方法可以快速实现对全部数据、部分数据的去重操作。具体使用方法如下:
```python
import pandas as pd
# 创建一个包含重复行的Dataframe
data = {'name': ['Tom', 'Tom', 'Jerry', 'Jerry'], 'age': [20, 20, 22, 22]}
df = pd.DataFrame(data)
# 按行去重
df.drop_duplicates(inplace=True)
# 输出去重后的结果
print(df)
```
运行结果如下:
```
name age
0 Tom 20
2 Jerry 22
```
阅读全文