一、使用场景:
其他部门需要的数据表的列顺序与你现有的表顺序不一致,如果数据表的列比较多,比如说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 数据格式
1- **表列序,仅以2列展示,多列同样适用
2- 待排序表,注意:与**表列序不一致
Concatenate用来合并上下数据,Concatenate节点上下合并不同表。即使列序不同,也能自动对齐,其中对齐时,以上面的输入端口1的数据为准(见图片标号1)
最后结果导出为Excel即可。
3.2 思路:
将在Excel中,将文本分列后,再转置,即放到一列中,**原有的顺序,将这一列当做一个**的参照列序,自动对待排列序数据表进行排序
员工号
姓名
出生日期
明天还要上班,暂且到这里,待下期继续3.2 的场景如何解决。