Geoprocessing using Python - Manipulating spatial data

Python for Spatial Analysis in ArcGIS Using Python in ArcGIS Pro
14 minutes
Share the link to this page
You need to have access to the item to view this lesson.
One-time Fee
List Price:  $99.99
You save:  $30
List Price:  €92.43
You save:  €27.73
List Price:  £78.64
You save:  £23.59
List Price:  CA$137.12
You save:  CA$41.14
List Price:  A$151.09
You save:  A$45.33
List Price:  S$135.09
You save:  S$40.53
List Price:  HK$781.70
You save:  HK$234.53
CHF 63.45
List Price:  CHF 90.65
You save:  CHF 27.20
NOK kr738.30
List Price:  NOK kr1,054.77
You save:  NOK kr316.46
DKK kr482.62
List Price:  DKK kr689.49
You save:  DKK kr206.87
List Price:  NZ$163.75
You save:  NZ$49.13
List Price:  د.إ367.26
You save:  د.إ110.18
List Price:  ৳11,746.32
You save:  ৳3,524.24
List Price:  ₹8,326.85
You save:  ₹2,498.30
List Price:  RM470.35
You save:  RM141.12
List Price:  ₦139,564.04
You save:  ₦41,873.40
List Price:  ₨27,858.04
You save:  ₨8,358.25
List Price:  ฿3,674.88
You save:  ฿1,102.57
List Price:  ₺3,229.98
You save:  ₺969.09
List Price:  B$520.22
You save:  B$156.08
List Price:  R1,863.40
You save:  R559.07
List Price:  Лв180.83
You save:  Лв54.25
List Price:  ₩137,547.26
You save:  ₩41,268.30
List Price:  ₪371.76
You save:  ₪111.54
List Price:  ₱5,850.51
You save:  ₱1,755.32
List Price:  ¥15,690.93
You save:  ¥4,707.75
List Price:  MX$1,704.41
You save:  MX$511.37
List Price:  QR366.40
You save:  QR109.93
List Price:  P1,361.25
You save:  P408.41
List Price:  KSh13,048.69
You save:  KSh3,915
List Price:  E£4,726.59
You save:  E£1,418.12
List Price:  ብር5,771.53
You save:  ብር1,731.63
List Price:  Kz85,432.22
You save:  Kz25,632.23
List Price:  CLP$90,957.90
You save:  CLP$27,290.10
List Price:  CN¥710
You save:  CN¥213.02
List Price:  RD$5,917.99
You save:  RD$1,775.57
List Price:  DA13,475.15
You save:  DA4,042.95
List Price:  FJ$225.87
You save:  FJ$67.76
List Price:  Q777.63
You save:  Q233.31
List Price:  GY$20,940.90
You save:  GY$6,282.90
ISK kr9,646.72
List Price:  ISK kr13,781.62
You save:  ISK kr4,134.90
List Price:  DH998.11
You save:  DH299.46
List Price:  L1,770.37
You save:  L531.16
List Price:  ден5,686.25
You save:  ден1,706.04
List Price:  MOP$805.41
You save:  MOP$241.64
List Price:  N$1,835.51
You save:  N$550.70
List Price:  C$3,698.08
You save:  C$1,109.53
List Price:  रु13,345.87
You save:  रु4,004.16
List Price:  S/376.83
You save:  S/113.06
List Price:  K389.14
You save:  K116.75
List Price:  SAR375.01
You save:  SAR112.51
List Price:  ZK2,729.87
You save:  ZK819.04
List Price:  L459.98
You save:  L138
List Price:  Kč2,290.69
You save:  Kč687.27
List Price:  Ft36,007.06
You save:  Ft10,803.20
SEK kr743.98
List Price:  SEK kr1,062.87
You save:  SEK kr318.89
List Price:  ARS$89,349.55
You save:  ARS$26,807.54
List Price:  Bs691.63
You save:  Bs207.51
List Price:  COP$385,247.22
You save:  COP$115,585.72
List Price:  ₡51,971.60
You save:  ₡15,593.04
List Price:  L2,481.76
You save:  L744.60
List Price:  ₲754,290.36
You save:  ₲226,309.74
List Price:  $U3,854.56
You save:  $U1,156.48
List Price:  zł396.62
You save:  zł118.99
Already have an account? Log In


Hi, in this tutorial, we are going to manipulate spatial data. So you will be able to control and edit sessions. You will also work with cursors in tables and some functions for comparing tables and feature classes for additional processing. So open your London project, which you made in lesson six. Now we are going to use cursors to work with the rows in a table. In this sense, we are going to use the cursors to search, insert or update a list of records in a table.

They are commonly used to read existing geometries and write new geometries. For example, you can use a search cursor to retrieve rows, insert cursor to insert new rows and update cursor to update or delete rows from a table. Keep in mind that the cursor goes in for direction. So if you need a preview, you must reset the cursor to its initial position. You can do that with a search and update cursors. To work with this lesson, we are going to create a table from the feature layer London diversity.

