Простой OpenRefine IF для создания нового столбца

Я пытаюсь создать новый столбец, который содержит истину или ложь. В основном столбец A содержит число от 1 до 6, если его значение больше 3, я хочу, чтобы новый столбец "match" содержал true, в противном случае он содержит false. Использование столбца добавления на основе столбца при попытке следующего GREL

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

Это в основном приводит к тому, что ВСЕ ложно.

Я знаю, что мое утверждение ЕСЛИ правильно, потому что следующие работы

if(value.length() > 1, "Double", "Single")

Я просто сбит с толку, почему, если значение больше 5 не работает, очевидно, что-то упущено, но я не могу точно определить это в документации.

2 ответа

Решение

Ваш GREL, если () правильно. Наши документы для этого здесь: https://github.com/OpenRefine/OpenRefine/wiki/GREL-Controls

Но мне интересно, действительно ли у вас есть все числовые значения в этом столбце? Все ли значения "зеленого" цвета? Если нет, попробуйте использовать Edit Column to Trim Whitespace и затем преобразовать текст в числа. Затем попробуйте выполнить if() в этом столбце еще раз и посмотрите, что произойдет.

if(value.toNumber() > 5, «Истина», «Ложь»)

Другие вопросы по тегам