Please keep in mind that we can't include everything requested as there is a lot of work in testing and integration for each library ([Windows|Linux]x[32 bit|64 bit]x[Many other factors]).
Another example is with time zones. I like pytz and I'm used to using it, but ArcGIS ships with its own time zone database and its own way of doing things with the time-aware stuff that came with 10.0, so instead of bundling pytz with its own parallel time zone database I went ahead and integrated the ArcGIS way of doing things as arcpy.time, which had the additional benefit of the smart time delta class that uses ArcGIS' time APIs. This then also negated any specific need for dateutil, which is another library I really like. But arcpy.time handles standard Python datetime and tzinfo objects so it all interoperates just fine with everything else, and the skills you learn either from arcpy or pytz/dateutil transfer without a hitch.
A very serious performance hit is placing the default.gdb in the user's profile area which is not local, but across the network.
There is a fix for this in 10.0 SP5 and 10.1.HowTo: Set the default Home folder and geodatabase location for new map documentsOf course this requires getting SP5 installed!
When I backported GPX to Features in 10.1 I found that the time conversion tools do not work even at SP5 so I have to go back to dateutil.
Shipping on the CD is not very helpful.Do you really mean that these modules should be installed with Python?I have a current problem writing some tools to generate Excel spreadsheets as final reports. Easy to do using the win32com module that comes with win32all or Pythonwin that is included with the standard install but not installed with ArcGIS and Python.The result is that scripts will work in a development environment but cannot be deployed because the modules are not organisation wide....So rather than worry about some optional and less used modules, I would rather see the defaults loaded with the software to tackle intransigent and unskilled administrators. I suppose they can always reverse them to 'comply with Policy'.
At the UC this year we saw the need for some more documentation on including modules and packages install-free, so we're working on a blog post about that right now.
Even though I voted for some python modules to be included, what I'd really like to see is that ESRI work with Enthought to make sure there is a version of the Enthought Python Distribution that is compatible with each version of ArcGIS. That way, I can just use the 100+ libraries already provided in the EPD together with ArcGIS. This is already true in the latest Enthought EPD 7.3 and ArcGIS 10.1, both of which use Python 2.7 and Numpy 1.6. So everything works very nicely together. But how long will this very nice situation last? Let's make it last longer than just these current releases!-Rich Signell
Would there be any interest in Pandas? It would be nice to interact with and manipulate tabular information without actually changing the source table, or to populate tables (before writing them to a geodatabase) without being restricted by InsertRow. Data analysis/processing can be especially nasty in Python/arcpy when creating field values that depend on the values in other rows. I often find myself switching to R (a statistical programming environment... Pandas gives Python an R-like functionality) for the ease of working with tabular data that can be accessed by row/column indices or by row/column names.Kerry AlleyGIS technicianVT Agency of Transportation
I vote for none. A quick check of the python package index shows almost 25,000 Python modules available. Where would the line be drawn.What I would like to see is for ESRI to install Python using the standard Python installation directories, then install ArcPy as just another package under the site-packages directory. That way all the off the shelf Python stuff works just fine.I'm still on 10 so maybe 10.1 fixes this issue.
Mike: we're bundling xlrd and xlwt with newer versions of ArcGIS, would that be adequate for your needs?I'm aware of the demand for Pandas (I want it too), I'm going to see what I can do with that.
Pandas sounds like a really good idea.
Talking with the arcgis geoprocessing team at UC yesterday -- they said that ArcGIS Pro beta 4 (python 3.4 of course) is shipped with an "internal" python install used by the app and a separate installer with python 3.4 that includes what Bill M was calling the "sci stack" which includes the modules used by esri (numpy, matplotlib etc) plus a another 300MB of so of other scientific modules (I think he said scipy, pandas, netCDF4) that aren't used by Esri but are useful to us.
The idea is they don't have the footprint there in a standard Pro install, but the group of users that will be installing this separate python installer are developers and can deal with the footprint and any issues they run into with these modules and not blame Esri. 🙂
This is great news. Hope there is a blog post coming from the arcpy crew soon! Maybe on the cafe?
Another option that would be great is for Esri to simply include pip and Easy Install. This would make it easy for people to write scripts in Python or even BAT files that could add any 3rd party libraries needed. Most Python distributions (excluding windows) come with pip and Easy Install ready to go, it seems like something Esri could add that would make it more "pythonic" and much easier for anyone to require additional libraries or dependencies.
I would support adding pip and/or easy_install rather than including too many third party libraries.
Using pip or easy_install is super easy and quick to install whatever library you might need.
pip is bundled with Python 3.4.
ArcGIS 10.3.1 and ArcGIS Pro 1.0 include optional installers for Python that include a rich standard ArcGIS Python stack. SciPy and pandas are included.
ArcGIS Blog: Strengthening the Link between GIS and Science
I would like to see a module capable of creating a form
Signed in members can post, follow updates, and more. New here? Register a free account.
Find useful guides, FAQs, and documents to help you navigate and make the most of Esri Community.