Document toolboxDocument toolbox

Geographic coordinate system (coordsystem)

Description

Creates a column identifying the coordinate system of the given geocoord column as either laton or geohash. This can be useful if you have a column of geocoordinates in both formats and you want to work with them separately. For example, you can use this operation to identify the system used, then apply a filter to isolate one type that you want to convert to the other system.

Learn more about geocoords and their types in the Geocoord (geocoord) article.

How does it work in the search window?

Select Create column in the search window toolbar, then select the Geographic coordinate system operation. You only need to specify one argument:

Argument

Data type

Argument

Data type

Geocoord mandatory

geocoord

The data type of the new column is string. The result can be latlon, geohash, or null.

When you apply this operation in the search window interface, Devo automatically transforms the values you enter manually in the Geocoord argument into geocoord data type.

If you choose a column, it must be a geocoord data type column. You can transform the strings in a field to geocoords creating a new column using the Geocoord (geocoord) or Latitude and longitude coordinates (latlon) operations. 


Example

The examples in this article use values in a data table generated from the following CSV file.

If you want to try the example by yourself, download the file and upload it to your domain by clicking Data upload in the navigation pane. Name the new table my.upload.geolocation.data and select Current date as Date parsing type. Learn more about uploading data in Uploading log files.

After receiving the confirmation message, you can access the table from the finder, selecting my → upload → geolocation → data. When you upload data from a file, all the information is included in a single column called message. To split the values into different columns, you can use the Split (split) operation. Click Query code editor in the search window toolbar and paste the following LINQ query to save time:

from my.upload.geolocation.data
select split(message, ";", 1) as geohash_strings


Our geohash_strings column contains strings representing different geocoords. We want to get the type of these geocoords in a new column.

First, we need to transform the string into geocoord data type. To do it, click Create column and select the Geocoord operation. Then, select geohash_strings as the Coords string argument. Click Create Column. 

Now, click the Create Column icon again and select the Geographic coordinate system operation. Choose the geocoords column previously created as the argument.

The result is a new column (coord_systems) showing the type of the geocoords selected. In this example, the type of the selected geocoords is geohash.

How does it work in LINQ?

Use the operator select... as...  and add the operation syntax to create the new column. These are the valid formats of the Geographic coordinate system operation:

  • coordsystem(geocoord)

  • coordsystem(geocoord(string))

As seen in the above syntaxes, you must transform the strings added as arguments to data type geocoord. You can do this by using the Geocoord (geocoord) operation.

Example

Note that you must have uploaded the following CSV file to your Devo domain as explained above to try out this example.

Copy the following LINQ script and try the above example on the my.upload.geolocation.data table.

from my.upload.geolocation.data select split(message, ";", 1) as geohash_strings select geocoord(geohash_strings) as geocoords select coordsystem(geocoords) as coord_system