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