【问题标题】:Cannot Reindex from a duplicate axis while subsetting子集化时无法从重复轴重新索引
【发布时间】:2018-09-06 22:11:10
【问题描述】:

我有以下数据框:

print(df)

 Col    Col     Col  Name
  A      B       C   Alex
  B      B       C   Jack
  B      A       A   Mark

我想得到以下结果,其中至少出现一个A

 Col    Col     Col  Name
  A      B       C   Alex
  B      A       A   Mark

我试过了:

final_df = df["Col"] == "A" 但它给了我“ValueError: cannot reindex from a duplicate axis”

【问题讨论】:

    标签: python-3.x pandas subset valueerror


    【解决方案1】:

    存在重复列名的问题,因此如果选择 df["Col"] 获取所有名为 Col 的列。

    可能的解决方案是将所有列与any 进行比较,以检查每行至少一个True

    df = df[(df == 'A').any(1)]
    print (df)
      Col Col Col
    0   A   B   C
    2   B   A   A
    

    详情:

    print ((df == 'A'))
         Col    Col    Col
    0   True  False  False
    1  False  False  False
    2  False   True   True
    
    print ((df == 'A').any(1))
    0     True
    1    False
    2     True
    dtype: bool
    

    【讨论】:

      猜你喜欢
      • 2015-02-26
      • 1970-01-01
      • 2016-05-17
      • 2020-05-23
      • 2018-02-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-08-07
      相关资源
      最近更新 更多