# Gegevens transformeren

U kunt gegevens veranderen en manipuleren door verschillende technieken te gebruiken in Editor voor laden van gegevens.

Een van de voordelen van het bewerken van gegevens is dat u ervoor kunt kiezen om slechts een subset van de gegevens uit een bestand te laden, bijvoorbeeld enkele specifieke kolommen van een tabel, om de gegevens op efficiëntere wijze te kunnen hanteren. U kunt de gegevens ook meer dan één keer laden om de onbewerkte gegevens op te splitsen in verschillende nieuwe logische tabellen. Het is ook mogelijk om gegevens uit meer dan één bron te laden en samen te voegen in één tabel in de applicatie.

In dit onderwerp voert u een aantal standaard gegevenstransformaties uit met behulp van een Resident-load en daarna een Preceding-load.

## Resident LOAD

U kunt de bronkwalificatie Resident gebruiken in een LOAD-opdracht om gegevens van een eerder geladen tabel te laden. Dit is ook nuttig wanneer u berekeningen wilt uitvoeren op gegevens die zijn geladen met een SELECT-instructie waarbij u niet de mogelijkheid hebt om scriptfuncties te gebruiken, zoals de verwerking van datum- of numerieke waarden.

In dit voorbeeld maakt u een nieuwe tabel met de naam Sales\_Buckets en laadt u daarna de gegevens vanuit Table1 met een resident load. In de tabel Sales\_Buckets maakt u een variabele met de naam quantity\_threshold en gebruikt u een Where-opdracht om alleen gegevens te laden die aan die drempelwaarde voldoen.

