# Geographic Information System/Attributes

Attributes are non-spatial characteristics that describe spatial entities. Attrubutes are commonly arranged in tables where a row is equivalent to one entity and a column is equivalent to one attribute, or descriptor of that entity.
(picture of data table)
Typically, each row relates to a single object in a spatial data model. It is also typical for each object to have multiple attributes that describe the object. All attributes are often displayed in a table format. Attributes can be stored on a computer using a flat file format or in a database management system.
For example, consider that we have a spatial data model that stores the location of fire hydrants. In order for each object to represent a fire hydrant, we would need to store their positions. In addition to positional information, we would also store attributes that would describe those fire hydrants.
(Image of fire hydrant)
In this example, we are storing color, service date, and flow as three attributes that describe this particular fire hydrant at this particular position on Earth. The position, color, service date, and flow will be stored as one row in an attribute table that will contain four columns because there are four descriptors for this fire hydrant.

## Computer representations

Computers fundamentally "think" differently than humans. While humans see numbers, letters, pictures, and sounds, a computer only sees zeros and ones, which is known as binary data. Therefore, we need a way to translate the numbers, sounds, and videos, as humans know it, to a form in which a computer can understand and store the information.
Computer scientists have created data structures that can be used to translate our information into a format which a computer can store in its memory. This data structure is known as a data type.
There are four typical data types that we use in GIS:
* integer
* float/real
* text/string,
* date
In order to use the computer's memory most efficiently, it is important that we specify which data type we are going to use to store information in the computer's memory. It is important to let the computer know which operations are allowed for each data point stored in that memory location using a specific data type.

## Key Facts

Attribute Data Types
* Attributes are stored in computer memory
* The data type of the attribute needs to be specified for efficient use of memory and determination of operation applicability.
There are four typical data types:
* Integer
* Float/Real
* Text/String
* Date

## Attribute tables in ArcMap

Attribute tables in ArcMap are made up of rows and columns. Rows are known as records, and columns are known as fields. Each column (field) stores specific information about the layer. To view a layer's attribute table, right lick the desired layer in the "Table of Contents", and select "Open Attribute Table".
An attribute table's menu bar consist of a "Table Options" drop down button, "Related Tables" drop down button, "Select by Attributes" button, "Switch Selection" button, "Clear Selection" button, "Zoom" button, and lastly a "Delete Field" button.
Current fields cannot be altered. However, by adding a new field, modified data can be added. Different filed data types can include short number, long numbers, text, and dates. To add a new field, click on the "Table Options" and select "Add Field". Select a proper name for the field, keeping in mind that field names cannot contain spaces or special characters. Also, select an appropriate type.
The short and long integer type is used for storing exact integers (no fractions). The float and double type is used for storing fractional numeric data. (The main difference between the numeric storage is the storable range and the byte size. It's always best to used the minimum storage required.) The text type can store letters and numbers, such as an address. Calculations cannot be performed on numbers stored in a text field. The date type stores dates and/or times. The BLOB type stores items such as images or binary numbers for coding. Refer here for more details pertaining to field types.
Now that the new field is created, it can be populated with appropriate data. Additionally, further analysis can be performed on the field. For example, by right clicking on the field one can perform calculations on numerical data, or sort and search for text data.
These are some basic steps to become more skilled with attribute tables in ArcMap. However, more in-depth information can be found here or a video lesson here.