So you must use the geoprocessing tool called copy roads. Therefore, import arc p y. So write arc p y dot copy roads and press TAB key to autocomplete a pop up window opens with A hint to select London diversity layer and the copy called new feature. Select any of them because they handle the same information. I'm going to select new feature, then write a comma and write the name of the table. In this case, I'm going to name it London underscore diversity underscore table and press Enter.

Now, arc pi has created the table. If you want to check it, go to the map tab and observe the table as I show you in the video. Since we now have a table, we can use the functions of that access model from arc pi We are going to use the search cursor function to retrieve the rows in a table. In the previous lesson, we saw that London diversity has many fields. One of them is Borel, we are going to use that field when searching for the name of each bureau from the table. So right cursor equal arc pi dot search and press TAB key.

Now select the London diversity table write a comma and the list of fields. In this case, we are going to use only the Borel field. So open a bracket and type in Borel capitalized. Now you can access to each element of the borrowed field if you want to return Each row, you must use a for loop. Write for row in cursor, colon and press enter. Right print, open parenthesis, type in, in closing quotes, borrow equal, open curly brackets and write zero inside them.

Move out of the quotation mark, type dot format, open parenthesis and type in our role zero, then press Enter twice and observe the outcome, you will get the name of the 33 boroughs of London. Now, let's insert a new row in a table if you want to do that first You have to create a cursor using insert cursor function, then you have to use the insert row method to include the list of values in that row. In case that you want to insert multiple rows, you should use a loop. For example, right cursor equal arc pi.da dot insert and press TAB key. Select London diversity table right comma, the capitalized string Borel and press enter. Then right cursor dot and select the Insert row method.

In this case, since we have selected one file, the list of values Must have one element create one element list with a value new Borel the other fields in the table are assigned in the fields default value automatically, which is typically No. Right Dell cursor and press enter. When you do that, your table is going to be updated and you will release the database. Then try to apply the previous example again and you observe the entry code new forum. If you try to print the value of the other fields on that row, you will get no keep in mind that you must leave the cursor and the rule object at the end of the script when you use the update and it Insert cursor. When you do that the script releases the exclusive lock.

In other words, it means another running script or application is able to access to the same data set and modify it. Let's delete the role that we added recently. So right cursor, arc pi.da dot update cursor, and open parenthesis. Now select the London diversity table. Write a comma and the one element list using the field. Press Enter.

Then write for row in cursor colon and press again. Right if row zero is equal to the string, new borrow column And press enter Now called the Delete row method, that is cursor dot delete row, parenthesis, press Enter twice, then write Dell cursor, comma row and press enter to release the database, you can use the with statement to close and release the database lock search an update cursor also supports that statement. So let's make an example using an update cursor and with the statement in this case, we are going to change the surface area units of each borough. Since the values of surface area in square kilometers, we must multiply them by zero point 386102 to obtain the area in square miles. So right with arc pi.da update cursor. Now select the London diversity table, write a comma, then pop underscore, square kilometers as one element string list.

After that type as cursor finish with a colon and press enter Now right for role in cursor colon and press enter. Since we are going to compare each value of the row and assign the same entry, it is convenient the usage of an in place operation that is row zero Row asterisk equal to 0.386102. So you multiply it by the number and assign it to the same row. Then press enter, right cursor dot update row, open parenthesis, type row. Now move out of the parenthesis and press Enter twice. Remember, you must call the update row method to modify its value.

Now we must change the name of the field since the area is in square miles, so we need to rename the field and the allies in this case, write arc p y dot alternate field and press TAB key select London diversity table, write a comma, the string, pop, underscore, square kilometers and the string pop underscore square miles twice. First it is to rename the field name and the second is to rename the Allies press enter in previous example and less than we have copied, feature layers and tables and also renamed fields. However, in those cases, we didn't worry about validating the name for the workspace. In other words, we didn't find out if the table and fields have unique and valid names. So if you want to do that, you must call the validate neat table name for table name Or validate field name for fields.

You must enter the name that you want to validate in both cases, but the workspace is optional, so you can ignore it. So right arc pi dot validate table name and open parenthesis, write table one, and press enter. The outcome is the same. Now write table one, but use a space in between and press again. In this case, you will notice the function replaces the empty space with an underscore. Then write table underscore one, but add the number.

Sign at the end and press enter. The function replaces a number sign by an underscore try to use the validate fielding using the previous names. Finally, there is an alternative way to check if the table name exists. So right arc pi dot create unique name and open parenthesis, then write London diversity table using underscore in between. In this case, since there is a table called London diversity table, it creates one, adding a zero at the end. If this name also exists, the function will add the number one and so on.

You can use this function for table names and feature classes, but not for field names. That's all for this tutorial. I hope you like and you want to watch more tutorials about Python and just Is

Sign Up


Share with friends, get 20% off
Invite your friends to LearnDesk learning marketplace. For each purchase they make, you get 20% off (upto $10) on your next purchase.