Python 熊猫,跨行求和,取决于列内容

Python 熊猫,跨行求和,取决于列内容,python,pandas,numpy,dataframe,Python,Pandas,Numpy,Dataframe,我有一个奇怪的数据框,它的设置方式如下: header_one | header_two | header_three | header_four | to_sum_one | to_sum_two 4 5 1 2 header_one header_three 2 4 10 12 header_two h

我有一个奇怪的数据框,它的设置方式如下:

header_one | header_two | header_three | header_four | to_sum_one | to_sum_two
     4             5            1              2       header_one   header_three
     2             4            10             12      header_two   header_four
我有没有办法通过对sum_one和sum_two字段中指示的列求和来创建一个新列?例如,第一个条目加起来等于5,因为我们要求和为1(4)和3(1)

谢谢大家!

你有没有调查过这个问题

assign(**kwargs)
将新列分配给数据帧,返回新对象(副本),并将新列添加到原始列中

这似乎就是你想要的。

你有没有调查过这个问题

assign(**kwargs)
将新列分配给数据帧,返回新对象(副本),并将新列添加到原始列中


这似乎正是您想要的。

因此您可以在此处使用
查找

df.lookup(df.index,df.to_sum_one)+df.lookup(df.index,df.to_sum_two)
Out[282]: array([ 5, 16], dtype=int64)

因此,您可以在此处使用
查找

df.lookup(df.index,df.to_sum_one)+df.lookup(df.index,df.to_sum_two)
Out[282]: array([ 5, 16], dtype=int64)

我会尝试使用apply,因为这是使用它的最简单方法,只需将所需的参数作为.value获取,并在插入中使用它们

另外,为了避免混淆参数,我将创建一个函数来获取sum参数并使用它

也许有更好的方法,但可能会有所帮助

    header_one | header_two | header_three | header_four | to_sum_one | to_sum_two
         4             5            1              2       header_one   header_three
         2             4            10             12      header_two   header_four


def sum(param1, param2):
     return df.param1+ df.param2
然后插入:

df.insert(6, "Sum", sum(df.to_sum_one, df.to_sum_two))

我会这样做的。让我知道它是否有效

我会尝试使用apply,因为这是使用它的最简单方法,只需获取所需的参数作为.value,并在insert中使用它们即可

另外,为了避免混淆参数,我将创建一个函数来获取sum参数并使用它

也许有更好的方法,但可能会有所帮助

    header_one | header_two | header_three | header_four | to_sum_one | to_sum_two
         4             5            1              2       header_one   header_three
         2             4            10             12      header_two   header_four


def sum(param1, param2):
     return df.param1+ df.param2
然后插入:

df.insert(6, "Sum", sum(df.to_sum_one, df.to_sum_two))

我会这样做的。让我知道它是否有效

这正是我一直在寻找的,而且成功了!非常感谢你,我一直在努力寻找解决方案,这正是我一直在寻找的,而且成功了!非常感谢你,我一直在努力寻找解决方案这一个其实也很有效,但是W-B有熊猫内部解决方案这一个其实也很有效,但是W-B有熊猫内部解决方案