专业汉语词典知识平台,分享汉字词语知识、历史文学知识解答!

励北网
励北网

excel行列怎么互换?excel行列转换方法教程

来源:小易整编  作者:小易  发布时间:2022-10-22 08:10
摘要:excel行列怎么互换?excel行列转换方法教程问题描述在工作中时常会遇到对 Excel 表格的处理。当编辑一张 Excel 表格时,发现表格的列数太多,而行数较少,为方便打印,这时你或许会希望将该表格行列转换;或许是为了做进一步做统计分...

excel行列怎么互换?excel行列转换方法教程

问题描述


在工作中时常会遇到对 Excel 表格的处理。当编辑一张 Excel 表格时,发现表格的列数太多,而行数较少,为方便打印,这时你或许会希望将该表格行列转换;或许是为了做进一步做统计分析,当前格式不太方便,这时也会用到行列转换。
下面这种交叉式的 Excel 表是很常见的格式,用来填写和查看都比较方便:

excel行列怎么互换?excel行列转换方法教程

但是,如果想做进一步的统计分析,这种格式就不方便了,需要行列转换,变成如下格式的明细表: 
excel行列怎么互换?excel行列转换方法教程
显然,手工操作会非常麻烦,若数据量小还可以,数据量大了会耗费大量时间,简直就是灾难。
我们就以此为例,举例说明几种常见的解决方法。

解决方法


方法 1:Excel 数据透视表


Excel 可以通过数据透视表支持行列转换功能,效果如下图: excel行列怎么互换?excel行列转换方法教程
效果还不错,果然比较简洁!这是 Python 生成的 excel 文件:


excel行列怎么互换?excel行列转换方法教程
不过,存在一点小问题,这个 excel 格式有点特殊,想用 Python 的 pivot,我们要将“科目编码”,“科目明细”移到与转换列标题所在同一行上,变成下面的样子。否则在代码上就得特殊 “照顾”,反正只有一行,手工做一下就算了,比写代码省事。
图片excel行列怎么互换?excel行列转换方法教程
无论如何,python 的这个细节处理的小“瑕疵”并不影响其方便性。python 确实名不虚传,虽然使用了循环,但整个代码也就只有 10 来行的样子。
还能更简单吗?
嘿嘿,能!


方法 3:集算器编程


下面我们来看集算器的代码:



AB
1=file("D:/excel/ 明细.xlsx").importxls@t(;1,3:40)// 读入 excel 文件
2>A1.delete(A1.select(_1=="科目编码"))// 清除首列为“科目编码”所在的行
3>A1.rename(_1: 科目编码,_2: 科目明细)// 更换列 1 名称为科目编码,列 2 名称为科目明细
4=A1.fname().to(3,).concat(",")// 将从第 3 列的列名连成字符串,用, 分开
5=A1.pivot@r(科目编码, 科目明细; 账套名, 数值;${A4})// 用 pivot 函数进行行列转换
6=file("D:/excel/ 明细 2.xlsx").exportxls@t(A5;"科目明细")// 将整理好的数据另存储为 xlsx 文件

代码很简单,我们把每一步的中间结果列出来看看:


A1:加载 excel 文件工作表 1,提取指定范围的数据 (从 3 行到 40 行),其中选项 @ t 表示首行为标题,载入数据, 生成表格如下: 
图片excel行列怎么互换?excel行列转换方法教程
A2:删除非数据行 
excel行列怎么互换?excel行列转换方法教程
A3:更换列名称
excel行列怎么互换?excel行列转换方法教程
A4:把从第 3 列开始的列名称连成字符串,用“,”分开 
excel行列怎么互换?excel行列转换方法教程
A5:pivot 函数将行列数据进行转换,把 A4 中对应的列数据置放到“数值”列 
图片excel行列怎么互换?excel行列转换方法教程
A6:将整理好的数据另存储为 xlsx 文件  
excel行列怎么互换?excel行列转换方法教程
集算器脚本只有 6 行,木有啥循环、判断之类的玩意儿,也不像 Python 那样要先手工倒腾一下,就把这看似有点“乱”的数据表格处理好了。相比之下,Python 采用列优先转换多次循环 “N”字方式,集算器则用行优先一次性处理,在处理数据上,集算器对细节处理及使用习惯更专业。而且集算器的开发环境也容易调试,可以看到每一步运算的中间结果,方便挑出错误,开发更为便捷。在这种常规数据处理的任务中,集算器要比 Python 更为优越。

优势总结

就这个问题,关于 python 与集算器的差异,再说说自己的一点心得体会:


1. 多列转换


