Python Pandas – 创建一个子集并仅显示重复值中的最后一个条目
要创建一个子集并仅显示重复值中的最后一个条目,请在方法中使用带有“last”值的“keep”参数drop_duplicates()。该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
#CreateDataFrame
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
#removingduplicatesanddisplayinglastentry
# using keep parameter, we have set "last"
#duplicaterowsexceptthelastentrywillgetdeleted
#consideredasubsetusingthesubsetparameter
dataFrame2 = dataFrame.drop_duplicates(subset = ['Car', 'Place'], keep ='last').reset_index(drop = True)
print"\nUpdated DataFrame after removing duplicates...\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
Updated DataFrame after removing duplicates...
Car Place UnitsSold
0 Lamborghini Chandigarh 80
1 BMW Delhi 95
2 Mercedes Hyderabad 55
3 Porsche Mumbai 90