arcgis渔网分割提取栅格图_【操作】ArcGIS中字段的合并、分割、提取
由于種種原因,可能涉及到要對ArcGIS屬性字段進行合并、分割、提取等操作,我們可以在Excel中進行運算,然后連接到ArcGIS中,這里主要介紹下通過屬性表字段計算器的操作方法。
目標
① 合并“名稱”、“代碼”字段內容到新建字段“用地”,中間以“-”字符連接。
② 以“-”為界,拆分“用地”字段分別到新建字段“名稱2”和“代碼2”。
說明
ArcMap的字段計算器提供了兩種腳本語言的支持用以計算,兩種腳本語言是VBScript與Python,這里也分別進行操作一下。
01字段的合并操作
① 添加字段,取名“用地”,類型設置為“文本”。
② 方法一:在“用地”字段上右鍵,選擇“字段計算器”;解析程序選擇“VB腳本”,輸入框輸入:[名稱] & "-" & [代碼],點擊確定。
③ 方法二:在“用地”字段上右鍵,選擇“字段計算器”;解析程序選擇“Python”,輸入框輸入:!名稱! + "-" + !代碼!,點擊確定。
解釋
① 在VBScript中,字符串之間的連接使用“&”運算符;
② 在Python中,字符串之間的連接使用“+”運算符;
③ 在ArcMap的字段計算器里,VBScript語句中字段用[field_Name]的樣式輸入,Python語句中字段用!field_Name!的樣式輸入。
02基于字符順序進行分割提取操作
①添加兩個字段,分別取名“名稱2”和“代碼2”,類型設置為“文本”。
②方法一:在“名稱2”字段上右鍵,選擇“字段計算器”;解析程序選擇“VB腳本”,輸入框輸入:Left( [用地] , 2 ),點擊確定;同理,“代碼2”輸入VB代碼為:Right( [用地] , 4 )。
③方法二:在“用地2”字段上右鍵,選擇“字段計算器”;解析程序選擇“Python”,輸入框輸入:!用地![:2],點擊確定;同理,“代碼2”輸入Python代碼為:!用地![-4:]。
解釋
① 所有符號一定使用英文半角。
② VBScript字符串函數:Left 函數和Right 函數。
Left 函數:返回一個包含自字符串左側起指定數量字符的變量(字符串型)。(獲取字段前n個字符)
Right 函數:返回一個包含自字符串右側起指定數量字符的變量(字符串型)。(獲取字段后n個字符)
③ 在 Python 中,字符串字段中的字符可以通過索引和分割操作進行訪問。索引操作將在索引位置提取字符,而分割操作則會提取一組字符。
在Python 中,通過“[]”操作符獲取字符串中字符,通過“[ : ]”截取字符串中的一部分。例如已知a字段的值為字符串 "Hello",a[1]即為'e',a[1:4]即為'ell'。
03基于特定字符進行提取分割有時候字段的字符串結構并不統一規整,如“林地-03”與“設施農用地-0501”,這時候用以上方法提取字段就行不通了。這里,我們可以利用字符串中共有的特定字符“-”來分割。
操作
① 添加兩個字段,名稱根據情況自取,這里分別取名“名稱2”和“代碼2”,數據類型設置為“文本”。
②方法一:在“名稱2”字段上右鍵,選擇“字段計算器”;解析程序選擇“VB腳本”,輸入框輸入:Left( [用地],InStr( [用地],"-" ) -1),點擊確定;“代碼2”輸入VB代碼為:Mid( [用地],InStr( [用地],"-" )+1 )。
③方法二:在“用地2”字段上右鍵,選擇“字段計算器”;解析程序選擇“Python”,輸入框輸入:!用地![: !用地! .index("-")],點擊確定;同理,“代碼2”輸入Python代碼為:!用地![ !用地! .index("-")+1:]。
解釋
① Mid 函數:返回一個包含字符串中指定數量字符的變量(字符串型)。
MID(text, start_num, num_chars)
start_num:必選,從左起第幾位開始截取。
num_chars:VB語言中可選,如果省略,將指定為從Start參數位置開始向右到字符串結尾的所有字符數。
② InStr 函數:返回指定了一個字符串在另一個字符串中首次出現的位置的變量(長整型)。
③ index( ):在python語言中檢測選擇字符是否包含在指定范圍內,如果是返回該字符開始出現的索引值。
總結
以上是生活随笔為你收集整理的arcgis渔网分割提取栅格图_【操作】ArcGIS中字段的合并、分割、提取的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 西门子荟辰系列开关插座发布:贴合墙面、自
- 下一篇: ds排序--希尔排序_图解直接插入排序和