Campus Safety Data Source Reference
Campus Safety and Security (CSS) — annual Clery Act crime and fire safety reporting for all Title IV postsecondary institutions. Full dataset covers primary offenses, VAWA offenses, hate crimes, arrests/referrals, and fire safety. Portal mirror provides only hate crimes data (2005-2021); primary offenses, VAWA, arrests, and fire safety require direct access to ope.ed.gov/campussafety. Use when analyzing campus hate crimes via Portal or understanding Clery Act reporting structure. Identified by IPEDS unitid.
Guide to understanding and using campus crime and fire safety data collected under the Clery Act.
CRITICAL: Value Encoding
The Education Data Portal mirrors use integer codes for categorical variables, not string labels:
| Variable |
Example Code |
Meaning |
bias |
1 |
Race-based bias |
crime_type |
14 |
Intimidation |
fips |
6 |
California |
See ./references/variable-definitions.md for complete code mappings.
Truth Hierarchy: When interpreting variable values, apply this priority:
- Actual data file (what you observe in the parquet/CSV) -- this IS the truth
- Live codebook (.xls in mirror) -- authoritative documentation, may lag
- This skill documentation -- convenient summary, may drift from codebook
If this documentation contradicts the codebook, trust the codebook. If the codebook contradicts observed data, trust the data and investigate. Use get_codebook_url() from fetch-patterns.md to download codebooks.
What is Campus Safety and Security Data?
The Campus Safety and Security (CSS) data comes from the annual survey required by the Jeanne Clery Disclosure of Campus Security Policy and Campus Crime Statistics Act:
- Federal mandate: All Title IV institutions must report crime and fire statistics annually
- Consumer protection: Designed to inform students, parents, and employees about campus safety
- Primary source: U.S. Department of Education Office of Postsecondary Education
- Coverage: All postsecondary institutions receiving federal financial aid
- Reporting period: Calendar year (January 1 - December 31)
- Available years: 2005-2021 (hate crimes in Portal mirrors)
- Primary identifier:
unitid (IPEDS institution ID, 6-digit integer)
- Official portal: https://ope.ed.gov/campussafety/
- Portal mirror coverage: Hate crimes only. For primary offenses, VAWA, arrests, and fire safety, access the Department of Education portal directly.
Reference File Structure
| File |
Purpose |
When to Read |
clery-act.md |
Legal framework, history, reporting requirements |
Understanding compliance context |
crime-categories.md |
Criminal offenses, definitions, classification rules |
Interpreting crime statistics |
vawa-offenses.md |
Dating violence, domestic violence, stalking |
Analyzing gender-based violence data |
hate-crimes.md |
Bias categories, additional offenses, classification |
Working with hate crime statistics |
campus-geography.md |
On-campus, residence halls, public property, noncampus |
Understanding location categories |
fire-safety.md |
Fire statistics, safety systems, HEOA requirements |
Analyzing residential fire data |
arrests-referrals.md |
Drug, alcohol, weapons violations |
Working with disciplinary data |
variable-definitions.md |
Key variables, data structure, identifiers |
Building queries |
limitations.md |
Underreporting, comparability issues, interpretation |
Critical data analysis |
Decision Trees
What type of crime data do I need?
Crime data type?
├─ Violent crimes (murder, assault, robbery, sex offenses)
│ └─ See ./references/crime-categories.md
├─ Property crimes (burglary, motor vehicle theft, arson)
│ └─ See ./references/crime-categories.md
├─ Sex offenses (rape, fondling, incest, statutory rape)
│ └─ See ./references/crime-categories.md
├─ Dating/domestic violence, stalking
│ └─ See ./references/vawa-offenses.md
├─ Hate crimes (bias-motivated)
│ └─ See ./references/hate-crimes.md
├─ Drug/alcohol/weapons violations
│ └─ See ./references/arrests-referrals.md
└─ Fire incidents in residence halls
└─ See ./references/fire-safety.md
Where did the crime occur?
Understanding crime location?
├─ On-campus (main campus buildings/grounds)
│ └─ See ./references/campus-geography.md
├─ On-campus student housing (subset of on-campus)
│ └─ See ./references/campus-geography.md
├─ Public property (streets, sidewalks adjacent to campus)
│ └─ See ./references/campus-geography.md
├─ Noncampus (off-site but institution-controlled)
│ └─ See ./references/campus-geography.md
└─ Not sure which category
└─ See ./references/campus-geography.md (definitions section)
Can I compare schools?
Planning institutional comparisons?
├─ Want to rank schools by safety
│ └─ See ./references/limitations.md (CRITICAL: comparability issues)
├─ Comparing similar institution types
│ └─ See ./references/limitations.md (controlling for factors)
├─ Analyzing trends over time
│ └─ See ./references/limitations.md (reporting changes)
└─ Understanding what statistics mean
└─ See ./references/limitations.md (interpretation guidance)
Quick Reference: Crime Categories
Crime Type Codes (Portal Integer Encoding)
| Code |
Crime Type |
Category |
1 |
Murder/Non-negligent Manslaughter |
Primary Offense |
2 |
Manslaughter by Negligence |
Primary Offense |
3 |
Rape |
Sex Offense |
4 |
Fondling |
Sex Offense |
5 |
Incest |
Sex Offense |
6 |
Statutory Rape |
Sex Offense |
7 |
Robbery |
Primary Offense |
8 |
Aggravated Assault |
Primary Offense |
9 |
Burglary |
Property Crime |
10 |
Motor Vehicle Theft |
Property Crime |
11 |
Arson |
Property Crime |
12 |
Larceny-Theft |
Hate Crime Only |
13 |
Simple Assault |
Hate Crime Only |
14 |
Intimidation |
Hate Crime Only |
15 |
Destruction/Damage/Vandalism |
Hate Crime Only |
16 |
Domestic Violence |
VAWA (2014+) |
17 |
Dating Violence |
VAWA (2014+) |
18 |
Stalking |
VAWA (2014+) |
Note: Crime type code 99 (Total) is documented in some references but does NOT appear in the actual Portal mirror data. The data contains individual crime types 1-18 only.
Bias Category Codes (Portal Integer Encoding)
| Code |
Bias Category |
Notes |
1 |
Race |
Most common category |
2 |
Religion |
Anti-Jewish, Anti-Islamic, etc. |
3 |
Sexual Orientation |
Anti-Gay, Anti-Lesbian, etc. |
4 |
Gender |
Based on perceived gender |
5 |
Gender Identity |
Added 2014 |
6 |
Ethnicity |
Separated from National Origin in 2014 |
7 |
National Origin |
Based on country of birth |
8 |
Disability |
Physical or mental |
9 |
Unknown/Other |
|
99 |
Total |
All bias categories combined |
VAWA Offenses (Added 2013)
| Code |
Offense |
Definition |
16 |
Domestic Violence |
Violence by current/former spouse, cohabitant, or similar |
17 |
Dating Violence |
Violence by person in romantic/intimate relationship |
18 |
Stalking |
Course of conduct causing fear for safety |
Hate Crime-Only Offenses
Codes 12-15 are only reported as hate crimes. They are not standalone Clery crimes unless bias-motivated.
Arrests and Disciplinary Referrals
| Category |
What's Counted |
| Liquor Law Violations |
Arrests + Disciplinary referrals |
| Drug Law Violations |
Arrests + Disciplinary referrals |
| Weapons Violations |
Arrests + Disciplinary referrals |
Key Identifiers (Hate Crimes Dataset)
| ID |
Format |
Level |
Example |
Notes |
unitid |
6-digit integer |
Institution |
100654 |
IPEDS institution ID |
opeid |
8-character String |
Institution |
00100200 |
OPE institution ID (126 nulls in data) |
inst_name |
String |
Institution |
University of Alabama |
Institution name |
fips |
Integer |
State |
6 |
State FIPS code |
Note: The hate crimes dataset uses inst_name (not instnm). Columns like branch, address, city, zip, state, sector, enrollment are NOT present in the Portal mirror data. Join with IPEDS directory on unitid to obtain institutional characteristics.
Geographic Categories
| Location |
Definition |
Reported Separately? |
| On-Campus |
Buildings/property owned/controlled by institution, reasonably contiguous |
Yes |
| On-Campus Student Housing |
Residence halls (subset of on-campus) |
Yes (as subset) |
| Noncampus |
Institution-owned/controlled property not contiguous; student org properties |
Yes |
| Public Property |
Streets, sidewalks, parking within or immediately adjacent to campus |
Yes |
Fire Safety Data
Fire data is reported only for on-campus student housing facilities:
| Data Element |
Description |
| Number of fires |
Total fires per building per year |
| Cause of fire |
Intentional, unintentional, undetermined |
| Injuries |
Fire-related injuries requiring treatment |
| Deaths |
Fire-related fatalities |
| Property damage |
Estimated dollar value |
| Fire safety systems |
Sprinklers, alarms, smoke detectors, etc. |
Missing Data Codes
| Code |
Meaning |
When Used |
null |
Missing/not reported |
Data not submitted or not applicable (e.g., 352k null values in bias column) |
0 |
Zero incidents |
Explicitly reported as zero (distinct from missing) |
Empirically verified: The hate crimes dataset in the Portal mirror does NOT use -1, -2, or -3 coded values. All missing data appears as null. This differs from some other Portal datasets (e.g., CCD) that use negative integer codes. Always verify against the actual data.
Data Access
Datasets for Campus Safety are available via the mirror system. See datasets-reference.md for canonical paths, mirrors.yaml for mirror configuration, and fetch-patterns.md for fetch code patterns.
| Dataset |
Type |
Years |
Path |
Codebook |
| Hate Crimes |
Single |
2005-2021 |
csafety/colleges_csafety_hate_crimes |
csafety/codebook_colleges_csafety_hate_crimes |
CRITICAL: Limited Data in Portal Mirrors -- Only hate crimes data is available in the Portal mirrors (1 dataset). For other campus safety data (primary offenses, VAWA, arrests/referrals, fire safety), access the Department of Education directly at https://ope.ed.gov/campussafety/. Consult datasets-reference.md for the authoritative list of available mirror datasets.
Codebooks are .xls files co-located with data in all mirrors. Use get_codebook_url() from fetch-patterns.md to construct download URLs:
url = get_codebook_url("csafety/codebook_colleges_csafety_hate_crimes")
Fetching Data
Use the fetch_from_mirrors() pattern from fetch-patterns.md:
import polars as pl
# Fetch hate crimes data (all years, single-file dataset)
df = fetch_from_mirrors("csafety/colleges_csafety_hate_crimes")
# Filter by year
df_2021 = df.filter(pl.col("year") == 2021)
# Filter by bias category (1 = Race)
race_crimes = df.filter(pl.col("bias") == 1)
# Filter by crime type (14 = Intimidation)
intimidation = df.filter(pl.col("crime_type") == 14)
# Filter by institution
institution = df.filter(pl.col("unitid") == 100654)
# Filter by state FIPS code (6 = California)
california = df.filter(pl.col("fips") == 6)
Direct from Department of Education (Non-Mirror Data)
For data NOT available in Portal mirrors (primary offenses, VAWA, arrests, fire safety):
Common Pitfalls
| Pitfall |
Issue |
Solution |
| Using string codes |
Portal uses integer codes for bias, crime_type, etc. |
Always map integers via ./references/variable-definitions.md |
| Ranking schools by crime counts |
Higher numbers may indicate better reporting, not worse safety |
Normalize by enrollment; note reporting culture differences in ./references/limitations.md |
| Comparing across years naively |
Crime definitions changed over time (especially sex offenses in 2014, VAWA added 2013) |
Restrict comparisons to consistent-definition periods; document breaks |
| Treating zero as missing |
Zero means explicitly reported zero incidents; missing means not reported |
Check for null (missing) vs 0 (zero incidents) before analysis |
| Comparing CSS to FBI UCR data |
Different definitions, scope, and reporting requirements |
Never equate CSS and FBI statistics; see ./references/limitations.md |
| Assuming all crime data in mirror |
Mirror only has hate crimes |
Use Department of Education portal for primary offenses, VAWA, arrests, fire safety |
Using instnm as column name |
Hate crimes data uses inst_name, not instnm (which is the IPEDS convention) |
Check actual column names with df.columns |
Expecting -1/-2 missing codes |
Hate crimes data uses null for missing, not negative integer codes |
Check for nulls with pl.col("bias").is_null(), not pl.col("bias") == -1 |
| Ignoring multi-campus institutions |
Branch campuses report separately; aggregating incorrectly inflates/deflates |
Use branch field to distinguish campuses; see ./references/campus-geography.md |
| Ignoring underreporting |
Many crimes go unreported; CSS captures only reported incidents |
Acknowledge underreporting as a limitation in all analyses |
Reporting Timeline
| Date |
Action |
| Calendar year |
Data collection period |
| October 1 |
Annual Security Report (ASR) due |
| October 15 |
CSS survey submission deadline |
| Following spring |
Data available publicly |
Related Data Sources
| Source |
Relationship |
When to Use |
education-data-source-ipeds |
Institutional characteristics |
Joining with IPEDS directory for enrollment, sector, control |
education-data-explorer |
Parent discovery skill |
Finding available endpoints |
education-data-query |
Data fetching |
Downloading parquet/CSV files |
Topic Index
| Topic |
Reference File |
| Clery Act history and requirements |
./references/clery-act.md |
| Criminal offense definitions |
./references/crime-categories.md |
| Sex offense classification |
./references/crime-categories.md |
| VAWA amendments |
./references/vawa-offenses.md |
| Dating violence definition |
./references/vawa-offenses.md |
| Domestic violence definition |
./references/vawa-offenses.md |
| Stalking definition |
./references/vawa-offenses.md |
| Hate crime bias categories |
./references/hate-crimes.md |
| Hate crime offenses |
./references/hate-crimes.md |
| On-campus definition |
./references/campus-geography.md |
| Residence hall reporting |
./references/campus-geography.md |
| Public property definition |
./references/campus-geography.md |
| Noncampus property |
./references/campus-geography.md |
| Fire statistics |
./references/fire-safety.md |
| Fire safety systems |
./references/fire-safety.md |
| Arrests vs referrals |
./references/arrests-referrals.md |
| Drug/alcohol violations |
./references/arrests-referrals.md |
| Weapons violations |
./references/arrests-referrals.md |
| Variable names and codes |
./references/variable-definitions.md |
| Underreporting issues |
./references/limitations.md |
| Institutional comparisons |
./references/limitations.md |
| Trend analysis caveats |
./references/limitations.md |
| Data interpretation |
./references/limitations.md |
1---2name: education-data-source-campus-safety3description: CSS — annual Clery Act crime/fire safety for Title IV institutions. Portal: hate crimes only (2005-2021); primary offenses, VAWA, arrests, fire safety need ope.ed.gov directly. Use for campus crime analysis. Identified by IPEDS unitid.4---5
6# Campus Safety Data Source Reference
7
8Campus Safety and Security (CSS) — annual Clery Act crime and fire safety reporting for all Title IV postsecondary institutions. Full dataset covers primary offenses, VAWA offenses, hate crimes, arrests/referrals, and fire safety. Portal mirror provides only hate crimes data (2005-2021); primary offenses, VAWA, arrests, and fire safety require direct access to ope.ed.gov/campussafety. Use when analyzing campus hate crimes via Portal or understanding Clery Act reporting structure. Identified by IPEDS unitid.
9
10Guide to understanding and using campus crime and fire safety data collected under the Clery Act.
11
12> **CRITICAL: Value Encoding**
13>
14> The Education Data Portal mirrors use **integer codes** for categorical variables, not string labels:
15>
16> | Variable | Example Code | Meaning |
17> |----------|--------------|---------|
18> | `bias` | `1` | Race-based bias |
19> | `crime_type` | `14` | Intimidation |
20> | `fips` | `6` | California |
21>
22> See `./references/variable-definitions.md` for complete code mappings.
23
24> **Truth Hierarchy:** When interpreting variable values, apply this priority:
25> 1. **Actual data file** (what you observe in the parquet/CSV) -- this IS the truth
26> 2. **Live codebook** (.xls in mirror) -- authoritative documentation, may lag
27> 3. **This skill documentation** -- convenient summary, may drift from codebook
28>
29> If this documentation contradicts the codebook, trust the codebook. If the codebook contradicts observed data, trust the data and investigate. Use `get_codebook_url()` from `fetch-patterns.md` to download codebooks.
30
31## What is Campus Safety and Security Data?
32
33The Campus Safety and Security (CSS) data comes from the annual survey required by the Jeanne Clery Disclosure of Campus Security Policy and Campus Crime Statistics Act:
34
35- **Federal mandate**: All Title IV institutions must report crime and fire statistics annually
36- **Consumer protection**: Designed to inform students, parents, and employees about campus safety
37- **Primary source**: U.S. Department of Education Office of Postsecondary Education
38- **Coverage**: All postsecondary institutions receiving federal financial aid
39- **Reporting period**: Calendar year (January 1 - December 31)
40- **Available years**: 2005-2021 (hate crimes in Portal mirrors)
41- **Primary identifier**: `unitid` (IPEDS institution ID, 6-digit integer)
42- **Official portal**: https://ope.ed.gov/campussafety/
43- **Portal mirror coverage**: Hate crimes only. For primary offenses, VAWA, arrests, and fire safety, access the Department of Education portal directly.
44
45## Reference File Structure
46
47| File | Purpose | When to Read |
48|------|---------|--------------|
49| `clery-act.md` | Legal framework, history, reporting requirements | Understanding compliance context |
50| `crime-categories.md` | Criminal offenses, definitions, classification rules | Interpreting crime statistics |
51| `vawa-offenses.md` | Dating violence, domestic violence, stalking | Analyzing gender-based violence data |
52| `hate-crimes.md` | Bias categories, additional offenses, classification | Working with hate crime statistics |
53| `campus-geography.md` | On-campus, residence halls, public property, noncampus | Understanding location categories |
54| `fire-safety.md` | Fire statistics, safety systems, HEOA requirements | Analyzing residential fire data |
55| `arrests-referrals.md` | Drug, alcohol, weapons violations | Working with disciplinary data |
56| `variable-definitions.md` | Key variables, data structure, identifiers | Building queries |
57| `limitations.md` | Underreporting, comparability issues, interpretation | Critical data analysis |
58
59## Decision Trees
60
61### What type of crime data do I need?
62
63```
64Crime data type?
65├─ Violent crimes (murder, assault, robbery, sex offenses)
66│ └─ See ./references/crime-categories.md
67├─ Property crimes (burglary, motor vehicle theft, arson)
68│ └─ See ./references/crime-categories.md
69├─ Sex offenses (rape, fondling, incest, statutory rape)
70│ └─ See ./references/crime-categories.md
71├─ Dating/domestic violence, stalking
72│ └─ See ./references/vawa-offenses.md
73├─ Hate crimes (bias-motivated)
74│ └─ See ./references/hate-crimes.md
75├─ Drug/alcohol/weapons violations
76│ └─ See ./references/arrests-referrals.md
77└─ Fire incidents in residence halls
78 └─ See ./references/fire-safety.md
79```
80
81### Where did the crime occur?
82
83```
84Understanding crime location?
85├─ On-campus (main campus buildings/grounds)
86│ └─ See ./references/campus-geography.md
87├─ On-campus student housing (subset of on-campus)
88│ └─ See ./references/campus-geography.md
89├─ Public property (streets, sidewalks adjacent to campus)
90│ └─ See ./references/campus-geography.md
91├─ Noncampus (off-site but institution-controlled)
92│ └─ See ./references/campus-geography.md
93└─ Not sure which category
94 └─ See ./references/campus-geography.md (definitions section)
95```
96
97### Can I compare schools?
98
99```
100Planning institutional comparisons?
101├─ Want to rank schools by safety
102│ └─ See ./references/limitations.md (CRITICAL: comparability issues)
103├─ Comparing similar institution types
104│ └─ See ./references/limitations.md (controlling for factors)
105├─ Analyzing trends over time
106│ └─ See ./references/limitations.md (reporting changes)
107└─ Understanding what statistics mean
108 └─ See ./references/limitations.md (interpretation guidance)
109```
110
111## Quick Reference: Crime Categories
112
113### Crime Type Codes (Portal Integer Encoding)
114
115| Code | Crime Type | Category |
116|------|------------|----------|
117| `1` | Murder/Non-negligent Manslaughter | Primary Offense |
118| `2` | Manslaughter by Negligence | Primary Offense |
119| `3` | Rape | Sex Offense |
120| `4` | Fondling | Sex Offense |
121| `5` | Incest | Sex Offense |
122| `6` | Statutory Rape | Sex Offense |
123| `7` | Robbery | Primary Offense |
124| `8` | Aggravated Assault | Primary Offense |
125| `9` | Burglary | Property Crime |
126| `10` | Motor Vehicle Theft | Property Crime |
127| `11` | Arson | Property Crime |
128| `12` | Larceny-Theft | Hate Crime Only |
129| `13` | Simple Assault | Hate Crime Only |
130| `14` | Intimidation | Hate Crime Only |
131| `15` | Destruction/Damage/Vandalism | Hate Crime Only |
132| `16` | Domestic Violence | VAWA (2014+) |
133| `17` | Dating Violence | VAWA (2014+) |
134| `18` | Stalking | VAWA (2014+) |
135
136> **Note:** Crime type code `99` (Total) is documented in some references but does NOT appear in the actual Portal mirror data. The data contains individual crime types 1-18 only.
137
138### Bias Category Codes (Portal Integer Encoding)
139
140| Code | Bias Category | Notes |
141|------|---------------|-------|
142| `1` | Race | Most common category |
143| `2` | Religion | Anti-Jewish, Anti-Islamic, etc. |
144| `3` | Sexual Orientation | Anti-Gay, Anti-Lesbian, etc. |
145| `4` | Gender | Based on perceived gender |
146| `5` | Gender Identity | Added 2014 |
147| `6` | Ethnicity | Separated from National Origin in 2014 |
148| `7` | National Origin | Based on country of birth |
149| `8` | Disability | Physical or mental |
150| `9` | Unknown/Other | |
151| `99` | Total | All bias categories combined |
152
153### VAWA Offenses (Added 2013)
154
155| Code | Offense | Definition |
156|------|---------|------------|
157| `16` | Domestic Violence | Violence by current/former spouse, cohabitant, or similar |
158| `17` | Dating Violence | Violence by person in romantic/intimate relationship |
159| `18` | Stalking | Course of conduct causing fear for safety |
160
161### Hate Crime-Only Offenses
162
163Codes 12-15 are only reported as hate crimes. They are not standalone Clery crimes unless bias-motivated.
164
165### Arrests and Disciplinary Referrals
166
167| Category | What's Counted |
168|----------|----------------|
169| Liquor Law Violations | Arrests + Disciplinary referrals |
170| Drug Law Violations | Arrests + Disciplinary referrals |
171| Weapons Violations | Arrests + Disciplinary referrals |
172
173### Key Identifiers (Hate Crimes Dataset)
174
175| ID | Format | Level | Example | Notes |
176|----|--------|-------|---------|-------|
177| `unitid` | 6-digit integer | Institution | `100654` | IPEDS institution ID |
178| `opeid` | 8-character String | Institution | `00100200` | OPE institution ID (126 nulls in data) |
179| `inst_name` | String | Institution | `University of Alabama` | Institution name |
180| `fips` | Integer | State | `6` | State FIPS code |
181
182> **Note:** The hate crimes dataset uses `inst_name` (not `instnm`). Columns like `branch`, `address`, `city`, `zip`, `state`, `sector`, `enrollment` are NOT present in the Portal mirror data. Join with IPEDS directory on `unitid` to obtain institutional characteristics.
183
184### Geographic Categories
185
186| Location | Definition | Reported Separately? |
187|----------|------------|---------------------|
188| On-Campus | Buildings/property owned/controlled by institution, reasonably contiguous | Yes |
189| On-Campus Student Housing | Residence halls (subset of on-campus) | Yes (as subset) |
190| Noncampus | Institution-owned/controlled property not contiguous; student org properties | Yes |
191| Public Property | Streets, sidewalks, parking within or immediately adjacent to campus | Yes |
192
193### Fire Safety Data
194
195Fire data is reported only for **on-campus student housing facilities**:
196
197| Data Element | Description |
198|--------------|-------------|
199| Number of fires | Total fires per building per year |
200| Cause of fire | Intentional, unintentional, undetermined |
201| Injuries | Fire-related injuries requiring treatment |
202| Deaths | Fire-related fatalities |
203| Property damage | Estimated dollar value |
204| Fire safety systems | Sprinklers, alarms, smoke detectors, etc. |
205
206### Missing Data Codes
207
208| Code | Meaning | When Used |
209|------|---------|-----------|
210| `null` | Missing/not reported | Data not submitted or not applicable (e.g., 352k null values in `bias` column) |
211| `0` | Zero incidents | Explicitly reported as zero (distinct from missing) |
212
213> **Empirically verified:** The hate crimes dataset in the Portal mirror does NOT use `-1`, `-2`, or `-3` coded values. All missing data appears as `null`. This differs from some other Portal datasets (e.g., CCD) that use negative integer codes. Always verify against the actual data.
214
215## Data Access
216
217Datasets for Campus Safety are available via the mirror system. See `datasets-reference.md` for canonical paths, `mirrors.yaml` for mirror configuration, and `fetch-patterns.md` for fetch code patterns.
218
219| Dataset | Type | Years | Path | Codebook |
220|---------|------|-------|------|----------|
221| Hate Crimes | Single | 2005-2021 | `csafety/colleges_csafety_hate_crimes` | `csafety/codebook_colleges_csafety_hate_crimes` |
222
223> **CRITICAL: Limited Data in Portal Mirrors** -- Only hate crimes data is available in the Portal mirrors (1 dataset). For other campus safety data (primary offenses, VAWA, arrests/referrals, fire safety), access the Department of Education directly at https://ope.ed.gov/campussafety/. Consult `datasets-reference.md` for the authoritative list of available mirror datasets.
224
225Codebooks are `.xls` files co-located with data in all mirrors. Use `get_codebook_url()` from `fetch-patterns.md` to construct download URLs:
226
227```python
228url = get_codebook_url("csafety/codebook_colleges_csafety_hate_crimes")
229```
230
231### Fetching Data
232
233Use the `fetch_from_mirrors()` pattern from `fetch-patterns.md`:
234
235```python
236import polars as pl
237
238# Fetch hate crimes data (all years, single-file dataset)
239df = fetch_from_mirrors("csafety/colleges_csafety_hate_crimes")
240
241# Filter by year
242df_2021 = df.filter(pl.col("year") == 2021)
243
244# Filter by bias category (1 = Race)
245race_crimes = df.filter(pl.col("bias") == 1)
246
247# Filter by crime type (14 = Intimidation)
248intimidation = df.filter(pl.col("crime_type") == 14)
249
250# Filter by institution
251institution = df.filter(pl.col("unitid") == 100654)
252
253# Filter by state FIPS code (6 = California)
254california = df.filter(pl.col("fips") == 6)
255```
256
257### Direct from Department of Education (Non-Mirror Data)
258
259For data NOT available in Portal mirrors (primary offenses, VAWA, arrests, fire safety):
260
261- **Web tool**: https://ope.ed.gov/campussafety/
262- **Bulk download**: Available through Campus Safety website
263- **Custom reports**: Generate by institution, state, or sector
264
265## Common Pitfalls
266
267| Pitfall | Issue | Solution |
268|---------|-------|----------|
269| Using string codes | Portal uses integer codes for `bias`, `crime_type`, etc. | Always map integers via `./references/variable-definitions.md` |
270| Ranking schools by crime counts | Higher numbers may indicate better reporting, not worse safety | Normalize by enrollment; note reporting culture differences in `./references/limitations.md` |
271| Comparing across years naively | Crime definitions changed over time (especially sex offenses in 2014, VAWA added 2013) | Restrict comparisons to consistent-definition periods; document breaks |
272| Treating zero as missing | Zero means explicitly reported zero incidents; missing means not reported | Check for `null` (missing) vs `0` (zero incidents) before analysis |
273| Comparing CSS to FBI UCR data | Different definitions, scope, and reporting requirements | Never equate CSS and FBI statistics; see `./references/limitations.md` |
274| Assuming all crime data in mirror | Mirror only has hate crimes | Use Department of Education portal for primary offenses, VAWA, arrests, fire safety |
275| Using `instnm` as column name | Hate crimes data uses `inst_name`, not `instnm` (which is the IPEDS convention) | Check actual column names with `df.columns` |
276| Expecting `-1`/`-2` missing codes | Hate crimes data uses `null` for missing, not negative integer codes | Check for nulls with `pl.col("bias").is_null()`, not `pl.col("bias") == -1` |
277| Ignoring multi-campus institutions | Branch campuses report separately; aggregating incorrectly inflates/deflates | Use `branch` field to distinguish campuses; see `./references/campus-geography.md` |
278| Ignoring underreporting | Many crimes go unreported; CSS captures only reported incidents | Acknowledge underreporting as a limitation in all analyses |
279
280## Reporting Timeline
281
282| Date | Action |
283|------|--------|
284| Calendar year | Data collection period |
285| October 1 | Annual Security Report (ASR) due |
286| October 15 | CSS survey submission deadline |
287| Following spring | Data available publicly |
288
289## Related Data Sources
290
291| Source | Relationship | When to Use |
292|--------|--------------|-------------|
293| `education-data-source-ipeds` | Institutional characteristics | Joining with IPEDS directory for enrollment, sector, control |
294| `education-data-explorer` | Parent discovery skill | Finding available endpoints |
295| `education-data-query` | Data fetching | Downloading parquet/CSV files |
296
297## Topic Index
298
299| Topic | Reference File |
300|-------|---------------|
301| Clery Act history and requirements | `./references/clery-act.md` |
302| Criminal offense definitions | `./references/crime-categories.md` |
303| Sex offense classification | `./references/crime-categories.md` |
304| VAWA amendments | `./references/vawa-offenses.md` |
305| Dating violence definition | `./references/vawa-offenses.md` |
306| Domestic violence definition | `./references/vawa-offenses.md` |
307| Stalking definition | `./references/vawa-offenses.md` |
308| Hate crime bias categories | `./references/hate-crimes.md` |
309| Hate crime offenses | `./references/hate-crimes.md` |
310| On-campus definition | `./references/campus-geography.md` |
311| Residence hall reporting | `./references/campus-geography.md` |
312| Public property definition | `./references/campus-geography.md` |
313| Noncampus property | `./references/campus-geography.md` |
314| Fire statistics | `./references/fire-safety.md` |
315| Fire safety systems | `./references/fire-safety.md` |
316| Arrests vs referrals | `./references/arrests-referrals.md` |
317| Drug/alcohol violations | `./references/arrests-referrals.md` |
318| Weapons violations | `./references/arrests-referrals.md` |
319| Variable names and codes | `./references/variable-definitions.md` |
320| Underreporting issues | `./references/limitations.md` |
321| Institutional comparisons | `./references/limitations.md` |
322| Trend analysis caveats | `./references/limitations.md` |
323| Data interpretation | `./references/limitations.md` |