代码之家  ›  专栏  ›  技术社区  ›  Mike Vlad

为熊猫索引添加值

  •  3
  • Mike Vlad  · 技术社区  · 6 年前

    我有两个数据帧要合并而不复制列:

    首先,我只从第二个数据帧获得唯一的列(如 this 答案):

    cols_to_use = df2.columns.difference(df1)
    

    我需要保留一个列,它是我的唯一标识符,名为 complete_name

    马上, cols_to_use 不包含 完整名称 因为它被标记为重复,我如何添加它?我试过:

    cols_to_use.append(pd.Index(['complete_name']))
    

    但它什么也做不了。有什么帮助吗?

    1 回复  |  直到 6 年前
        1
  •  3
  •   jezrael    6 年前

    对我来说它工作得很好:

    df1 = pd.DataFrame({'A':list('abcdef'),
                       'B':[4,5,4,5,5,4],
                       'C':[7,8,9,4,2,3],
                       'D':[1,3,5,7,1,0],
                       'E':[5,3,6,9,2,4],
                       'F':list('aaabbb')})
    
    cols_to_use = df1.columns.difference(['A','C'])
    print (cols_to_use)
    Index(['B', 'D', 'E', 'F'], dtype='object')
    
    print (cols_to_use.append(pd.Index(['complete_name'])))
    Index(['B', 'D', 'E', 'F', 'complete_name'], dtype='object')
    
    print (cols_to_use.union(['complete_name']))
    Index(['B', 'D', 'E', 'F', 'complete_name'], dtype='object')