python - 如何根据 Pandas 中特定值的一列转换仅在一列中具有唯一值的 DataFrame
问题描述
我有一个像这样的DataFrame:
item_id item_price
1 10.0
1 5.0
1 6.0
1 7.0
2 2.0
3 3.0
4 5.0
我尝试获取一个 DataFrame,该item_price
列仅包含一系列唯一值。并像这样删除其他不符合此条件的行:
item_id item_price
2 2.0
3 3.0
4 5.0
但是,我对如何在 Pandas 中实现它感到困惑。任何帮助,将不胜感激。
解决方案
drop_duplicates
与参数一起使用subset
来识别列以检查重复项并keep=False
删除所有重复行:
df = df.drop_duplicates(subset=['item_id'], keep=False)
print (df)
item_id item_price
4 2 2.0
5 3 3.0
6 4 5.0
推荐阅读
- javascript - 定义层次结构 Json 结构
- powershell - 找不到 Get-AppxPackageManifest 时如何避免错误
- logging - 将日志写入日志文件以及 kafka
- r - R Highcharter Sankey 节点列属性问题
- python - 按行值过滤熊猫数据框
- excel - VBA-计算2个值在同一列中的次数
- c# - 如何从 PerformContext 获取 Hangfire 中后台作业的总重试次数?
- c# - 如何合并两张图片?
- c# - C# 获取实际的 GMT 时间
- android - 如何从 BottomSheetDialogFragment 创建 TimePickerDIalog