I was playing around with the EntityData function, specifically seeing the depth of information coverage at the provincial level for my home country of Canada.
I got the list of all possible attributes, which I stored as a list named props, and ran the following...
"Canada"}], #] & /@ props
It took quite a long time to complete (in the order of a minute or so), and, not surprisingly, quite a few of the fields came back as Missing[DataNotAvailable]. This, as I say, is not surprising, as many of the properties would only make sense at the national level.
But I was concerned about the time required, and wondered whether this might be due to missing data. So I shortened the list to just those properties that came back with data in the first pass, naming the list populatedProperties. The time using the Map above was still very long.
So I ran them individually by hand (there were only 11) rather than using my Map statement as above, and they all came back individually very quickly. I could easily run the calls individually in less time than it takes the Map statement to work.
And the following...
...comes back almost instantaneously.
I suppose in retrospect my last attempt does make the most sense. But it doesn't make sense that calling EntityValue multiple times "by hand" should be quite a bit faster than trying to get Map to do the heavy lifting.
Is there anything wrong with my Map statement? Is there any reason why multiple hits via Map should be slow?
Thanks in advance for any suggestions.