zoukankan      html  css  js  c++  java
  • Pandas使用groupby()时是否会保留顺序?

    PythonPandas:使用groupby()和agg()时是否保留了顺序?

    看到这个增强问题

    简短的答案是肯定的,groupby会保留传入的顺序。你可以用你的例子来证明这一点:

    df = pd.DataFrame({'A': ['group1', 'group1', 'group2', 'group2', 'group3', 'group3'],
                       'B': [10, 12, 10, 25, 10, 12],
                       'C': [100, 102, 100, 250, 100, 102]})
    
    >>> df
    [output]
            A   B    C
    0  group1  10  100
    1  group1  12  102
    2  group2  10  100
    3  group2  25  250
    4  group3  10  100
    5  group3  12  102
    
    In [20]: df.sort_index(ascending=False).groupby('A').agg([np.mean, lambda x: x.iloc[1] ])
    Out[20]: 
               B             C         
            mean <lambda> mean <lambda>
    A                                  
    group1  11.0       10  101      100
    group2  17.5       10  175      100
    group3  11.0       10  101      100
    

    顺便提一句,如果要安全的获得组的第二个值,可以使用df.groupby('A').nth(1)

  • 相关阅读:
    MD5 Hashing in Java
    Caching in Presto
    ORC 文件存储格式
    Presto 性能优化点
    数据分页问题
    ES
    ES
    ES
    ES
    ES
  • 原文地址:https://www.cnblogs.com/ZeroTensor/p/10260914.html
Copyright © 2011-2022 走看看