我正在尝试向我的数据框中添加一列,该列的作用等同于Excel中的SUMIF。我想避免使用groupby进行合并,然后尽可能合并。我试图在两列“经理”和“产品”上分组,然后求和“值”字段。我以为我可以使用groupby进行此操作,然后进行转换,但是当我添加第二列时,它将返回所有nan。
这是我的代码。
"/v1/XXXXXXX": {
"get": {
"produces": [
"application/xml"
],
"responses": {
"200": {
"description": "Meter reading data",
"schema": { ........ }
}
},
"x-amazon-apigateway-integration": {
"responses": {
"default": {
"statusCode": "200",
"responseParameters": {
"method.response.header.Content-Type": "'application/xml'"
}
}
}
}
我如何才能将其用作一体式衬纸?
答案 0 :(得分:0)
让我们先agg
然后返回merge
,因为transform
每次仅占用一列
s=df.groupby(["manager", "product"]).agg(mgr_prod_net = ('value', 'sum'), Sum = ('value', 'sum'))
df=df.merge(s.reset_index(),how='left')