The R-ArcGIS Bridge (a.k.a. the R bridge) is the R integration project that enables a seamless connection between ArcGIS Pro, and the R ecosystem. The R-ArcGIS Bridge opens up scientific data analysis workflows and pipelines that can leverage the analytical capabilities of the ArcGIS platform and niche data science packages of R language in tandem.
Since its inception, the R-ArcGIS Bridge user base has grown to a whopping 36,000 downloads, as of writing this blog. In the past year, we have been receiving recurring questions that can be summarized with:
– Does it work with Living Atlas?
– We have massive amounts data in our ArcGIS portal, can we use it without downloading?
We announce new capabilities of the bridge that enable working with remote data sources, feature and image services, in addition to portal authentication functionalities that allow you to work with data that resides in a private portal. This blog summarizes some key new features and out-of-the-box features of arcgisbinding, R-ArcGIS Bridge’s R package, pertinent to working with remote data.
Below is a workflow for the new and updated functions of
arcgisbinding to leverage remote data and in this blog we will explore ways in which you can utilize the R-ArcGIS Bridge to its full capacity to leverage new and improved functionality.
The Improved arc.open() Function
arc.open is the mostly frequently used function of the
arcgisbinding package because it is the first function you need to retrieve any spatial data, vector or raster alike, whether it is in a local geodatabase or in a remote server. Inside R, this function creates an
arc.dataset-class object that defines the spatial information and attribute information contained in the dataset. All you need for
arc.open is the path to the spatial data that you would like to bring into R.
Assume you would like to bring in BlueDot’s county-level social distancing feature service displayed below:
All you need is to reference the URL for the feature service from
arc.open and the function will make a call to this feature service and bring in the data definition. Here the URL for this feature service is
You can bring this data in by simply calling
arc.open on the URL. The code snippet above makes a call to the REST API and creates a definition of this dataset. Next, you can bring this feature service into R as a spatial data frame by simply calling
arc.select on this data definition. This is the same function you would use for local data.
The new and improved
arc.open allows you to interact with remote data sources with ease and opens up your R analysis to the wealth of spatial and space-time data maintained and curated by the ArcGIS community.
The BlueDot feature service is publicly available and getting this data into an R dataframe is a direct call to the feature service from
arc.open. What if you have private, password-protected, feature and image services in a private portal? The next sections will elaborate how.
Accessing Protected Data in Private Portals
Not all data can be made publicly available due to the sensitivity of the data and/or privacy concerns pertaining to the data source. If you are working with such data and would like to have the seamless and effortless integration described above, this section is for you! Accessing data in your private portal is as easy as 1-2-3.
1. In ArcGIS Pro login to the portal that you need
arc.check_portal() to make sure the R-ArcGIS Bridge recognizes the sign in to the portal
arc.open on the feature service/image service URL to bring it into R
After these steps you can access your data that resides in your active portal. The process of reaching private remote data using the R-ArcGIS Bridge is summarized in the video below:
Private Data on Multiple Portals: Enter arc.portal_connect()
Lastly, you might be building an R script that consumes remote data from multiple portals. Note that only one portal can be active in ArcGIS Pro, at a time. We developed the new R-ArcGIS Bridge function
arc.portal_connect() to connect to multiple portals.
arc.portal_connect() can connect to any inactive portal added to the ArcGIS Pro instance. In the example above, devext is a portal that is inactive but is in the list of portals in ArcGIS Pro. If you needed data from this portal in addition to data from the active portal, you can sign on to it in your R instance simply with:
arc.portal_connect('https://devext.arcgis.com/', username, password)
In the code snippet above, you would need to replace the username and password with your credentials, and you would be on your way to consuming remote data from multiple portals.
The R-ArcGIS Bridge now works seamlessly with remote data sources whether they are public or reside in private portals. This development opens up your R and ArcGIS analysis to an ocean of curated, community-driven data. We are excited to see what you will do with this new functionality and are always excited to hear your needs of the R-ArcGIS Bridge.