根据其他两列平均一列

时间:2018-07-30 19:00:21

标签: pandas

我有一个包含四列的数据框。对于第2列和第3列中的每个匹配项,我都希望对第4列中的值求平均值并将其存储在新的数据框中。

熊猫的新手,所以不确定如何进行此操作。任何指导都将不胜感激!

例如:

输入:

<html>
            <head>
                <title></title>
                <meta charset="UTF-8">
                <meta name="viewport" content="width=device-width, initial-scale=1.0">

                <style>
                    iframe {
                        border-top: #c00 1px dotted;
                        border-right: #c00 2px dotted;
                        border-left: #009bdf 2px dotted;
                        border-bottom: #255625 4px dotted;
                    }

                </style>
            </head>
            <body> 
                <iframe id="iframe" src="/contact.html" height="800" width="800">   
                </iframe>
                 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
                <script>
                    $(document).ready(function () {
                        $('iframe').load(function () {
                            $('iframe').contents().find("head")
                                    .append($("<style type='text/css'> .yourclass{color:#ff0000;} </style>"));
                        });
                    });
                </script>
            </body>
        </html>

输出

2017 1 1 100
2016 1 1 200
2017 1 3 50
2016 1 3 100

1 个答案:

答案 0 :(得分:2)

groupby()然后mean()可以解决问题

d = pd.DataFrame({'a':[1,1,1,1], 'b':[1,1,3,3], 'c':[100,200,50,100]})
print(d)
   a  b    c
0  1  1  100
1  1  1  200
2  1  3   50
3  1  3  100
d.groupby(['a','b']).mean()
       c
a b     
1 1  150
  3   75