ArcPy modules

ArcPy consists of a number of submodules. Each submodule represents an organized grouping of related functionality.

Toolbox modules

The majority of ArcPy modules represent an ArcGIS AllSource toolbox. The following modules (toolboxes) are documented in the ArcGIS AllSource geoprocessing tool reference:

  • 3D Analyst (arcpy.ddd)

    The 3D Analyst toolbox provides a collection of geoprocessing tools that enable a wide variety of analytical, data management, and data conversion operations on surface models and three-dimensional vector data.

  • AllSource (arcpy.intelligence)

    The AllSource toolbox contains tools that convert and analyze intelligence data sources. Use these tools as part of intelligence workflows to import data from many sources at once, analyze point track data to determine patterns, and assess physical environment data for suitable mobility or landing zones.

  • Analysis (arcpy.analysis)

    The Analysis toolbox contains tools that are used to perform analytical operations including spatial overlays, creating buffers, calculating statistics, and performing proximity analysis.

  • Cartography (arcpy.cartography)

    The tools in the Cartography toolbox are designed to produce and refine data to support the production of maps. This includes the creation of masks, the simplification and aggregation of features and reduction of their density, as well as tools for annotation and the creation of map series.

  • Conversion (arcpy.conversion)

    The Conversion toolbox contains tools that convert data between various formats.

  • Crime Analysis and Safety (arcpy.ca)

    The Crime Analysis and Safety toolbox contains tools that support analytical functions to manage data, select crime incidents, conduct tactical and strategic analysis, and investigate crime patterns.

  • Data Management (arcpy.management)

    The Data Management toolbox contains tools that are used to develop, manage, and maintain feature classes, datasets, layers, and raster data structures.

  • Defense (arcpy.defense)

    The Defense toolbox provides a collection of geoprocessing tools that enable the automation of analytical processes and workflows for determining location, distance, range, and visibility.

  • Editing (arcpy.edit)

    The Editing tools allow you to apply bulk editing to all (or selected) features in a feature class.

  • GeoAI (arcpy.geoai)

    The GeoAI toolbox contains tools for using and training AI models that work with geospatial and tabular data. These tools use modern machine learning and deep learning techniques and integrate them with GIS.

  • GeoAnalytics Desktop (arcpy.geoanalytics)

    GeoAnalytics Desktop tools provide a parallel processing framework for analysis on a desktop machine using Apache Spark. Through aggregation, regression, detection, and clustering, you can visualize, understand, and interact with big data. These tools work with big datasets and allow you to gain insight into your data through patterns, trends, and anomalies. The tools are integrated and run in ArcGIS AllSource in the same way as other desktop geoprocessing tools.

  • Geocoding (arcpy.geocoding)

    Geocoding is the process of assigning a location, usually in the form of coordinate values, to an address by comparing the descriptive location elements in the address to those present in the reference material. Addresses come in many forms, ranging from the common address format of house number followed by the street name and succeeding information to other location descriptions such as postal zone or census tract. In essence, an address includes any type of information that distinguishes a place.

  • Image Analyst (arcpy.ia)

    The ArcGIS Image Analyst extension provides tools with which to analyze imagery data.

  • Knowledge Graph (arcpy.kg)

    The Knowledge Graph toolbox contains tools for creating a knowledge graph and loading data into it.

  • Multidimension (arcpy.md)

    The Multidimension toolbox contains tools that are used to create and manage netCDF, GRIB, HDF, OPeNDAP, Esri's CRF, multidimensional mosaic datasets, and multidimensional image services. You can use these tools to generate multidimensional metadata; create a multidimensional raster or feature layer (from netCDF files only), or table view (from netCDF files only); select a specific slice from a multidimensional dataset; or create a subset of a multidimensional raster dataset.

  • Network Analyst (arcpy.nax and arcpy.na)

    The Network Analyst toolbox contains tools for performing network analysis and network dataset maintenance. With the tools in this toolbox, you can maintain network datasets that model transportation networks and perform all types of transportation network analysis using these networks.

  • Oriented Imagery (arcpy.oi)

    The Oriented Imagery toolbox contains tools to create, manage, and maintain oriented imagery datasets and layers.

  • Raster Analysis (arcpy.ra)

    The Raster Analysis toolbox contains a set of tools for performing raster analysis on data in your portal. By distributing the processing between multiple server nodes, you can process large datasets in less time than processing using your desktop machine. Raster Analysis tools are powered by your ArcGIS Image Server.

  • Server (arcpy.server)

    The Server toolbox contains tools to manage web layers and web maps. It also contains tools that simplify data extraction through the server.

  • Space Time Pattern Mining (arcpy.stpm)

    The Space Time Pattern Mining toolbox contains statistical tools for analyzing data distributions and patterns in the context of both space and time. The toolbox contains toolsets for clustering analysis, forecasting, and a tool that creates a space-time cube layer that can be used to visualize the data stored in the space-time netCDF cube in both 2D and 3D. The toolbox also includes options for estimating and filling missing values in the data before cube creation.

  • Spatial Analyst (arcpy.sa)

    The Spatial Analyst toolbox provides a set of spatial analysis and modeling tools for raster (cell-based) and feature (vector) data.

  • Spatial Statistics (arcpy.stats)

    The Spatial Statistics toolbox contains statistical tools for analyzing spatial distributions, patterns, processes, and relationships. While there may be similarities between spatial and nonspatial (traditional) statistics in terms of concepts and objectives, spatial statistics are unique in that they were developed specifically for use with geographic data. Unlike traditional nonspatial statistical methods, they incorporate space (proximity, area, connectivity, and/or other spatial relationships) directly into their mathematics.

