将列添加到由另一列索引的pandas数据帧

时间:2013-06-28 08:31:10

标签: python pandas

我有一个看起来像

的pandas数据框
        some_data  another_id
id                                                            
312871     ...     abc
312977     ...     def
...

和字典letters = {"abc": "x", "def": "y"}。我想将letters作为列添加到我的数据框中,但它在道德上被another_id编入索引,所以我不能只设置df["letters"] = letters

我确信有一种美丽,优雅的方式来做到这一点。它是什么?

2 个答案:

答案 0 :(得分:1)

我希望我理解你的问题是正确的。你想要这样的东西:

df['letters'] = df['another_id'].map(letters)

        some_data another_id letters
id                                  
312871          5        abc       x
312977          6        def       y

答案 1 :(得分:0)

啊哈!

df.merge(pd.DataFrame({"letters": letters}), left_on="dscode", right_index=True)