如何删除 Pandas 中的重复列?

Linda Hamilton
发布: 2024-11-01 20:17:02
原创
896 人浏览过

How to Remove Duplicate Columns in Pandas?

如何删除 Pandas 中的重复列

如果您正在处理具有重复列的 DataFrame,您可能需要删除它们出于数据一致性或分析目的。这里有一个简单的解决方案来实现这一点:

<code class="python">df = df.loc[:,~df.columns.duplicated()].copy()</code>
登录后复制

机制:

  • df.columns.duplicated() 创建一个布尔数组,其中 True 表示重复列名称,False 表示唯一名称。
  • 应用 ~(逻辑否定)会翻转此数组,仅选择不重复的列。
  • df.loc[:,...] 使用布尔索引用于选择这些不重复的列,有效地删除重复项。
  • copy() 确保使用删除的重复项创建一个新的 DataFrame,而原始 DataFrame 不受影响。

注意:此方法根据列名称而不是列值检查重复项。

替代方法:

删除重复项索引:

<code class="python">df = df.loc[~df.index.duplicated(),:].copy()</code>
登录后复制

这使用与上面类似的机制删除任何重复的行,但它检查索引而不是列名称。

按值删除重复项(警告):

<code class="python">df = df.loc[:,~df.apply(lambda x: x.duplicated(),axis=1).all()].copy()</code>
登录后复制

此方法会扫描每一列,如果该列中的所有值都重复,则将其删除。但是,应谨慎使用它,因为它检查值而不是列名称,并且可能无法在所有情况下产生所需的结果。

以上是如何删除 Pandas 中的重复列?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!