---
title: "Quickstart to arcpy"
output: rmarkdown::html_vignette
vignette: >
  %\VignetteIndexEntry{Quickstart}
  %\VignetteEngine{knitr::rmarkdown}
  \usepackage[utf8]{inputenc}
---



Getting started with `{arcpy}` in R is easy. If you're using ArcGIS Pro,
you'll first need to create a Conda environment that will link to your
ArcGIS Pro install. If you're not familiar with Conda or the
[`reticulate`](https://cran.r-project.org/package=reticulate)
package, check the vignettes
[Calling Python from R](https://rstudio.github.io/reticulate/articles/calling_python.html) and
[Python Version Configuration](https://rstudio.github.io/reticulate/articles/versions.html).

For example, here's how you would create a Conda
environment to link to an ArcGIS Pro 3.1 install.


```r
library(arcpy)

install_arcpy(version = "3.1")
```

If you don't specify the python version, the package will use the
latest compatible Python version based on what is reported in the
arcpy module build. By default, the package creates a new environment
named "r-arcpy", but this can be overridden.

`{arcpy}` automatically provides a `reticulate` module object 
called `arcpy`. This object provides the interface to ArcGIS.


```r
arcpy
```

```
## Module(arcpy)
```

```r
arcpy$GetInstallInfo()$ProductName
```

```
## [1] "ArcGISPro"
```

Once you are connected to your ArcGIS installation, using `arcpy` functions
and classes is as seamless as using any other Python module via `reticulate`.


```r
# get and set the arcpy environment
arcpy$env$workspace = tempdir()
arcpy$env$workspace
```

```
## [1] "C:\\Temp\\1\\RtmpGWDuu8"
```

`{arcpy}` also re-exports reticulate's `py_help` function so that 
you can access the `arcpy` documentation.


```r
# get help on arcpy functions
py_help(arcpy$Exists)
```

Happy scripting!
