正确的语法,以按索引将一列数据添加到另一个链接

时间:2019-07-03 19:21:10

标签: python pandas indexing slice

首先,由于数据集很大,我试图将其作为矢量操作来实现。

import pandas as pd

sub_list = [{"uniqueId": "123456", "ref_idx": 1},
            {"uniqueId": "123457", "ref_idx": 2},
            {"uniqueId": "123458", "ref_idx": 3},
            {"uniqueId": "123459", "ref_idx": 4},
            {"uniqueId": "123460", "ref_idx": 5},
            {"uniqueId": "123461", "ref_idx": 6}]

primary_list = [{"uniqueId": "123456"},
                {"uniqueId": "123457"},
                {"uniqueId": "123458"},
                {"uniqueId": "123459"},
                {"uniqueId": "123460"},
                {"uniqueId": "123461"},
                {"uniqueId": "123462"},
                {"uniqueId": "123463"},
                {"uniqueId": "123464"},
                {"uniqueId": "123465"}]

subset_df = pd.DataFrame(sub_list)
primary_df = pd.DataFrame(primary_list)

subset_df.set_index("uniqueId", inplace=True)
primary_df.set_index("uniqueId", inplace=True)

primary_df["ref_idx"] = primary_df.loc([subset_df.index]["ref_idx"])

问题出在最后一条陈述上。我已经尝试过各种迭代方法,以了解如何从subset_df(ref_idx值)获取切片并将其作为新列填充到primary_df中。当然,那些没有出现在subset_df中的记录在primary_df中将没有值(NaN)。没关系。

只是不确定语法是否正确。

我看到类似TypeError的错误:列表索引必须是整数或切片,而不是str; 呼叫()接受1到2个位置参数,但给出了3个,当一个参数分隔[[subset_df.index],[“ ref_idx”])

时发生

基本上,使用索引来限定数据,但返回ref_idx值。

想法?

0 个答案:

没有答案