经常处理数据的都知道,很多时候拿到的数据是重复的,这样对于统计和计算不是很适用。
今天将一个如何将数据中重复的列,提取出唯一值,并将这些唯一的数据保存在新的工作薄中。
不会对原生数据进行修改,保证了数据的完整性。
我们只是从里面取出来我们想要的数据而已。
案例:对图书销售数据进行唯一性获取,并将图书名保存到新的工作薄中
首先看原始数据是什么样子的

可以明显的看到图书名是重复的,这里只是一个sheet页,用于做演示用的。
实际的工作中的数据可能会更多,在多个sheet页中,想要对图书名进行单独的数据提取,人工来完成还有需要点时间的,如果sheet页太多,可能会搞混。
这里只是学习思想,如何处理这种问题。
实现原理:将图书名这列数据全部获取到,把他放在一个集合中,因为python中集合中的数据是唯一的,会自动去重,所以这就解决了这个重复的问题。
接着将集合中的数据放在list中,进行列标题的添加,最后保存在新的工作薄中。
完成对原始数据的完整性,当然,使用set处理数据,如果是很多数据,则需要分批次处理,如果一下子把成百上千的数据装在set中,就怕你的电脑吃不消。
代码如下:

代码解释:transpose = True表示什么意思,因为data中的数据是以行的信息存储的。
所以这个表示将一行数据转换成一列,其实就是行专列。
将图书列去重,并统计销量
获取众多数据中唯一值的技能已经学会了,这次说一下如何统计销量

原理分析,首先将整个sheet页中的数据读取出来,读取出来的数据是什么样子的呢?
数据是一行一行的存储,返回值是一个列表,通过下标获取到每行的每列的数据。
创建一个字典,判断这个图书名是否出现过,如果没有出现过,就是新的,如果出现过,就对他的销量进行求和。
最后通过代码返回的结果如下图所示。

上面已经将数据进行拆分了,那么如果将数据生成二维的形式呢?那就是列表套列表
[[],[]] 这种形式数据才可以写入到excel中。
通过对字典获取key和value,将他们放在一个列表中,然后将这个列表追加到新的列表中,就实现了上面的数据格式。

最后通过创建新的工作表,添加列标题,保存数据就完成整体代码

最后的 结果显示:

本节中有些东西如果陌生的话,可以看一下之前的文章。
关于数据处理的案例就暂告一段落了,接着来要学习批量数据分析了。
希望大家一起加油,一起坚持。