这篇教程Python pandas之求和运算和非空值个数统计写得很实用,希望能帮到您。
准备工作本文用到的表格内容如下: 先来看一下原始情形: import pandas as pddf = pd.read_excel(r'C:/Users/admin/Desktop/测试.xlsx')print(df) result: 分类 货品 实体店销售量 线上销售量 成本 售价 0 水果 苹果 34 234 12 45 1 家电 电视机 56 784 34 156 2 家电 冰箱 78 345 24 785 3 书籍 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.count()) result: 分类 5 货品 5 实体店销售量 5 线上销售量 5 成本 5 售价 5 dtype: int64
1.1.2 求取每行的非空值个数df = pd.read_excel(r'C:/Users/admin/Desktop/测试.xlsx')print(df.count(axis=1)) result: 0 6 1 6 2 6 3 6 4 6 dtype: int64
1.2 对单独的一行或者一列进行操作
1.2.1 求取单独某一列的非空值个数df = pd.read_excel(r'C:/Users/admin/Desktop/测试.xlsx')print(df['分类'].count()) result: 5
1.2.2 求取单独某一行的非空值个数df = pd.read_excel(r'C:/Users/admin/Desktop/测试.xlsx')print(df.iloc[0].count()) result: 6
1.3 对多行或者多列进行操作
1.3.1 求取多列的非空值个数df = pd.read_excel(r'C:/Users/admin/Desktop/测试.xlsx')print(df[["分类", "货品"]].count()) result: 分类 5 货品 5 dtype: int64
1.3.2 求取多行的非空值个数df = pd.read_excel(r'C:/Users/admin/Desktop/测试.xlsx')print(df.iloc[[0, 1]].count()) result: 分类 2 货品 2 实体店销售量 2 线上销售量 2 成本 2 售价 2 dtype: int64
2 sum求和
2.1对全表进行操作
2.1.1对每一列进行求和df = pd.read_excel(r'C:/Users/admin/Desktop/测试.xlsx')print(df.sum()) result: 分类 水果家电家电书籍水果 货品 苹果电视机冰箱python从入门到放弃葡萄 实体店销售量 982 线上销售量 1453 成本 90 售价 1473 dtype: object
可以看到,字符串类型的求和直接是字符串拼接,数字类型就正常的数学运算
2.1.2 对每一行进行求和df = pd.read_excel(r'C:/Users/admin/Desktop/测试.xlsx')print(df.sum(axis=1)) result: 0 325 1 1030 2 1232 3 161 4 1250 dtype: int64
先看运行结果,我们可以看到,每一行求和的时候直接忽略文本字符类型,只对数字类型进行求和。就比如第一行的数据 分类 货品 实体店销售量 线上销售量 成本 售价 0 水果 苹果 34 234 12 45
上面的325=34+234+12+45,,其他的行也是如此
2.2 对单独的一行或者一列进行操作
2.2.1 对某一列进行求和df = pd.read_excel(r'C:/Users/admin/Desktop/测试.xlsx')print(df['实体店销售量'].sum()) result: 982
2.2.2 对某一行进行求和df = pd.read_excel(r'C:/Users/admin/Desktop/测试.xlsx')print(df.iloc[[0]].sum()) result: 分类 水果 货品 苹果 实体店销售量 34 线上销售量 234 成本 12 售价 45 dtype: object
当然,单独一行去求和似乎没卵用
2.3 对多行或者多列进行操作
2.3.1 对多列进行求和df = pd.read_excel(r'C:/Users/admin/Desktop/测试.xlsx')print(df[['实体店销售量', "线上销售量"]].sum()) result: 实体店销售量 982 线上销售量 1453 dtype: int64
2.3.2 对多行进行求和df = pd.read_excel(r'C:/Users/admin/Desktop/测试.xlsx')print(df.iloc[[0, 1]].sum()) result: 分类 水果家电 货品 苹果电视机 实体店销售量 90 线上销售量 1018 成本 46 售价 201 dtype: object
总结到此这篇关于Python pandas之求和运算和非空值个数统计的文章就介绍到这了,更多相关pandas求和运算和非空值个数内容请搜索51zixue.net以前的文章或继续浏览下面的相关文章希望大家以后多多支持51zixue.net! 关于Python中*args和**kwargs的深入理解 Python 可迭代对象 iterable的具体使用 |