一、使用场景:
其他部门需要的数据表的列顺序与你现有的表顺序不一致,如果数据表的列比较多,比如说100多个,你要在Excel中拖拽调整列的顺序吗?
如果数据表的列比较少,当然你按住Shift+拖拽(或者剪切Ctr+X),可以快速调整列序,如果比较多,恐怕就很累,此外还要记清楚应该放在哪一个列的位置,十分不方便。
是时候学习一个小技巧,快速提供你的效率,利用免费的Knime数据分析平台软件,快速实现,只需要4步,建立一个数据处理工作流后,几秒钟搞定。
二、问题情景
- 别人已经给你一个样板表格示例(规范表结构)
- 别人给了你一个列名的顺序的文本(指定的列顺序文本) 如 "员工号、姓名、出生日期....."
三、利用Knime解
3.1 思路:
利用上下合并的节点(Concatenate)将标准表放置该节点输入端口的上方,待排序的表放置在输入端口下方,该节点会按照上端口的表结构,根据列名自动对齐。
备注:标准表内的数据若不需要,可过滤所有行数据(使用Row Filter节点),仅保留表头即可
3.1.2 Knime 工作流
为了展示方便,使用Table Creator手动输入列名和数据,数据表为Excel文件时,使用Excel Reader节点替换即可。
3.1.3 数据格式
Concatenate用来合并上下数据,Concatenate节点上下合并不同表。即使列序不同,也能自动对齐,其中对齐时,以上面的输入端口1的数据为准(见图片标号1)
最后结果导出为Excel即可。
3.2 思路:
将在Excel中,将文本分列后,再转置,即放到一列中,保持原有的顺序,将这一列当做一个标准的参照列序,自动对待排列序数据表进行排序
员工号
姓名
出生日期
明天还要上班,暂且到这里,待下期继续3.2 的场景如何解决。