1. Open de Editor voor laden van gegevens in de Scripting Tutorial applicatie.
2. Klik op het tabblad Sales.
3. Voeg het volgende toe aan het eind van uw script:
   ```
   SET quantity_threshold = 12000;

   					Sales_Buckets:
   					LOAD
   					"Sales Qty" as "High_Quantity",
   					"Item Description" as "Item",
   					"Customer Number" as "Customer"
   					Resident Table1
   					Where ("Sales Qty" > $(quantity_threshold));
   				
   ```

   Uw script zou er als volgt moeten uitzien:

   Venster load-script met script om een nieuwe tabel te maken met de naam Sales\_Buckets

   Venster load-script met script om een nieuwe tabel te maken met de naam Sales\_Buckets

   Venster load-script met script om een nieuwe tabel te maken met de naam Sales\_BucketsSales\_Buckets ![Venster load-script met script om een nieuwe tabel te maken met de naam Sales_Buckets.](https://help.qlik.com/nl-NL/cloud-services/Subsystems/Hub/Content/Resources/Images/tutorial-load_resident_threshold-cloud-rev.png)
4. Klik op Gegevens laden.
5. Open de gegevensmodelviewer. U kunt zien dat u een nieuwe tabel hebt gemaakt met de naam Sales\_Buckets met de geladen gegevens volgens de velden die u hebt gespecificeerd en de drempelwaarde die u hebt ingesteld.

   Sales\_Buckets-tabel in gegevensmodelviewer

   Sales\_Buckets-tabel in gegevensmodelviewer

   Sales\_BucketsSales\_Buckets-tabel in gegevensmodelviewer ![Tabel Sales_Buckets in gegevensmodelviewer.](https://help.qlik.com/nl-NL/cloud-services/Subsystems/Hub/Content/Resources/Images/ui_sales_buckets_table.png)
6. Voeg de gegevens toe aan een tabel in uw applicatie. Voeg Item en Customer toe als dimensies. Voeg High\_Quantity toe als een meting die is geaggregeerd op Count en daarna weer geaggregeerd op Sum. Voeg daarna een nieuwe kolom toe als een meting met de volgende formule:
   ```
   = Sum(High_Quantity) / Count(High_Quantity)
   ```

   Nieuwe meting met formule

   Nieuwe meting met formule

   Nieuwe meting met formule ![Nieuwe meting met formule.](https://help.qlik.com/nl-NL/cloud-services/Subsystems/Hub/Content/Resources/Images/tutorial_load-resident-chart-expression.png)

   Uw tabel laat bijvoorbeeld zien dat Customer 10025737 vier grote bestellingen heeft geplaatst van Gedroogde paddenstoelen met een gemiddelde hoeveelheid van 14.800. Om de gegevens in de velden te sorteren, sluit u de modus Bewerken door op Gereed te klikken.

   Tabel laat klanten zien die grote bestellingen hebben geplaatst

   Tabel laat klanten zien die grote bestellingen hebben geplaatst

   Tabel laat klanten zien die grote bestellingen hebben geplaatst ![Tabel laat klanten zien die grote bestellingen hebben geplaatst.](https://help.qlik.com/nl-NL/cloud-services/Subsystems/Hub/Content/Resources/Images/tutorial-load-resident-threshold-table.png)
7. Nu we dit voorbeeld hebben afgerond, schakelen we het script uit voor de variabele quantity\_threshold en de tabel Sales\_Buckets.

   Het einde van uw script zou er nu als volgt moeten uitzien:

   Uitgeschakeld script

   Uitgeschakeld script

   Uitgeschakeld script ![Uitgeschakeld script.](https://help.qlik.com/nl-NL/cloud-services/Subsystems/Hub/Content/Resources/Images/tutorial-sales_buckets_commented-cloud.png)

## Voorafgaande LOAD

Met een voorafgaande load kunt u transformaties uitvoeren en filters toepassen, zodat u de gegevens in een keer kunt laden. In wezen is het een LOAD-opdracht die moet worden geladen vanuit de onderstaande LOAD- of SELECT-opdracht, zonder dat een bronkwalificatie zoals From of Resident wordt opgegeven, zoals u normaal gesproken zou doen. Op deze manier kunt u elk gewenste aantal LOAD-opdrachten stapelen. De opdracht onderaan wordt eerst geëvalueerd, dan de opdracht erboven, enzovoort, totdat de bovenste opdracht is geëvalueerd.

Zoals eerder in deze tutorial is vermeld, kunt u gegevens in toepassingen laden met behulp van de instructies LOAD en SELECT. Elk van deze instructies genereert een interne tabel. LOAD wordt gebruikt om gegevens te laden uit bestanden of uit een uitgelijnde tabel, terwijl SELECT wordt gebruikt om gegevens te laden uit databases. In deze zelfstudie hebt u gegevens gebruikt uit bestanden. In dit voorbeeld gebruikt u een inline-tabel. Het is echter het vermelden waard dat een voorafgaande load kan worden gebruikt boven een SELECT-instructie om uw gegevens te manipuleren. De basisprincipes zijn hetzelfde, zoals u hier ziet bij het gebruik van LOAD.

Dit voorbeeld houdt geen verband met de gegevens die wij laden in deze zelfstudie. Het wordt uitsluitend gebruikt om te laten zien hoe een voorafgaande load eruit kan zien. U maakt een inline-tabel in de editor voor laden van gegevens met de naam Transacties. De datuminterpretatie wordt uitgevoerd in de voorafgaande LOAD, waar een nieuw bestand wordt gemaakt met de naam transaction\_date. Dit veld wordt gemaakt vanuit het veld sale\_date.

1. Maak een nieuwe applicatie en noem deze ReformatDate.
2. Open de editor voor laden van gegevens en maak vervolgens een nieuw tabblad met de naam TransactionData.
3. Voeg het volgende script toe:
   ```
   Transactions: 
   Load *,
   Date(Date#(sale_date,'YYYYMMDD'),'DD/MM/YYYY') as transaction_date;
   Load * Inline [ transaction_id, sale_date, transaction_amount, transaction_quantity, customer_id, size, color_code 
   3750, 20180830, 23.56, 2, 2038593, L, Red 
   3751, 20180907, 556.31, 6, 203521, m, orange 
   3752, 20180916, 5.75, 1, 5646471, S, blue 
   3753, 20180922, 125.00, 7, 3036491, l, Black 
   3754, 20180922, 484.21, 13, 049681, xs, Red 
   3756, 20180922, 59.18, 2, 2038593, M, Blue 
   3757, 20180923, 177.42, 21, 203521, XL, Black ];
   ```

   Uw script zou er als volgt moeten uitzien:

   Load-script met voorafgaande load

   Load-script met voorafgaande load

   Load-script met voorafgaande load ![Load-script met voorafgaande load.](https://help.qlik.com/nl-NL/cloud-services/Subsystems/Hub/Content/Resources/Images/tutorial_preceding_load_cloud-rev.png)
4. Klik op Gegevens laden.
5. Open de gegevensmodelviewer. Selecteer de tabel Transacties en vouw deze uit. U kunt zien dat alle velden zijn geladen zoals aangegeven in de \* in de voorafgaande-loadinstructie. Een nieuw veld met de naam transaction\_date is gemaakt. Het veld heeft de gewijzigde datumnotatie.

   Nieuw veld met de naam transaction\_date in gegevensmodelviewer

   Nieuw veld met de naam transaction\_date in gegevensmodelviewer

   Nieuw veld met de naam transaction\_datetransaction\_date in gegevensmodelviewer ![Nieuw veld met de naam transaction_date in gegevensmodelviewer.](https://help.qlik.com/nl-NL/cloud-services/Subsystems/Hub/Content/Resources/Images/ui_transaction_date.png)