8

I have recently encountered the Pick tool in the Spatial Analyst of ArcGIS. I understand what the tool does; it creates an output raster using a list of input rasters and a 'position' raster which dictates for each grid cell in the output which input it should receive the value from. I've looked for questions on GIS.SE that mention the Pick tool and there don't seem to be any. Having used GIS for quite some time now, I can't think of a past scenario when this operation would have been useful to me. Even the ArcGIS help documentation, which is normally quite extensive, doesn't reveal a use-case for the tool. I'm very curious whether any of you have ever used this tool and if so what for? Is there some niche area that I am overlooking, e.g. some operation involving multi-spectral images, in which this is a common operation?

2
  • Interesting tool. I've never used it either; any scenario I could imagine using it for would be as easily dealt with using the Con tool, or Map Algebra.
    – Erica
    Commented Sep 29, 2014 at 14:12
  • 1
    @Erica Yes, the Con tool and Map Algebra are so widely used but that Pick tool sits in the same toolbox as the Con and I just can't see its use-case. I've done a search on the net and the only sites that mention it are the ESRI help docs. Someone has to know what it's for... Commented Sep 29, 2014 at 14:21

2 Answers 2

4

most of the tool can be replaced with Map algebra, but the syntax of pick makes it easy to use.

I've used it for mosaicking with multiple masks (you have a set of classification, and you want to combine them based on geographical stratification.)

It is also quite usefull in combination of the local toolset. For example, one of those tools can find the position of the highest value in a set of raster. So if you add one to the result, you can pick the value after the maximum. This is quite usefull for time series analysis.

4
  • 1
    +1 Very interesting, I know when I saw the tool I was thinking of the type of Minimum and Maximum from a stack of images that you are describing in the local toolset, but the Pick tools seems quite different in that it uses a position raster that I'm not sure how you would get. As for the first example you give, I always think of mosaicking as involving rasters that only partially overlap but Pick seems to work with a completely overlapping stack of rasters. Can you elaborate on this application? Commented Sep 29, 2014 at 16:05
  • 1
    The tools "lowest position" and "highest position" generates directly the position raster that can be used with pick. This is useless if you want the maximum (because you could then use cell statistics), but it is usefull for the values before/after the maximum.
    – radouxju
    Commented Sep 29, 2014 at 18:11
  • for the other application, this is a more direct application. I need a decision where several images overlap because several rasters have a value in some places. With the mosaicking tool, I could use some rules in those areas (mean, max, first...) but this does not help.
    – radouxju
    Commented Sep 29, 2014 at 18:20
  • Thanks for the clarification. This is really insightful. Commented Sep 29, 2014 at 20:55
3

Pick is the map algebra analog of a "case" or "switch" statement. Like them it is not indispensable but it can be convenient (and more efficient than deeply nested binary logical operators).

Notable among the uses to which I have put this operation is its ability to implement a cellular automaton.

Another handy use is random selection of rasters. A worked example appears on this site at Creating raster by randomly choosing cell value from multiple overlapping rasters?

5
  • +1 For the link to the random sampling answer. I had never considered this application. Also, I had never thought about its use for cellular automaton based analysis. I still can't quite see the link, but I'll certainly look further into it. Thanks for the wonderful answer. Commented Sep 29, 2014 at 20:53
  • I suppose the fact that Pick is effectively a raster switch case may be the reason that I've never run into a use case for it before as I would likely have done that sort of workflow directly through programming. This is very illuminating. Commented Sep 29, 2014 at 20:57
  • 1
    I admit my discussion of CAs is vague. The point is that the next generation at a cell depends on its current neighbors. When the pattern of current neighbors is encoded as an integer 0, 1, ..., n, then Pick is the right tool for choosing the next generation. The link I provided focuses on a CA (Conway's Game of Life), which is so simple there are only two conditions, so Pick is not actually needed to implement it.
    – whuber
    Commented Sep 29, 2014 at 21:07
  • 1
    That makes sense. Thanks for clarifying. I'm starting to see why this is an important tool with a variety of useful applications ;) Commented Sep 29, 2014 at 21:09
  • 1
    Both answer to this question were excellent and very helpful but I have to choose one to accept and I'll choose this one because it makes the link between the Pick tool and the programming structure 'Switch Case' which makes the general application of the tool apparent to me. Commented Sep 30, 2014 at 12:04

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.