python - 在 DF 中删除特定值的重复项
问题描述
在数据框中,尝试删除重复项,尽管仅针对特定值,在排序后例如 DF 看起来像
Fruit value
apple 1
orange 2
pear 1
pear 2
pear 3
我只想在值为 pear 时删除重复项,保留 pear 的最高值。
我已将当前的 DF 拆分为 2:1.苹果和橙子 - DF1 2.梨 - DF2 3. 降序排序 4. 丢弃梨 2 和梨 1 5. 连接 DF1 和 DF2
这看起来很麻烦,所以想知道是否有更简单的方法来实现这一点。
Fruit value
apple 1
orange 2
pear 3
解决方案
在您的情况下,将它们分开drop_duplicates
,然后再concat
分开
df1=df.loc[df.Fruit.eq('pear')]
pd.concat([df.drop(df1.index),df1.sort_values('value').drop_duplicates('Fruit',keep='last')]).sort_index()
Out[111]:
Fruit value
0 apple 1
1 orange 2
4 pear 3
推荐阅读
- c# - 将带有 000 和 -1 的数字转换为只有一个 0 的正表示
- xamarin - Xamarin Forms 中照片的对象识别
- asp.net-core - 如何将 HasReadLink 添加到 OData 实体?
- python - 根据不在该表单中的列过滤模型表单
- python - 如何从实验室图像中删除 L 通道
- c# - 使用 sqlite 的 Entity Framework Core 中的奇怪行为
- spring - 如何在使用 informix 和 jdbcTemplate 的 Spring Boot 应用程序中更改设置锁定模式以等待?
- javascript - 如何在谷歌表格中获取更新的单元格值
- glsl - WebGL 错误 - INVALID_VALUE:shaderSource:字符串不是 ASCII
- python - 从 Excel 文件中读取合并的单元格并将它们存储在数据框中(使用 Python)