It might be possible with some COBOL compiler on some platform, but I've never seen it done in 40+ years of COBOL coding. As has been nicely implied, it's not particularly relevant to COBOL. If the capability is needed, then a very different language should be used, both to populate the memory and to access it. (The two must be compatible.) It doesn't fit within the types of tasks that COBOL should be used for.
With that said, there are a couple methods that might be used on at least some IBM platforms that can help you with 'educated guesses' between some data types. Most often, the guesses tend to be elimination of data types rather than a selection of a specific type.
That is, you can often look at memory and potentially see values that cannot be packed-decimal, so you could eliminate that data type. That's not particularly useful, though, because it doesn't tell you what is actually there. And there is no way ever to eliminate binary integer values. No matter what data type was assigned to a memory area, the bit pattern can always be interpreted as a binary integer value.
tomliotta