 Hi, this is Hans van der Kluft, Senior Lecturer at IHE Delft Institute for Water Education. In this video I'm going to demonstrate how to use a lookup table to combine different input maps and assign a combination of these maps a certain output value. Of course we can also solve this using a lot of if-then-else lines, but you will see that using a lookup table is much easier. In the PC Raster documentation you can find under Operations the lookup functions. And they're quite cryptical if you use it for the first time. First you can see that you use different functions for different data types that refers to the output data type. So if you are assigning Boolean values to the output map using the table you need to use lookup Boolean. If it's lookup nominal you can also use scalar. Then you see that the first argument is the lookup table and then there are several expressions. The expressions in our case are maps. There's a lot of documentation on this site, but it becomes all much clearer if I explain this using some examples. So let's open the Anaconda prompt. Before we start the PC Raster environment, Conta Activate PC Raster. In a previous video you've learned how to make that environment. Then I go to where my data is stored, it's in the CN folder. You see the files and let's have a look. There's the lentus.map and the soil.map and we're going to combine these different classes of lentus with the combinations of soils into the CN values, the curved number values. I can open in Notepad this file and here we see all the combinations. So the first column refers to lentus, the second to soils and then the third one is the curved number. So lentus1, soils1 gives 86, etc., so we can write down all these combinations. So here I can now start Python and I'm going to import the PC Raster library and I'm going to read the lentus.map and the soils.map and in this way I can simply create CN variable which is then lookup scalar. The first argument is the table which we still need to read from the disk. So that's CN.tbl, then the lentus.map and then the soils.map and then we can report this back to the disk and we can close this Python prompt and now we can visualize all these maps. So we have lentus, we have soils and we have the CN.map and we can verify the different combinations. In the second example I have a DEM which ranges its values from 201 to 298 and I want to make classes using a lookup table to classify different ranges of elevation. So what I can do in Notepad is to define these classes. So I can say everything less than 210 but not including 210 becomes value 1. Then from 210 with a square bracket that means including 210 to 230 not included 230 becomes value 2. Then from 230 to 250 but also including 250 becomes value 3 just to show you how this works. And then we can continue from 250 not including it until 280 and we call it value 4. And now I want everything larger than 280 without an upper border to become value 5. So I can save this, then reclass, I start the Python from VCRuster import and I'm going to read the DEM and I'm going to use lookup nominal or ordinal. There's an order in the classes so I'm going to use lookup ordinal. So I'm going to use a new variable lookup ordinal and the first one is the table and the second one is the DEM and I'm going to write it to the disk, close Python pumped and then reclass and here we see the different classes that we created so that's an easy way to reclassify one or a combination of maps.