Pandas中Dataframe数据结构中元素出现个数统计

import pandas as pd 
import numpy as np

data=[[i+np.random.randint(-2,2) for i in range(5)] for _ in range(10)]
frame=pd.DataFrame(data,columns=['a','b','c','d','e'])
frame

得到数据如下:

  • 对于列和行特征数据进行统计,注意一种是对于数据的筛选统计实现,一种是进行bool判断,转为bool类型进行求和
    #对于特征列元素出现个数的统计
    print(frame[frame["a"]==1]["a"].count())
    #筛选出相应列中满足条件的元素,如下表示"a"列中在第4、5行中找寻到为1的元素
    #4 1
    #5 1
    #而后对元素值个数进行统计为2
    print((frame["a"]==1).sum())
    #转为bool类型,对于True进行求和
    
    #对于特征行中某元素出现个数的统计
    print((frame.iloc[2,:]==1).sum())
  • 对于 某一区域统计
    #输出的是一个布尔型的dataframe,判断依据为元素值是否为2
    print(frame.iloc[2:5]==2)
    print()
    
    #第一个sum默认沿着列方向进行求和
    print((frame.iloc[2:5]==2).sum())
    print()
    
    #第二个frame沿着行求和,从而统计出元素为2的个数
    print((frame.iloc[2:5]==2).sum().sum())

    输出如下:

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值