一、ArcGIS添加欄位名過長
在ArcGIS中,添加欄位名稱不可以超過10個字元。如果添加的欄位名稱過長,可以在欄位名稱中使用下劃線代替空格或縮寫欄位名稱,以確保名稱的唯一性。
# 代碼示例
# 添加名為「area_of_usa」的欄位
arcpy.AddField_management("usa_cities", "area_of_usa", "DOUBLE")
二、ArcGIS添加欄位名稱無效
如果您添加的欄位名稱無效,比如只有數字或者不符合命名規則,ArcGIS會提示您「無效欄位名」。此時您需要重新命名您的欄位名稱。
# 代碼示例
# 添加名為「city_2」(無效名稱)的欄位
arcpy.AddField_management("usa_cities", "city_2", "TEXT")
三、ArcGIS添加欄位失敗
如果您遇到添加欄位失敗的情況,可以檢查一下以下問題:
1、是否有足夠的許可權進行欄位添加操作;
2、數據源是否已被加鎖或處於編輯狀態;
3、添加的欄位名稱是否與現有欄位重複。
# 代碼示例
# 添加名為「population」的數值類型的欄位
arcpy.AddField_management("usa_cities", "population", "LONG")
四、ArcGIS添加欄位別名
在ArcGIS中,欄位別名可以讓您更好地理解欄位的含義。您可以添加和編輯欄位別名,以便更好地使用數據。
# 代碼示例
# 為「population」欄位添加別名
arcpy.AlterField_management("usa_cities", "population", new_alias="人口數量")
五、ArcGIS添加欄位英文界面
ArcGIS支持英文和其他語言的用戶界面。您可以根據需要切換顯示語言。
1、在ArcGIS的「選項」菜單下選擇「語言」,然後選擇您需要的語言;
2、重新啟動ArcGIS,即可看到更改後的用戶界面語言。
六、ArcGIS添加欄位類型
ArcGIS支持多種欄位類型,包括文本、數值、時間、幾何形狀等。您可以根據您的需求選擇不同的欄位類型。
# 代碼示例
# 添加名為「geometry」的幾何形狀類型的欄位
arcpy.AddField_management("usa_cities", "geometry", "GEOMETRY")
七、ArcGIS添加欄位但不顯示
如果您添加了新欄位但是不想顯示在屬性表中,可以將其添加為「隱含欄位」。
# 代碼示例
# 將「area」欄位添加為隱含欄位
arcpy.AddField_management("usa_cities", "area", "DOUBLE", field_is_nullable=True, is_nullable=True, is_hidden=True)
八、ArcGIS添加欄位類型怎麼選
在添加欄位之前,您需要考慮您的數據的類型和現有數據中已有的欄位類型。在選擇欄位類型時,您應該選擇與現有欄位類型相匹配的類型,以確保數據之間的兼容性。
本節沒有對應的代碼示例。
九、ArcGIS添加欄位並賦值
您可以使用ArcPy將欄位添加到現有的要素類或表格中,並向其填充值。
# 代碼示例
# 添加名為「income」欄位並填充其值
arcpy.AddField_management("usa_cities", "income", "DOUBLE")
with arcpy.da.UpdateCursor("usa_cities", ["income", "population"]) as cursor:
for row in cursor:
if row[1] < 100000:
row[0] = 10000
elif 100000 <= row[1] < 500000:
row[0] = 20000
else:
row[0] = 30000
cursor.updateRow(row)
十、ArcGIS添加欄位中的列選取
如果要添加的欄位包含多列數據,您可以通過編寫代碼或使用工具來選擇要添加的列。
# 代碼示例
# 在"usa_cities"表格中選擇要添加的列
fields = ["name", "population", "income"]
with arcpy.da.UpdateCursor("usa_cities", fields) as cursor:
for row in cursor:
name, population, income = row
# do something with the values here
cursor.updateRow([name, population, income])
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/184335.html
微信掃一掃
支付寶掃一掃