여러 셀 열에서 OpenRefine Transform 출력을 평가하는 방법은 무엇입니까?

여러 셀 열에서 OpenRefine Transform 출력을 평가하는 방법은 무엇입니까?

나는 다음을 수행합니다오픈리파인열의 셀 편집 > 변환 기능이지만 언어를 통해 값을 평가하지 않고 from 1h10to로 직접 제공합니다.1*60+10일반 정제 표현 언어(GREL), 다른 언어 옵션은 Python 및 Cjosure입니다.

replace(value,"h", "*60+")

예상 출력:70

기타 데이터 예시

  • 2h08

많은 열 셀에 영향을 주어 보세요

return eval(value.replace("h", "*60+")); # works on the current column

eval(cells("Other_column").value.replace("h", "*60+")) # does not work on other columns

출력: 실패

운영 체제: 데비안 9

답변1

일부 데이터 형식의 단일 열에 대한 Python 솔루션입니다 h0.

import re
value = re.sub("h0", "h",value)
value = re.sub("h","*60+", value)
return eval(value) 
return eval(value.replace("h", "*60+")); 

출력은 단일 열에서 예상한 대로입니다.

여러 열에 대한 다음 단계: 각 열에 물리적인 적용을 수행합니다. 필요한 경우 다른 애플리케이션에서 사용할 수 있도록 추출에서 json을 꺼내기만 하면 됩니다.

관련 정보