Python Pandas ŌĆō 创建一个子集并显示重复值的最后一个条目
为了创建一个子集并只显示重复值中的最后一个条目,请在drop_duplicates()方法中使用“keep”参数和“last”值。drop_duplicates()方法将删除重复项。
首先,让我们创建一个有3个列的DataFrame-
dataFrame = pd.DataFrame({'Car': ['BMW', 'Mercedes', 'Lamborghini', 'BMW', 'Mercedes', 'Porsche'],'Place': ['Delhi', 'Hyderabad', 'Chandigarh', 'Delhi', 'Hyderabad', 'Mumbai'],'UnitsSold': [85, 70, 80, 95, 55, 90]})
删除重复项并显示最后一个条目。使用keep参数,我们设置为“last”。重复的行除了最后一个条目之外将被删除。我们使用“subset”参数考虑了一个子集-
dataFrame2 = dataFrame.drop_duplicates(subset = ['Car', 'Place'], keep ='last').reset_index(drop = True)
示例
下面是代码-
import pandas as pd
# 创建DataFrame
dataFrame = pd.DataFrame({'Car': ['BMW', 'Mercedes', 'Lamborghini', 'BMW', 'Mercedes', 'Porsche'],'Place': ['Delhi', 'Hyderabad', 'Chandigarh', 'Delhi', 'Hyderabad', 'Mumbai'],'UnitsSold': [85, 70, 80, 95, 55, 90]})
print"Dataframe...\n", dataFrame
# 删除重复项并显示最后一个条目
# 使用keep参数,我们设置为“last”
# 重复的行除了最后一个条目之外将被删除
# 使用子集参数考虑了一个子集
dataFrame2 = dataFrame.drop_duplicates(subset = ['Car', 'Place'], keep ='last').reset_index(drop = True)
print"\n删除重复项后的DataFrame...\n",dataFrame2
输出
这将产生以下输出-
Dataframe...
Car Place UnitsSold
0 BMW Delhi 85
1 Mercedes Hyderabad 70
2 Lamborghini Chandigarh 80
3 BMW Delhi 95
4 Mercedes Hyderabad 55
5 Porsche Mumbai 90
删除重复项后的DataFrame...
Car Place UnitsSold
0 Lamborghini Chandigarh 80
1 BMW Delhi 95
2 Mercedes Hyderabad 55
3 Porsche Mumbai 90
极客教程