Additional modules

In addition, some modules are entirely, or partially, composed of nontool functionality. The tool components of the following modules are documented in the ArcGIS AllSource toolbox reference, and the nontool functionality is documented in the ArcGIS AllSource Python reference:

  • Charts (arcpy.charts)

    The arcpy.charts module allows you to visualize and explore your data to help uncover patterns, relationships, and structure that might not be apparent when looking at a table or map. These classes correspond to the charts available in ArcGIS AllSource.

  • Data Access (arcpy.da)

    The Data Access module, arcpy.da, is a Python module for working with data. It allows control of the edit session, edit operation, improved cursor support (including faster performance), functions for converting tables and feature classes to and from NumPy arrays, and support for versioning, replicas, domains, and subtypes workflows.

  • Geocoding (arcpy.geocoding)

    The Geocoding module, arcpy.geocoding, allows you to explore and set locator properties and automate geocoding workflows. Geocoding is the process of transforming a description of a location—such as a pair of coordinates, an address, or a name of a place—to a location on the earth's surface. A locator is the tool used to perform geocoding operations. With this module, you can view and modify properties on the locator to tune it to your specific geocoding needs by customizing it for performance or quality. You can also use this module to perform various geocoding operations, including finding the location of a place or address, finding the closest place or address to a given location, or generating a set of autocomplete suggestions for partial input.

  • Image Analysis (arcpy.ia)

    The Image Analysis module, arcpy.ia, is a Python module for managing and processing imagery and raster data. The module also includes functionality provided by the ArcGIS Image Analyst extension, such as all of the geoprocessing functions, as well as advanced functions and classes that allow you to automate your raster processing workflows.

  • Mapping (arcpy.mp)

    The Mapping module, arcpy.mp, is a Python module for manipulating the contents of existing project files (*.aprx) or layer files (*.lyrx). You can modify the contents of these files in the application or without the application being open. The module is installed with ArcGIS AllSource and is available to all licenses.

  • Metadata (arcpy.metadata)

    The Metadata module, arcpy.metadata, is a Python module for accessing and managing an item's metadata. You can explore information describing your maps and data and automate your workflows, particularly for managing standards-compliant geospatial metadata.

  • Network Analyst (arcpy.nax and arcpy.na)

    The Network Analyst module, arcpy.nax, is a modern, easy-to-use Python module for working with network analysis functionality provided with the ArcGIS Network Analyst extension. It provides access to the following:

    The Network Analyst module arcpy.na is a Python module for working with network analysis functionality provided with the ArcGIS Network Analyst extension. It provides access to all the geoprocessing tools available in the Network Analyst toolbox as well as other helper functions and classes that allow you to automate the Network Analyst workflow through Python.

  • Sharing (arcpy.sharing)

    The arcpy.sharing module is a Python module that allows you to automate sharing workflows. Use it to create a sharing draft, which is a configurable set of properties for a web layer, web tool and geoprocessing service, map service, or image service. Creating a sharing draft is the first step in automating the sharing of a GIS resource to ArcGIS Enterprise, ArcGIS Online, or ArcGIS Server.

  • Spatial Analyst (arcpy.sa)

    The Spatial Analyst module, arcpy.sa, is a Python module for analyzing raster and vector data with the functionality provided by the ArcGIS Spatial Analyst extension. It provides access to all the geoprocessing tools available in the Spatial Analyst toolbox as well as other functions and classes that allow you to automate your raster processing workflows.

Related topics