• <tfoot id='jL0Jq'></tfoot>
    • <bdo id='jL0Jq'></bdo><ul id='jL0Jq'></ul>
    <legend id='jL0Jq'><style id='jL0Jq'><dir id='jL0Jq'><q id='jL0Jq'></q></dir></style></legend>

    <small id='jL0Jq'></small><noframes id='jL0Jq'>

  • <i id='jL0Jq'><tr id='jL0Jq'><dt id='jL0Jq'><q id='jL0Jq'><span id='jL0Jq'><b id='jL0Jq'><form id='jL0Jq'><ins id='jL0Jq'></ins><ul id='jL0Jq'></ul><sub id='jL0Jq'></sub></form><legend id='jL0Jq'></legend><bdo id='jL0Jq'><pre id='jL0Jq'><center id='jL0Jq'></center></pre></bdo></b><th id='jL0Jq'></th></span></q></dt></tr></i><div id='jL0Jq'><tfoot id='jL0Jq'></tfoot><dl id='jL0Jq'><fieldset id='jL0Jq'></fieldset></dl></div>

        对在多个PANDA列上使用GROUPBY后出现的值进行计数

        Counting occurrence of values after using groupby on multiple pandas columns(对在多个PANDA列上使用GROUPBY后出现的值进行计数)

        <i id='T6DUu'><tr id='T6DUu'><dt id='T6DUu'><q id='T6DUu'><span id='T6DUu'><b id='T6DUu'><form id='T6DUu'><ins id='T6DUu'></ins><ul id='T6DUu'></ul><sub id='T6DUu'></sub></form><legend id='T6DUu'></legend><bdo id='T6DUu'><pre id='T6DUu'><center id='T6DUu'></center></pre></bdo></b><th id='T6DUu'></th></span></q></dt></tr></i><div id='T6DUu'><tfoot id='T6DUu'></tfoot><dl id='T6DUu'><fieldset id='T6DUu'></fieldset></dl></div>
          • <tfoot id='T6DUu'></tfoot>
              <bdo id='T6DUu'></bdo><ul id='T6DUu'></ul>
                <tbody id='T6DUu'></tbody>

                  <small id='T6DUu'></small><noframes id='T6DUu'>

                • <legend id='T6DUu'><style id='T6DUu'><dir id='T6DUu'><q id='T6DUu'></q></dir></style></legend>

                • 本文介绍了对在多个PANDA列上使用GROUPBY后出现的值进行计数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

                  问题描述

                  我的输入数据帧如下:

                  使用以下代码行生成

                   l = [["a", 12, 12], ["a", 12, 33.], ["b", 12.3, 12.3], ["a", 13, 1]]
                  df = pd.DataFrame(l, columns=["a", "b", "c"])
                  

                  我目前可以按如下方式累计统计频率

                  使用

                  df['freq'] = df.groupby(by=["a","b"]).cumcount()+1
                  

                  它考虑了列a和列b中的公共值,并对它们进行计数。然而,我只想在列b的值不同而列a的值相同的情况下增加频率计数。下图显示了所需输出的一种形式:

                  如何以优化的方式在 pandas 身上实现这一点?

                  推荐答案

                  可以使用双精度.groupby。例如:

                  df["freq"] = df.groupby("a")["b"].apply(lambda x: x.groupby(x).ngroup() + 1)
                  print(df)
                  

                  打印:

                     a     b     c  freq
                  0  a  12.0  12.0     1
                  1  a  12.0  33.0     1
                  2  b  12.3  12.3     1
                  3  a  13.0   1.0     2
                  

                  这篇关于对在多个PANDA列上使用GROUPBY后出现的值进行计数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

                  本站部分内容来源互联网,如果有图片或者内容侵犯了您的权益,请联系我们,我们会在确认后第一时间进行删除!

                  相关文档推荐

                  groupby multiple coords along a single dimension in xarray(在xarray中按单个维度的多个坐标分组)
                  Group by and Sum in Pandas without losing columns(Pandas中的GROUP BY AND SUM不丢失列)
                  Is there a way of group by month in Pandas starting at specific day number?( pandas 有从特定日期开始的按月分组的方式吗?)
                  Group by + New Column + Grab value former row based on conditionals(GROUP BY+新列+基于条件的前一行抓取值)
                  Groupby and interpolate in Pandas(PANDA中的Groupby算法和插值算法)
                  Pandas - Group Rows based on a column and replace NaN with non-null values(PANAS-基于列对行进行分组,并将NaN替换为非空值)
                  <legend id='JkUjq'><style id='JkUjq'><dir id='JkUjq'><q id='JkUjq'></q></dir></style></legend>

                • <tfoot id='JkUjq'></tfoot>
                  1. <i id='JkUjq'><tr id='JkUjq'><dt id='JkUjq'><q id='JkUjq'><span id='JkUjq'><b id='JkUjq'><form id='JkUjq'><ins id='JkUjq'></ins><ul id='JkUjq'></ul><sub id='JkUjq'></sub></form><legend id='JkUjq'></legend><bdo id='JkUjq'><pre id='JkUjq'><center id='JkUjq'></center></pre></bdo></b><th id='JkUjq'></th></span></q></dt></tr></i><div id='JkUjq'><tfoot id='JkUjq'></tfoot><dl id='JkUjq'><fieldset id='JkUjq'></fieldset></dl></div>
                      <bdo id='JkUjq'></bdo><ul id='JkUjq'></ul>

                      <small id='JkUjq'></small><noframes id='JkUjq'>

                          <tbody id='JkUjq'></tbody>