本篇内容主要讲解“Python对数据去重处理及数据统计的方法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python对数据去重处理及数据统计的方法是什么”吧!
去重操作在处理数据的过程中是少不了的。例如:我们想知道一个班上有多少个人担任了班级职位,但有可能有的人身兼多职,这时候就需要对数据进行去重。下面以简单地数字列表为例,和大家介绍三种简单地去重操作:
array = [1,2,3,3,2,3,4,2,4,3,1,2,6,3,3,2,4,2,3,4,6,2,3,6,4,7,5,4,3,5,6,7,9,5,4,6,8,9,5,4,5,3,6,7,8,5,4,6,8,4,5,6,7]
new_array = []
for i in array:
if i in new_array:
continue
else:
new_array.append(i)
print(new_array)
array = [1,2,3,3,2,3,4,2,4,3,1,2,6,3,3,2,4,2,3,4,6,2,3,6,4,7,5,4,3,5,6,7,9,5,4,6,8,9,5,4,5,3,6,7,8,5,4,6,8,4,5,6,7]
new_array = list(set(array))
print(new_array)
输出结果:
array = [1,2,3,3,2,3,4,2,4,3,1,2,6,3,3,2,4,2,3,4,6,2,3,6,4,7,5,4,3,5,6,7,9,5,4,6,8,9,5,4,5,3,6,7,8,5,4,6,8,4,5,6,7]
new_array = list({}.fromkeys(array).keys())
print(new_array)
比较以上三种去重方式:
(1)循环,显然就比较繁琐,而且结果不会自动排序。
(2)set()方法,需要对集合有一定的了解,结果是会自动排序的。
(3)keys()方法,需要对字典有一定的了解,虽然比循环简短许多,但是和循环一样,结果不会进行自动排序。
第一种方法非常简单,这也是因为这个数组比较简单,可以直接使用len(array)
取列表的长度即可。
不过我建议使用的是第二种方法,使用 pandas 库。
注:说一句废话,如果您对 Python 大数据有很深的兴趣,那么学习 pandas 库是非常有必要的。
import pandas as pd
array = [1,2,3,3,2,3,4,2,4,3,1,2,6,3,3,2,4,2,3,4,6,2,3,6,4,7,5,4,3,5,6,7,9,5,4,6,8,9,5,4,5,3,6,7,8,5,4,6,8,4,5,6,7]
sr = pd.Series(array)
print(sr.head())
print(sr.count())
print(sr.value_counts())
print(sr.value_counts().count())
head()
方法是只打印列表中的前5行,如果你想要打印多一点,你可以传入参数。例如,你想打印20行,只需要传入20即可,head(20)
.
count()
方法是对列表进行统计。从打印结果可以看到,这个数组一共有 53 个数值。
value_counts()
方法是对列表进行去重,然后重新返回一个新的列表,同时默认按照从多到少排序。再用count()
方法就可以知道去重后的数值一共 9 个。
到此,相信大家对“Python对数据去重处理及数据统计的方法是什么”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。