counter
调用Counter 类使用的方法为:
from collection import Counter
Counter用于计数,调用它会返回一个key为列表的值,value为该值的具体个数的对象
我们首先创建一个一维数组:
x=np.random.random_integers(1,10,100)
然后结果是如下所示:
接下来我们使用Counter()进行计数:
counter=Counter(x)
counter
返回的结果为:
在返回的结果中我们可以看到,x中有13个1,6个2,12个人3…….
当然Counter对象还有别的方法:
elements():一般用于循环索引使用,单个调用不会有结果,可以看如下代码:
x=np.random.random_integers(1,10,100)
count=Counter(x)
count.elements()
结果返回的是如下结果,可以看出,没有我们所愿返回它的结果
利用循环进行显示如下代码:
x=np.random.random_integers(1,10,20)
count=Counter(x)
for i in count.elements():
print(i)
我们可以看出如下的返回结果:
most_common(n):用于显示前n个最多的元素,代码如下:
x=np.random.random_integers(1,10,20)
count=Counter(x)
count.most_common(3)
返回结果如下:
当然有时候也可以不写参数n,此时默认为显示所有元素的数量情况,可看如下代码:
x=np.random.random_integers(1,10,20)
count=Counter(x)
count.most_common()
显示结果为:
subtract():可以看成两个元组之间的加减运算,将各个元素对应的个数进行加减,加减后会更新原数组,也就是本身会被覆盖掉,可以看如下代码:
first=np.random.random_integers(1,10,20)
second=np.random.random_integers(1,10,30)
count1=Counter(first)
count2=Counter(second)
这时我们可以看一下count1,count2的输出结果:
现在我们进行减法运算,使用subtract()函数来试一试
代码为:
count2.subtract(count1)
这时count2的结果为:
我们对比一下先前的值:
count1:({1: 3, 2: 1, 3: 1, 4: 1, 5: 1, 6: 5, 7: 2, 8: 2, 9: 1, 10: 3})
count2:({1: 1, 2: 3, 3: 3, 4: 4, 5: 1, 6: 5, 7: 2, 8: 5, 9: 3, 10: 3})
后来的值:
count2:({1: -2, 2: 2, 3: 2, 4: 3, 5: 0, 6: 0, 7: 0, 8: 3, 9: 2, 10: 0})
1所在的为1-3=-2,2所在的为3-1=2,3所在的为3-1=2…..,可以看出count2对count1进行减法的时候,自身也被运算后的对象覆盖了
相关阅读
笔者此次由于需要做数据分析,所以写了一份儿爬虫,爬取新浪微博的微博评论和评论人信息以及转发情况和转发后的点赞情况。 爬取新浪
这里用Python逼近函数y = exp(x);同样使用泰勒函数去逼近:exp(x) = 1 + x + (x)^2/(2!) + .. + (x)^n/(n!) + ...#!/usr/bin/pyth
线性回归 - 机器学习多元线性回归 - 一步一步详解 - P
目录 数据导入 单变量线性回归 绘制散点图 相关系数R 拆分训练集和测试集 多变量线性回归 数据检验(判断是否可以做线性回归) 训练
一、%格式化 1.整数输出 %d # 十进制 %o # 八进制 %x # 十六进制 print("%d"%23) # 23 print("%o"%23) # 27 print("%x"%
简单说说这个意义。做了很久的c#,突然发现Python火了。就看看,估计这篇博文有点长,有点长,尽量包括主要的东西,还有点杂,浏览吧,选择自