我在中执行以下操作OpenRefine 的编辑列上的单元格 > 转换函数,但它直接给出从1h10
到,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
输出:不成功
操作系统:Debian 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 供其他应用程序使用。