openrefine - 简单的 OpenRefine IF 来创建一个新列

标签 openrefine grel

我正在尝试创建一个包含 true 或 false 的新列。基本上,A 列中有一个数字,介于 1 和 6 之间,如果它高于 3,我希望新列“匹配”包含真,否则包含假。在尝试以下 GREL 时使用基于列的添加列

if(value > 5, "True", "False")

这基本上导致一切都是假的。

我知道我的 IF 语句是正确的,因为以下有效
if(value.length() > 1, "Double", "Single")

我只是困惑为什么如果 Value 大于 5 不起作用,它显然缺少某些东西,但我似乎无法在文档中指出它。

最佳答案

你的 GREL if() 是正确的。我们的文档在这里:
https://github.com/OpenRefine/OpenRefine/wiki/GREL-Controls

但我想知道您是否真的在该 Column 中拥有所有数字值?
所有值都是“绿色”颜色吗?
如果没有,请尝试使用编辑列修剪空白,然后将文本转换为数字。
然后再次在该列上尝试 if() ,看看会发生什么。

关于openrefine - 简单的 OpenRefine IF 来创建一个新列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40026905/

相关文章:

regex - 删除最外面的括号

openrefine - JSON 导入后列名称中的下划线和破折号

OpenRefine: 'Fill Up' 替换一列中的值

openrefine - Open Refine——通过从一对列中查找值来创建新列

openrefine - 如何在openrefine的if语句中使用or语句

regex - Google Refine 中的 Value.match() 正则表达式

openrefine - 尝试使用 Open Refine GREL 解析 Json

openrefine - 如何在 Google Refine 中对多个列进行分面

json - 在 GREL 中解析多值 JSON (OpenRefine)