龙空技术网

Excel、Power BI及Python系列:使用Python转化一维表与二维表

心梗后余生 204

前言:

现时兄弟们对“pandas 二维转一维”大体比较注意,小伙伴们都想要分析一些“pandas 二维转一维”的相关知识。那么小编同时在网摘上搜集了一些对于“pandas 二维转一维””的相关资讯,希望朋友们能喜欢,朋友们快快来了解一下吧!

前面2篇文章,老海已经分享了Excel与PowerBI在表格转换方面的具体操作。

按照之前的计划,本篇老海将分享使用Python进行一维表与二维表的转换操作,完成三种工具的操作演示和比较,希望可以帮助我们更好理解工具的应用场景和意义。

Python作为近些年非常流行的编程语言,在数据分析领域应用非常广泛,尤其在培训市场的推动下,现在有一种趋势—“你不会Python,都不好意思说是干数据分析的”。

这里我们不讨论这种现象是否合理,之前老海在微头条中已经聊过,感兴趣可以去翻看一下。

本篇涉及一定代码量,代码比较简单,主要适合具备一定Pyhon基础或者感兴趣的朋友。

OK,下面我们开始正式内容:

本篇依旧使用之前的案例数据:一维表与二维表,存储在Excel文件中。

关于一维表与二维表的区别联系,以及相关数据表述,可以翻看老海之前的文章即可。

一维表

二维表

下面老海分三个部分来实现一维表和二维表的转化操作:

使用Python导入数据,并查看数据读取情况第一步:导入必要的包,这里我们引入pandas,它主要用于数据处理和统计等相关操作,为了说明编程环境,引入sys包,为了设定数据源位置,引入OS包。本次演示环境WIN10、Python3.7、pandas0.25.0.

查看环境,引入必要的包

第二步:设定数据源路径。一般我们的工作目录,各有不同,因此我们可以利用os.chdir方法来自定义文件路径,来存放我们的数据源,这里是Excel文件。

设定工作目录,存放数据源文件

第三步:导入数据源,通过read_excel方法来读取一维表和二维表,其他的表格不需要读取。之后,建议查看导入后数据的情况,一方面观察数据规模,另一方面避免出现乱码等情况。

导入对应的数据源

查看一维表导入情况

查看二维表导入情况

使用Python将一维表透视转为二维表此处只需pd.pivot_table方法,即可实现转化过程。这个方法类似于Excel透视表功能,而且参数非常灵活。

进行透视操作,查看处理结果

使用Python将二维表逆视转为一维表此处通过set_index方法设定索引,利用stack方法进行逆视操作,然后利用reset_index方法重置新的索引即可,同时注意把列名修改为符合需要的名称。

进行逆视操作,查看处理结果

OK,以上就是Python完成相关操作的具体代码,老海相信还有更好的方法,这里不再赘述。

总之,Python同样可以非常巧妙完成一维表与二维表的转化我们可以把处理结果导出到excel文件中,注意此处pandas导出sheet会出现覆盖数据的问题,因此我们使用pd.ExcelWriter方法来解决它。

保存处理结果

导出的转化结果

导出的转化结果

至此,老海分别实现了Excel、PowerBI、Python三种不同工具的具体操作。

我们除了理解一维表与二维表的区别联系,也要学会如何完成两者之间的转化操作。

相信自己!

希望在阅读完这四篇文章后,我们能够有不同的感受,能够清楚看到哪个更适合自己。

OK,我是数据炼金术师,老海,欢迎关注我,一起分享更多数据知识。

标签: #pandas 二维转一维