对于需要多列行列转换并汇集成“长”列的场景时,python 需要将每个数据列构造成数组,并增加一列记录当前列名,再追加到一个大的列表中,最后合并,合并中去掉非首个数组中的 title;
集算器就容易些,它直接把想要转换的列汇集在一块就行。相对于 python 的繁琐,集算器至少能省几个脑细胞。


2. 名称更改


python 对于需要转换列的名称不能更改, 如 cols[0]=’天津’,此时 python 找不到修改前的关键字,“哪个朋友挖的坑,别以为我发现不了”,欺负大爷眼花,给报个异常行不?
但对应的集算器来说则很方便, 如:>A1.rename(_1: 科目编码,_2: 科目明细,4 成都: 成都)


3. 标题空值问题


Python 读取 excel 表中的转换行标题时,前面两列为空 (对应原来的 excel 中的“科目编码,科目明细”),此时标题 cols 中的空值就没有了, 这个“坑”有点隐蔽啊,我真没有发现, 把其中的两列弄丢了,真有点丢脸 ;
但集算器能识别出来,会自动加上对应的标识 _1、_2,这样处理数据时,就能找到其中对应的两列。


4. 网格式编程


集算器使用网格 A1 这种格式,它自动与所在位置的对象关联起来,这点非常方便, 感觉很有特色;Python 就只能望洋兴叹了。




本文地址:百科知识频道 https://www.neebe.cn/zhishi/699974.html,易企推百科一个免费的知识分享平台,本站部分文章来网络分享,本着互联网分享的精神,如有涉及到您的权益,请联系我们删除,谢谢!


百科知识
小编:小易整编
相关文章相关阅读
  • excelvlookup(excelvlookup匹配多个数据)

    excelvlookup(excelvlookup匹配多个数据)

    好助手百科2023-05-02百科7今天给各位分享excelvlookup的知识,其中也会对excelvlookup匹配多个数据进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!excel中vloo...

  • 在Excel表格中怎么自动计算年龄

    在Excel表格中怎么自动计算年龄

    简要回答如今很多人办公的时候都会用到Excel表格,那么在Excel表格中怎么自动计算年龄呢?具体计算方法如下。01首先打开Excel文档。输入出生日期。02点击年龄,鼠标右击,选择设置单元格格式。03将分类设置为数值。04输入固定公式=...

  • Excel中如何对数据进行分列

    Excel中如何对数据进行分列

    在这里介绍在excel中对数据进行分列的方法,希望本指南能帮到你。操作方法01比如,下图中的数据。以“-”符号为界,把两边数据分为两列。02首先,把数据区域全选中。然后,再点:数据,这选项卡。03在展开的功能区中,我们...

  • 如何将一个excel表格的数据匹配到另一个表中

    如何将一个excel表格的数据匹配到另一个表中

    日常生活办公,计算机二级考试需要用到Excel,能够熟练使用Excel可以为自己处理数据表格带来极大的帮助,本文就如何将一个excel表格的数据匹配到另一个表中的方法进行一个详细的解答。表格中,我们需要查找商品的单价,比如笔记本电脑的单...

  • 标准差计算器,标准差计算公式excel

    标准差计算器,标准差计算公式excel

    标准差怎么算标准差公式s=sqrt(s^2)标准差怎么求标准差是方差的算数平方根。具体算法是:一组数的各个数值减去其算数平均值的平方和,所得结果再除以该组数据的个数(如果是抽样,则除以n-1,多数情况为抽样),结果再开根...

  • excel绝对值符号怎么打,word绝对值符号怎么打

    excel绝对值符号怎么打,word绝对值符号怎么打

    绝对值符号怎么打?1.绝对值的符号就是2条竖线嘛,在键盘上正好有这样的符号,一般是回车键的上面,同是按住shift和该键2.在word中,选择插入符号,在其中就可以找到。符号的位置,在03版和07版的word中的位置不同...

  • 数组公式(Excel中数组公式的知识点)

    数组公式(Excel中数组公式的知识点)

    数组公式(Excel中数组公式的知识点)从计算公式开始,如下所示:=A1*B1结果是50,只有一个数字。如果要把多个数乘以1,会怎么样?=A1:A5*B1会返回一组值:50(5*10),20(2*10),30(3*10),10(1*10)...

  • 合格率公式(合格率公式excel)

    合格率公式(合格率公式excel)

      今天小编给各位分享合格率公式(合格率公式excel),如果能碰巧解决你现在面临的问题,别忘了关注小站,我们一起开始吧!产品合格率的计算公式产品合格率=(一批产品中合格产品数÷该批产品总数)×100%。例:某工人提交的48件产品合格,...

  • 周排行
  • 月排行
  • 年排行

精彩推荐