-
Notifications
You must be signed in to change notification settings - Fork 0
Tips for Open Refine
Bijvoorbeeld, wil je van persistente ODIS-uri's enkel de code? Maak dan een nieuwe kolom aan en transformeer de ODIS-uri's met volgende code: value.replace("http://www.odis.be/lnk/", "")
Formule: value + cells[‘Column’].value
(Verouderd: Ondertussen is er een heel nuttige functie 'join columns' in de GUI)
Zorg ervoor dat de data worden weergegeven in 'records view'. Maak vervolgens een nieuwe kolom aan, of transformeer de kolom met volgende code:
row.record.cells[columnName].value[0]
Hierbij:
- Wordt de parameter columnName tussen "" geschreven.
-
value[0]
betekent heel eenvoudig dat er bij een error een nulwaarde wordt toegevoegd.
Alle info: http://kb.refinepro.com/2012/03/fill-down-right-and-secure-way.html
value.find(regex)[0]
De waarde van "find" is een array met matches. Jij wilt meestal gewoon de eerste hebben. Om geen array te krijgen maar gewoon de eerste waarde zet je in GREL [0]
achter je GREL-functie.
Een regex in open refine GREL zet je tussen /()/
Bijvoorbeeld, geef mij de waarde tussen twee slashes:
value.find(/(\/.+\/)/)[0]
Gebruik de 'add column based on other column'-knop Voeg volgende formule in.
facetCount(value, "value", columnName)
Hierbij:
- Wordt de parameter columnName tussen "" geschreven.
Alle info: https://kb.refinepro.com/2011/09/countif-in-google-refine-with.html
Zie voor alle info de Open Refine docs op https://github.com/OpenRefine/OpenRefine/wiki/Clustering-In-Depth
Uit ondervinding geven metaphone en Cologne (dat zaken controleert aan de hand van de uitspraak van woorden) goede resultaten bij persoonsnamen.
Gebruik zeker ook altijd de methode Nearest Neighbour. Over het algemeen leverde methode ppm, met als instellingen "radius 2" en "block chars 2" erg goede controlelijsten op. (Je kunt dit nog verder verfijnen, maar dit kost tijd, zie de Open refine docs).
Zie bv. Vaerwyck Henri. Deze dubbel dook bij Metaphone en Cologne niet op.