首页 > 解决方案 > 为 pandas 索引添加一个值

问题描述

我有 2 个数据框,我想在不重复列的情况下合并它们:

首先,我只从第二个数据框中获取唯一列(如答案所示):

cols_to_use = df2.columns.difference(df1)

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

现在,cols_to_use不包含complete_name,因为它被标记为重复,我该如何添加它?我试过了:

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

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

标签: pythonpandasdataframe

解决方案


对我来说它工作得很好:

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')

推荐阅读