已解决 - 如何在Knime Unpivoting节点中编写regex来选择列。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了已解决 - 如何在Knime Unpivoting节点中编写regex来选择列。相关的知识,希望对你有一定的参考价值。

我正试图用Unpivoting节点在Knime中解开COVID-19数据。约翰-霍普金斯大学提供的数据是https:/github.comCSSEGISandDataCOVID-19。是宽格式的,每一天的数据都会被添加为一个新的列。

我可以 手动 将每天的数据列改为带有以下信息的行。不转动 节点。然而,每天我都必须重新配置节点,以说明新列的情况。在我的工作流程中,有5个unpivoting节点必须这样做。

Unpivoting 节点有一个选项可以使用 注册表 来检测要包含或排除的列,但我无法使其工作。

可用的includeexclude列有省州、国家地区、Lat、Long等少数几个字段名,再加上格式的日期列长表 m/d/yy (或 m/dd/yy 如果在本月晚些时候)。) 美国的Johns Hopkins数据也是类似的格式,但增加了县、异地代码等栏目。

所有的日期列都是今年(即2020年)。

  • 对于Unpivoting节点顶部的Value Columns被指定的部分,我可以通过使用通配符设置和pattern来完成我所需要的事情。 */*/20
  • 对于Unpivoting节点的底部部分,我需要一个通配符或Regexexpression来指定所有其他列。

所有其他的列都包括字母字符,没有一个是mdyy.因此,某种Regex包括任何列的格式。没有一个是mdyy.因此,某种Regex,包括任何具有字母列名的列,或指定NOT m/d/yy 应该可以做到这一点。

我试着用 [sS]+ 求助于编写Regex,但似乎没有任何效果。我很感激任何帮助。

Image is screenshot of unpivot configuration window

答案

如果其他列名没有 / 你可以用 [^/]+. 检查 此处 以获得更多的解释。

另一答案

我想,如果要在 Retained columns 节。(这样一来,如果你想删除其中的一部分,就可以很方便地删除了。)我假设日期栏是单组的,所以你可以点击第一个要保留的日期栏,向下滚动到你不想保留的第一个日期栏。Shift+click 在前一列中,包含这些,滚动到日期列之后的列,并做类似的操作。请使用Enforce inclusion选项,在新添加列时不产生警告错误。Enforce inclusion with selected columns

这样以后就可以轻松的从保留的列中删除。

PS:在你的截图上,似乎你忘了包含以下内容 + 从表达式的末尾。

以上是关于已解决 - 如何在Knime Unpivoting节点中编写regex来选择列。的主要内容,如果未能解决你的问题,请参考以下文章

干货 | 功能强大的数据挖掘与分析平台——KNIME

利用KNIME建立Spark Machine learning模型 2:泰坦尼克幸存预测

knime 设置 小数点精度

KNIME R集成-软件包安装

KNIME - 多个属性上的字符串到文档节点

如何用KNIME进行情感分析