• np.percentile 和df.quantile 分位数


    np.percentile

    numpy.percentile(a, q, axis=None, out=None, overwrite_input=False, interpolation='linear', keepdims=False)

    参数:

    a : array,用来算分位数的对象,可以是多维的数组
    q : array_like of float,介于0-100的float,用来计算是几分位的参数,如四分之一位就是25,如要算两个位置的数就(25,75)
    axis : 坐标轴的方向,一维的就不用考虑了,多维的就用这个调整计算的维度方向,取值范围0/1,默认值为沿着数组的展平版本计算百分位数
    out : 输出数据的存放对象,参数要与预期输出有相同的形状和缓冲区长度
    overwrite_input : bool,默认False,为True时及计算直接在数组内存计算,计算后原数组无法保存
    interpolation : 取值范围{'linear', 'lower', 'higher', 'midpoint', 'nearest'}
    默认liner,比如取中位数,但是中位数有两个数字6和7,选不同参数来调整输出
    keepdims : bool,默认False,为真时取中位数的那个轴将保留在结果中

    a = np.array([[10, 7, 4], [3, 2, 1]])
    a
    '''
    array([[10,  7,  4],
           [ 3,  2,  1]])
    '''
    np.percentile(a, 50)
    #3.5
    np.percentile(a, 50, axis=0)
    #array([[ 6.5,  4.5,  2.5]])
    np.percentile(a, 50, axis=1)
    #array([ 7.,  2.])
    np.percentile(a, 50, axis=1, keepdims=True)
    '''
    array([[ 7.],
           [ 2.]])
    '''

    pandas.DataFrame.quantile

    DataFrame.quantile(q=0.5, axis=0, numeric_only=True, interpolation='linear')

    参数:

    • q:float or array-like, default 0.5 (50% quantile),0 <= q <= 1之间的值,即要计算分位数
    • axis:{0, 1, ‘index’, ‘columns’}, default 0,对于行,等于0或“索引”,对于列,等于1或“列”
    • numeric_only:bool, default True,如果为False,则还将计算日期时间和时间增量数据分位数
    • interpolation:{‘linear’, ‘lower’, ‘higher’, ‘midpoint’, ‘nearest’},当所需分位数位于两个数据点ij之间时,此可选参数指定要使用的插值方法

    返回

    Series or DataFrame

    • 如果q是数组,则将返回DataFrame,其中index为q,列为self的列,值为分位数。
    • 如果q为float,则在index是self的列,值是分位数
    df = pd.DataFrame(np.array([[1, 1], [2, 10], [3, 100], [4, 100]]),
                      columns=['a', 'b'])

     

    df.quantile(.1)
    '''
    a    1.3
    b    3.7
    Name: 0.1, dtype: float64
    '''
    df.quantile([.1, .5])
    '''
           a     b
    0.1  1.3   3.7
    0.5  2.5  55.0
    '''
  • 相关阅读:
    JS兼容性总结
    [妙味DOM]第五课:事件深入应用
    关于iOS开发的学习
    世界经典——乔布斯
    梦想改变世界
    乔布斯在斯坦福大学的演讲
    10步让你成为更优秀的程序员
    程序员的八个级别
    程序员的学习和积累
    哈佛大学二十条训言
  • 原文地址:https://www.cnblogs.com/cgmcoding/p/13713171.html
Copyright © 2020-2023  润新知