python用Counter进行计数,统计序列中元素的频次+dataframe数据框进行转置处理并设置列名

     `Counter` 是 Python 中的一个内置库,属于 `collections` 模块。

      它可以用于计算一个序列(如列表、元组等)中各个元素的计数。

      Counter 对象可以方便地获取序列中出现次数最多的元素以及其出现次数。

      简单来说,Counter 的作用就是统计序列中元素的频次。

目录

总代码:

1.导入数据

2.dict(Counter(b))

 3.pd.DataFrame([score_count])

4. pd.DataFrame(score.values.T,index=score.columns,columns=score.index)

5.count.reset_index(inplace=True) 

6.count.columns = ["元素", "频数"]

下面利用一个例子进行介绍:

总代码:

b=[1,23,5,69,69,36,69,2,36,2,1,2,3,1,2,3,5,2,9,5,9,2,3,36,23,23,23,5,6,6,6,6]
#b是列表
#b=(1,23,5,69,69,36,69,2,36,2,1,2,3,1,2,3,5,2,9,5,9,2,3,36,23,23,23,5,6,6,6,6)
#b是元组
from collections import Counter
score_count=dict(Counter(b))

import pandas as pd
score=pd.DataFrame([score_count])

count=pd.DataFrame(score.values.T,index=score.columns,columns=score.index)
count.reset_index(inplace=True)
count.columns = ["元素", "频数"]

1.导入数据

b=[1,23,5,69,69,36,69,2,36,2,1,2,3,1,2,3,5,2,9,5,9,2,3,36,23,23,23,5,6,6,6,6]
#b是列表
b=(1,23,5,69,69,36,69,2,36,2,1,2,3,1,2,3,5,2,9,5,9,2,3,36,23,23,23,5,6,6,6,6)
#b是元组

上面两句代码均是定义的此次讲解需要的数据,第一个语句将b定义为了列表,第二个语句将b定义为了元组类型。随机选一个即可。

因为Counter可以用于计算列表、元组等各个元素的计数。

2.dict(Counter(b))

score_count=dict(Counter(b))

score_count#输出查看

使用Counter方法统计列表b中元素的出现次数,并将结果存储在字典score_count中

结果:

 3.pd.DataFrame([score_count])

score=pd.DataFrame([score_count])

score#输出查看

将score_count字典转换为DataFrame格式

结果:

4. pd.DataFrame(score.values.T,index=score.columns,columns=score.index)

count=pd.DataFrame(score.values.T,index=score.columns,columns=score.index)
count#输出查看

计算一个使用`score.values`的转置(transpose)创建一个新的DataFrame。转置操作会将行和列互换。

`score.values`返回一个NumPy数组,表示`score` DataFrame的值。

`index=score.columns`:为新创建的DataFrame设置索引,使用`score` 的列名作为索引。

`columns=score.index`:为新创建的DataFrame设置列名,使用`score` DataFrame的行名作为列名。

总之,这段代码将`score` 进行转置,并使用原始DataFrame的行名作为新DataFrame的列名,原始DataFrame的列名作为新DataFrame的索引。

结果:

5.count.reset_index(inplace=True) 

count.reset_index(inplace=True)

count#输出查看

使用`reset_index()`函数重置索引。这将把原来的索引移除,并基于默认的整数索引重新创建一个新的索引。

通过设置`inplace=True`,这个操作会在原地(内部)执行,不会创建一个新的DataFrame。而是直接修改原有的`count` DataFrame。

这句话通常用于在对数据进行分组和计数操作后,重新设置索引以便后续处理。

结果:

6.count.columns = ["元素", "频数"]

count.columns = ["元素", "频数"]
count#输出查看

设置列名

 结果:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值