开发者

pandas求平均数和中位数的方法实例

目录
  • 准备
  • 1.求平均数

    • 1.1对全表进行操作
      • 1.1.2 求取每行的平均数
    • 1.2 对单独的一行或者一列进行操作
      • 1.2.1 求取单独某一列的平均数
    • 1.3 对多行或者多列进行操作
      • 1.3.1 求取多列的平均数
      • 1.3.2 求取多行的平均数
  • 2 求中位数

    • 2.1对全表进行操作
      • 2.1.1对每一列求中位数
      • 2.1.2 对每一行求中位数
    • 2.2 对单独的一行或者一列进行操作
      • 2.2.1 对某一列求中位数
      • 2.2.2 对某一行求中位数
    • 2.3 对多行或者多列进行操作
      • 2.3.1 对多列求中位数
      • 2.3.2 对多行求中位数
  • 总结

    准备

    pandas是一个强大的python数据分析的工具包。

    pandas是基于NumPy构建的。

    pandas的主要功能

    • 具备对其功能的数据结构DataFrame、Series
    • 集成时间序列功能
    • 提供丰富的数学运算和操作
    • 灵活处理缺失数据

    本文用到的表格内容如下:

    pandas求平均数和中位数的方法实例

    先来看一下原始情形:

    import pandas as pd
    ​
    df = pd.read_excel(r'C:\Users\admin\Desktop\测试.xlsx')
    print(df)
    

    result:

       分类            货品  实体店销售量  线上销售量  成本   售价

    0  水果            苹果      34    234  12   45

    1  家电           电视机      56    784  34  156

    2  家电      www.cppcns.com      冰箱      78    345  24  785

    http://www.cppcns.com书籍  python从入门到放弃      25     34  13   89

    4  水果            葡萄     789     56   7  398

    1.求平均数

    1.1对全表进行操作

    1.1.1求取每列的平均数
    df = pd.read_excel(r'C:\Users\admin\Desktop\测试.xlsx')
    print(df.mean())
    

    result编程客栈:

    实体店销售量    196.4

    线上销售量     290.6

    成本         18.0

    售价 &nbshttp://www.cppcns.comp;      294.6

    dtype: float64

    1.1.2 求取每行的平均数

    df = pd.read_excel(r'C:\Users\admin\Desktop\测试.xlsx')
    print(df.mean(axis=1))
    

    result:

    0     81.25

    1    257.50

    2    308.00

    3     40.25

    4    312.50

    dtype: float64

    先看运行结果,我们可以看到,每一行求平均数的时候直接忽略文本字符类型的列,只对数字类型的列进行求平均编程客栈数。就比如第一行的数据

       分类            货品  实体店销售量  线上销售量  成本   售价

    0  水果            苹果      34    234  12   45

    上面的81.25=(34+234+12+45) / 4,,其他的行也是如此

    1.2 对单独的一行或者一列进行操作

    1.2.1 求取单独某一列的平均数

    df = pd.read_excel(r'C:\Users\admin\Desktop\测试.xlsx')
    print(df['实体店销售量'].mean())
    

    result:

    196.4

    1.2.2 求取单独某一行的平均数

    df = pd.read_excel(r'C:\Users\admin\Desktop\测试.xlsx')
    print(df.iloc[[0]].mean())
    

    result:

    实体店销售量     34.0

    线上销售量     234.0

    成本         12.0

    售价         45.0

    dtype: float64

    1.3 对多行或者多列进行操作

    1.3.1 求取多列的平均数

    df = pd.read_excel(r'C:\Users\admin\Desktop\测试.xlsx')
    print(df[['实体店销售量', "线上销售量"]].mean())
    

    result:

    实体店销售量    196.4

    线上销售量     290.6

    dtype: float64

    1.3.2 求取多行的平均数

    df = pd.read_excel(r'C:\Users\admin\Desktop\测试.xlsx')
    print(df.iloc[[0, 1]].mean())
    

    result:

    实体店销售量     45.0

    线上销售量     509.0

    成本         23.0

    售价        100.5

    dtype: float64

    2 求中位数

    2.1对全表进行操作

    2.1.1对每一列求中位数

    df = pd.read_excel(r'C:\Users\admin\Desktop\测试.xlsx')
    print(df.median())
    

    result:

    实体店销售量     56.0

    线上销售量     234.0

    成本         13.0

    售价        156.0

    dtype: float64

    可以看到,中位数的概念只对数字有效

    2.1.2 对每一行求中位数

    df = pd.read_excel(r'C:\Users\admin\Desktop\测试.xlsx')
    print(df.median(axis=1))
    

    result:

    0     39.5

    1    106.0

    2    211.5

    3     29.5

    4    227.0

    dtype: float64

    2.2 对单独的一行或者一列进行操作

    2.2.1 对某一列求中位数

    df = pd.read_excel(r'C:\Users\admin\Desktop\测试.xlsx')
    print(df['实体店销售量'].median())
    
    

    result:

    56.0

    2.2.2 对某一行求中位数

    df = pd.read_excel(r'C:\Users\admin\Desktop\测试.xlsx')
    print(df.iloc[[0]].median())
    

    result:

    实体店销售量     34.0

    线上销售量     234.0

    成本         12.0

    售价         45.0

    dtype: float64

    2.3 对多行或者多列进行操作

    2.3.1 对多列求中位数

    df = pd.read_excel(r'C:\Users\admin\Desktop\测试.xlsx')
    print(df[['实体店销售量', "线上销售量"]].median())
    

    result:

    实体店销售量     56.0

    线上销售量     234.0

    dtype: float64

    2.3.2 对多行求中位数

    df = pd.read_excel(r'C:\Users\admin\Desktop\测试.xlsx')
    print(df.iloc[[0, 1]].median())
    

    result:

    实体店销售量     45.0

    线上销售量     509.0

    成本         23.0

    售价        100.5

    dtype: float64

    总结

    到此这篇关于pandas求平均数和中位数的文章就介绍到这了,更多相关pandas求平均数中位数内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

    0

    上一篇:

    下一篇:

    精彩评论

    暂无评论...
    验证码 换一张
    取 消

    最新开发

    开发排行榜