代码之家  ›  专栏  ›  技术社区  ›  HHH

如何设置大熊猫中两列的值

  •  1
  • HHH  · 技术社区  · 7 年前

    我有一个函数,它返回一个包含两个Python元素的元组。我将使用这个函数在熊猫的数据框架中创建两个新列。这是我现在的密码

    df['A','B'] = df.apply(lambda x: my_fun (X['A'], x['B'], other_arguments)[0:2], axis=1)
    

    my_fun 返回包含5个元素的元组,我将使用前两个元素创建新列。 但是,它只创建一列,并将该列的值设置为返回的元组。如何创建两列而不是一列?

    2 回复  |  直到 7 年前
        1
  •  1
  •   iamklaus    7 年前
    < PRE> df[['A','B']] = df.apply(lambda x: my_fun (X['A'], x['B'], other_arguments)[0:2], axis=1).apply(pd.Series)
        2
  •  1
  •   PyRsquared    7 年前
    <尝试< /P>
    df['A'], df['B'] = df.apply(lambda x: my_fun(x['A'], x['B'], other_arguments)[:2], axis=1)
    

    my_fun 返回一个包含5个元素的元组,您只希望保留前2个元素,然后在函数调用中使用切片 [:2]