Openrefine 如何联接一列单元格的值,但仅当满足基于另一列的条件时
在记录模式下,是否可以联接一列单元格的值,但前提是满足基于另一列的条件 例如: 使用这些数据,在每个记录中,只为col2=“yes”所在的行连接col3中的值 预期结果:Openrefine 如何联接一列单元格的值,但仅当满足基于另一列的条件时,openrefine,Openrefine,在记录模式下,是否可以联接一列单元格的值,但前提是满足基于另一列的条件 例如: 使用这些数据,在每个记录中,只为col2=“yes”所在的行连接col3中的值 预期结果: 这里有一个Python/Jython解决方案: col2 = row.record.cells.col2.value col3 = row.record.cells.col3.value return ";".join([x for x,j in zip(col3,col2) if j == "yes"]) 对于Gre
这里有一个Python/Jython解决方案:
col2 = row.record.cells.col2.value
col3 = row.record.cells.col3.value
return ";".join([x for x,j in zip(col3,col2) if j == "yes"])
对于Grel来说,最好的解决方案可能是这样(如果你喜欢俄罗斯娃娃):
不使用公式也可以做到这一点:
- 切换到行模式
- 在col2上选择“是”
- 在col3(或col3的副本)上:编辑单元格/连接多值单元格
- 再次在col3上(或您的col3副本):编辑单元格/填充
forEachIndex(row.record.cells.col3.value, i, v, if(row.record.cells.col2.value[i]=="yes", v, null)).join(";")