Skip to content

5. Attribute Tables

Goal: Be fluent with ArcGIS Pro's attribute table — adding fields, calculating values, sorting, and statistics.

→ For concepts, see Attribute Tables (roadmap).


Open the table

Right-click a layer → Attribute Table, or press Ctrl+T (with the layer selected).

Anatomy

┌──────────────────────────────────────────────┐
│  Toolbar  [+ Add field] [Calculate] [Show…]  │
├──────────────────────────────────────────────┤
│ ObjectID | Name      | Pop     | Geometry    │
├──────────┼───────────┼─────────┼─────────────┤
│ 1        | Atlanta   | 498715  | Polygon     │
│ 2        | Athens    | 127315  | Polygon     │
└──────────────────────────────────────────────┘
       Status bar: 2 of 159 selected | Total: 159 features

Add a field

  1. Open the table.
  2. Click Add Field (or Fields View for batch editing).
  3. In Fields View, set:
    • Name (no spaces, ≤64 chars)
    • Alias (display name, can have spaces)
    • Type (Long, Double, Text, Date)
    • Length (Text only)
    • Allow Null
  4. Save (top of Fields ribbon).

Always set an alias

MEDIAN_INC_2020 is the field name. "Median income (2020)" is what shows in the table header and legend.

Calculate field values

Right-click a column header → Calculate Field.

# Population density per square km
!POPULATION! / !AREA_KM2!
!FIRST! + " " + !LAST!

Code Block:

def classify(pop):
    if pop > 100000:
        return "Large"
    elif pop > 10000:
        return "Medium"
    else:
        return "Small"
Expression: classify(!POP!)

For dedicated geometry calcs, use Calculate Geometry Attributes tool. Don't put shape.area in Calculate Field — it's not portable.

Sort

Click any column header → toggles ascending/descending. Hold Ctrl and click a second header for multi-column sort.

Statistics

Right-click a numeric column → Statistics. You get count, sum, mean, min, max, std dev. Use this constantly to sanity-check data.

Find & replace

Ctrl+F in the table opens Find & Replace. Useful for cleaning typos.

Show selected / All

Bottom of the table:

Button Effect
All Show every row
Selected Show only the rows currently selected on the map / by SQL

Field types refresher

Type When
Short / Long Integer Counts, IDs, small whole numbers
Float / Double Decimals, coordinates, real measures
Text ZIPs, names, codes (any leading-zero ID)
Date Dates and times

→ Detail in the roadmap entry.

Editing rows

To change values directly: ribbon Edit → Modify mode → click a cell → type → EnterSave (Edit ribbon).

Editing without thinking

Edits commit on Save. Undo only works for the current session. Make a backup before bulk edits.


Practice

Add a derived field

  1. Open a counties layer's table.
  2. Add a field INCOME_BIN, type Text, length 10.
  3. Calculate it conditionally:
    def bin_income(x):
        if x < 40000: return "Low"
        elif x < 80000: return "Mid"
        else: return "High"
    
    Expression: bin_income(!MEDIAN_INC!)
  4. Symbolize the layer by INCOME_BIN.

→ Next: Select by Attributes.