This question was stimulated by a discussion between WhiteBox and myself.

Both Reclass and Con (i.e. a conditional evaluation tool) are examples of tools that implement a Switch statement or nested If-Then-Else statements. But when should one use Reclass and when is it more appropriate to use Con (i.e. a conditional evaluation tool)?

I generally think of reclass as a simple tool and Con as a more complex tool and whiteboxdev the other way around.

I use Con mostly when I want to pull data from another raster layer based on the condition. I use reclasss when all the info is in the origin raster. I use con to "pick" values to replace in a Raster and reclass to do a "suite of changes"

Any best practices or what do you do?

  • Can't wait to see the replies! I tend to use Reclassify when I have multiple categories in the output raster and obviously when the output can be described by a series of constant values (not image cell values). Conditional evaluations are perfect when the output must be drawn from one image or another (i.e. cell values) or, for me, when it's a simple Boolean (two class) output. But perhaps I'm strange that way! Commented Oct 21, 2014 at 18:39
  • Obviously they're both examples of branching logic, but I tend to think of Con as being a very flexible (and powerful) If-then-else statement and Reclassify as being a slightly less powerful (since only constants can be specified) If-then-elseif-elseif-elseif... statement, i.e. a switch. Commented Oct 21, 2014 at 19:15

1 Answer 1


you can do more with Con than with Reclass, for example you can have continuous output value with Con. You can also use some map algebra within your statement, and you can have multiple inputs.

However, if you need an output with a large number of classes, reclass is easier to use because you can use the built-in partitioning methods based on the histogram. Writing several thresholds in encapsulated Con statement is really annoying.

One thing that I like with the reclassify tool is that it will propose the categories that you have in your layer. This is very useful when you need to set arbitrary thresholds on a continuous data.

  • 2
    +1 That's a really good point about the automatically populated category ranges with Reclassify. Commented Oct 21, 2014 at 18:53

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.