我正试图用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
应该可以做到这一点。
我试着用 [\s\S]+
求助于编写Regex,但似乎没有任何效果。我很感激任何帮助。
解决方案:
如果其他列名没有 /
你可以用 [^/]+
. 检查 此处 以获得更多的解释。