Join Now

Juletip #10: Tilpas den danske kvalitetsregelsamling

by SAS Employee OleSteen on ‎12-09-2014 07:09 PM (759 Views)

Har du deltaget på et seminar eller set en demo af SAS® Data Management Studio, og har du undret dig over, hvordan dette værktøj kender så meget til danske navne, adresser, byer etc.? Her er et lille tip til, hvordan du kan se, hvad der faktisk sker i motorrummet.
Regelsamlingen består af en lang række elementer. Hvert enkelt element kan tilpasses netop dine behov, og du har mulighed for at tilføje nye elementer.


Jeg har for nylig afholdt et 2-dages kursus, hvor deltagerne lærte, hvordan de oprettede helt nye datatyper, og fik mulighed for at lære fra regelsamlingen, hvordan disse datatype er opbygget.


F.eks. vil vi gerne have mulighed for at lære systemet lidt om tekststrengen:

Peugeot 508 1,6HDi 112 Active 4d


Bl.a. vil vi have mulighed for at hente bilmærke, model, motorstørrelse og antal døre som separate dele af denne streng.

Til dette formål oprettes en parse-definition i regelsamlingen.

Parse-definition:

Parse-definitionen består dels af regler for hvilke skilletegn, der skal anvendes (f.eks. blanke, komma, punktum etc.). Desuden består definition af en tabel med kendte ord som hver enkelt del af strengen sammenlignes med. Ved opslag i denne tabel er det muligt at anvende ”fuzzy”-lookup, så selv ord med små stavefejl bliver sammenlignet (f.eks. Peugeot/Peogeot/Peugot).

Endelig er det i definitionen muligt at anvende diverse regulære udtryk (se juletip #3 - https://communities.sas.com/message/240414#240414), et stærkt værktøj til manipulation af tekststrenge. Dette kan bl.a. anvendes til at kategorisere ord vha. dets mønster (f.eks. kan ”\b\d,\d\w*\b” anvendes til at kategorisere en motorstørrelse).

En del af parse-definitionen består tillige af en regel for, hvordan de enkelte ordkategorier er sammenstillet (f.eks. Bilmærke Model Motor AntalDøre, eller Model Bilmærke Motor).

Med en parse­-definition er det altså muligt at nå følgende:

Når parse-definitionen er gemt i regelsamlingen, er det muligt at genbruge denne i mange forskellige værktøjer, f.eks. i SAS vha. funktionen DQPARSE().

Match-definition:

En anden vigtig definition i regelsamlingen er match-definitionen. Denne definition giver mulighed for at opsætte regler for, hvordan 2 forskellige måder at skrive en tekststreng på alligevel kan matches som værende samme tekststreng.

Definitionen anvender typisk ovenstående parse-definition samt regler for, hvordan de enkelte dele af tekststrengen skal behandles.

F.eks. er det muligt for hvert enkelt del at opsætte regler for fonetik, så stavefejl kan håndteres.

Match-definitionen indeholder regler, som kan tilpasses forskellige formål (sensitiviteter), så det er muligt at få tekststrenge til at matche mere eller mindre præcist. F.eks.:

TekstSensitivitet 85Sensitivitet 50
Peugot 508 1,6 HDi 112 Active 4d11
Peugeot 508 1,6HDi 112 Active 4d11
Peugeot 508 1,6 4d01

Øvrige definitioner


Det er muligt at lave mange forskellige definitioner i kvalitetsreglerne, f.eks. standardisering (regler for at standardisere en hvilken som helst tekststreng).

  • Extract (giver mulighed for at udtrække dele af en ustruktureret tekststreng)
  • Case (avancerede regler for case)
  • Identification (regler for at identificere en  tekststreng, f.eks. hvorvidt en tekststreng vedrører en erhvervs- eller privatkunde, eller om en tekststreng vedrører en bil eller en båd).

Hvordan ser jeg og tilretter reglerne?


Når du har installeret SAS Data Management Studio og en standard QKB, anbefales det at tage en kopi af QKBen til udviklingsformål.
QKBen består af alle reglerne, og kan kopieres via copy/paste i Windows Explorer.

Registrér din udviklings QKB, og se hvad der gemmer sig bag hver definition:

QKBRegister.png

QKBCustomize.png

Bare du har en kopi af QKBen, er det værste der kan ske, at du må starte forfra


Jeg kan varmt anbefale, at gøre sig bekendt med QKBens regelsamlinger, så du dermed kan tilrette reglerne, så de gør som du ønsker.
Det er den rigtig måde at bruge DataManagementStudio - reglerne skal kun findes her, og anvendes alle steder; og stemmer reglerne ikke overens med dine ønsker, har du i værktøjet alle muligheder for at tilpasse dem.

God jul.

Mvh.

Ole Steen