当前位置:首页 > 技术分析 > 正文内容

利用Knime合并多个文件(无需代码,比Python更简单)

ruisui883个月前 (02-03)技术分析21

Knime有数据科学界“瑞士军刀”的美誉,在未正式开始介绍Knime入门基础操作之前,我想选择其中一个场景来展示下Knime的功能,让诸位判断,这是否就是你要找的。

很多时候我们经常遇到合并多个相同结构的CSV文件,或者Excel文件尤其合并多个Excel文件更多。一下场景你遇到过吗?后续入门课程中,有了基础后再详细讲解,先对场景1做一个展示,Knime是如何实现的

Excel不同的文件合并场景

  1. 指定文件夹内有多个Excel文件(子文件夹可能也有Excel)
  2. 一个Excel文件内有多个sheet表,比如每个月份一个表,如何快速合并,而不是复制粘贴
  3. 多个Excel文件,每个Excel文件内有多个sheet表(1,2场景的综合)
  4. 多个Excel文件,每个Excel文件内虽有多个sheet表,只选择特定名称的表(而不是都选择,因为单个Excel文件内的多个sheet表,结构并不相同)
  5. 更要命的是,多个excel文件的列名不统一,如何合并,比如有的列名“公司名”,有的表内是“企业名”,如何统一处理成相同列名的数据,然后再合并(列名称不一致,不能自动合并)

场景1:指定文件夹内有多个Excel文件

Knime实现操作

本例涉及循环处理,合并,流变量(flow variable)使用,仅做展示,后续再深入讲解。

节点配置说明

如何实现:只需要5个节点(node),配置3个节点(node)的参数,点击运行,即可循环读入各个文件。

  • List Files 节点配置
  • Excel Reader(xls)
  • 查看结果 在Loop End点击运行后,再查看合并的结果

这是否就是你想要的简单方便,若需要数据和示例工作流,请头条私信

如何导入示例

你在Knime软件内导入工作流,根据你的情况,修改文件路径,再重新运行,即可看到合并后结果(可以使用我的示例数据,也可使用你自己的数据(此时注意表头行的位置需要根据情况修改),Excel文件内只有一个sheet表)

小结

以上只是一个展示,后续从基础讲起,让你数据处理不在难,更不需要Python编程,网上你随便找个合并文件的Python程序,至少二三十行,很多是“硬编码”,手动指定表名,列名之类的,即使有编程基础,也要先理解下,才能修改。没有编程基础的,只能看看,可能你还是无法使用。再说学习编程最大的成本是时间,很多函数的参数你是否能记住(查看帮助文档也是要时间的)。Knime图形化界面,进行配置即可,无需记忆那么多参数,使用熟练后,处理数据各种各样的数据更简单。

如果尝试VBA合并,比Python更麻烦,网上有小插件帮助合并,但是以上我列出的5个场景,恐怕就搞不定。学了VBA只能应用Excel。Knime可以处理各种数据文件,以及数据库(MySQL、Oracle,mongoDB等等)。

但上述示例,简单修改即可使用,无需一行代码。需要示例请私信留言,若执行示例有疑问请在本文留言

扫描二维码推送至手机访问。

版权声明:本文由ruisui88发布,如需转载请注明出处。

本文链接:http://www.ruisui88.com/post/642.html

标签: node xlsx
分享给朋友:

“利用Knime合并多个文件(无需代码,比Python更简单)” 的相关文章

深入理解Vue.js组件通信:父子组件与子父组件数据交互详解

什么是Vue组件通讯 Vue.js 组件通信是指在 Vue 应用的不同组件之间进行数据交换和状态同步的过程。由于 Vue 的组件是基于单文件组件(SFCs)的模块化设计,每个组件都有自己的作用域,因此它们不能直接访问彼此的数据。为了使组件之间能够协同工作,Vue 提供了几种不同的通信方式。以下是 V...

代码分支规范

一.gitflow工作流说明:主分支:master,稳定版本代码分支,对外可以随时编译发布的分支,不允许直接Push代码,只能请求合并(pull request),且只接受hotfix、release分支的代码合并。gitlab上做限制。热修复分支:hotfix,针对现场紧急问题、bug修复的代码分...

Gitlab之间进行同步备份

目前,我们公司有两个研发团队,分别在北京和武汉,考虑到访问速度的问题,原有武汉的研发环境在近端部署。也就是北京和武汉分别有两套独立的研发管理环境,虽然这解决了近端访问速度的问题,但是管理上较为分散,比如研发环境备份和恢复就是最重要的问题之一。最近,处于对安全性和合规性的考虑,希望将北京和武汉的源代码...

理解virt、res、shr之间的关系(linux系统篇)

前言想必在linux上写过程序的同学都有分析进程占用多少内存的经历,或者被问到这样的问题——你的程序在运行时占用了多少内存(物理内存)?通常我们可以通过top命令查看进程占用了多少内存。这里我们可以看到VIRT、RES和SHR三个重要的指标,他们分别代表什么意思呢?这是本文需要跟大家一起探讨的问题。...

BuildKit 镜像构建工具

#暑期创作大赛#快速开始 对于 Kubernetes 部署,请参阅examples/kubernetes。BuildKit 由buildkitd守护进程和buildctl客户端组成。虽然buildctl客户端可用于 Linux、macOS 和 Windows,但buildkitd守护程序目前仅适用于...

《暗黑破坏神 2:重制版》PC 版 2.3 版本发布,支持英伟达 DLSS

IT之家 12 月 3 日消息,暴雪为《暗黑破坏神 2:重制版》PC 版发布了更新 2.3 版本,添加了“离线难度缩放”滑块(玩家可以在单人游戏时增加挑战和奖励的级别)、多项辅助功能和用户界面改进,以及英伟达 DLSS 支持。玩法改进:玩家现在可以在离线游戏的选项菜单中使用“游戏难度等级”,它提供与...