xuxuyaha
xuxuyaha
采纳率55.6%
2021-05-04 21:38

将列表数据分成八个区间[, 400)、[400, 800)...[2800, )并统计各区间的百分比

 

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

2条回答

  • xufive 天元浪子 3天前

    导入numpy,将python列表转为numpy数组,剩余的工作参考下面的代码。以下代码随机生成了[0,100)范围内的1000个整数,分别统计[0,25)、[25,50)、[50,75)、[75,100)区间的百分比。

    >>> import numpy as np
    >>> demo = np.array([3,4,5]) # 仅演示列表如何转为数组,对后续代码并无任何影响
    >>> data = np.random.randint(0, 100, 1000) # 随机生成1000个[0,100)区间内的整数
    >>> data.shape
    (1000,)
    >>> d1 = data[np.where((data>=0)&(data<25))] # 筛选[0,25)范围内的
    >>> d2 = data[np.where((data>=25)&(data<50))] # 筛选[25,50)范围内的
    >>> d3 = data[np.where((data>=50)&(data<75))] # 筛选[50,75)范围内的
    >>> d4 = data[np.where(data>=75)] # 筛选[75,100)范围内的
    >>> d1.shape, d2.shape, d3.shape, d4.shape
    ((274,), (247,), (242,), (237,))
    >>> d1.shape[0]/data.shape[0]
    0.274
    >>> d2.shape[0]/data.shape[0]
    0.247
    >>> d3.shape[0]/data.shape[0]
    0.242
    >>> d4.shape[0]/data.shape[0]
    0.237
    点赞 评论 复制链接分享
  • liaojie0011 liaojie0011 4天前

    慢慢学,现在不懂

    点赞 评论 复制链接分享

相关推荐