Search code examples
openrefinegoogle-refinegrel

OpenRefine: 'Fill Up' replacing values along one column


I have following table

╔════════╦════════╦════════╦════════╗
║ record ║ Brand  ║ Model  ║ Spec   ║
╠════════╬════════╬════════╬════════╣
║   1    ║   X    ║ null   ║ 1      ║
║        ║   X    ║ DF     ║ 3      ║
║        ║   X    ║ null   ║ 5      ║
║   2    ║   Y    ║ null   ║ 1      ║
║        ║   Y    ║ AB     ║ 3      ║
║        ║   Y    ║ null   ║ 5      ║
╚════════╩════════╩════════╩════════╝

And would like to get following

╔════════╦════════╦════════╦════════╗
║ record ║ Brand  ║ Model  ║ Spec   ║
╠════════╬════════╬════════╬════════╣
║   1    ║   X    ║ DF     ║ 1      ║
║        ║   X    ║ DF     ║ 3      ║
║        ║   X    ║ DF     ║ 5      ║
║   2    ║   Y    ║ AB     ║ 1      ║
║        ║   Y    ║ AB     ║ 3      ║
║        ║   Y    ║ AB     ║ 5      ║
╚════════╩════════╩════════╩════════╝

ie. I'm dreaming about something like 'fill up' analogue to the fill down tutorial

I haven't found a functionality which covers that out of the box. Do you have further information?


Solution

  • Could you try with this quick hack ?

    (use Transform on your column "Model")

    row.record.cells['Model'].value[0]
    

    Here is the dataset I used

    record,Brand,Model,Spec
    1,X,,1
    ,X,DF,3
    ,X,,5
    2,Y,,1
    ,Y,AB,3
    ,Y,,5
    

    Demo

    enter image description here