Skip to content

RTGS-Lab/ag_preserve_analysis

Repository files navigation

Agricultural Preservation Program Analysis

This repository contains code and data processing scripts for analyzing the impacts of agricultural preservation programs across selected cities in Hennepin County. The analysis focuses on evaluating program enrollment and property tax/value outcomes using assessor data and program participation records. The workflow is structured to ensure clean, replicable data pipelines and reproducible research outputs.

Data Sources

•	All data sources can be found on the shared drive in Google under 202501_003_Easements_Hockert --> Data.
•	Annual Assessor Data (2005–2022): Parcel-level property and tax assessment data (Conservation Easment Data V4 Main All Years.txt)
•	Ken’s Linked Text Files: Program enrollment, city LNTC tax rates, and parcel sales (Conservation Easment Data V3 Program Linkage.txt,Conservation Easment Data V3 City Rate Data.txt, Conservation Easment Data V3 Sales.txt)
•	CPI Deflator: Used to convert nominal values into real dollars (cpi.xlsx)
•	Hennepin County City files: Match city ID to names and for spatial matching (Hennepin Cities(Report).csv, bdry_census2010counties_ctus.gpkg)
•	Parcel Geometry (optional): For spatial joins and shapefile outputs (created in script)

Key Scripts

Assessor_data.R

•	Reads and combines yearly .xlsx and .txt files with consistent column formats
•	Merges program participation data (PROGRAM) with the main parcel dataset
•	Standardizes program codes into binary indicators:
	•	G_Green_Acres
	•	R_Rural_Preserve 
	•	P_Platted_Land 
	•	O_Open_Space

•	Calculates tax burden variables, including:
	•	CITY_LNTC_TAX = LOCAL_NET_TAX_CAPACITY × CITY_LNTC_TAX_RATE
	•	REAL_* values using CPI-adjusted conversions

program_analysis_subset_cities.R

•	Filters to parcels with and without program participation
•	Calculates city-level parcel counts, program shares, and average tax burdens
•	Produces county-level and city-level summaries of:
	•	Tax share
	•	Real and nominal city taxes
	•	Parcel and acreage counts by program type

ag_preserve_visualization.R

•	Implements facet-wrapped visualizations of program effects across:
	•	Years
	•	Super property types (residential, commercial, etc.)
	•	Program types (AG_PRESERVE, G_Green_Acres, R_Rural_Preserve)

ag_preserve_models.R

•	Performs OLS regressions to estimate the relationship between:
	•	Share of land in a program and average tax burden
	•	Program enrollment and changes in parcel-level tax payments

Output Highlights

•	Aggregated tax impact visuals at the parcel, city, and county levels
•	Tables of program vs. non-program parcel distributions
•	Log-level and percentage change plots of key metrics (tax share, assessed value)

Usage

Run the scripts in order:

1.	Assessor_data.R: Prepares, cleans, and merges data

2.	Main.R: loads additional data and preps data from assessors_data.R

3.	program_analysis_subset_cities.R: Subsets and analyzes program effects

4. 	ag_preserve_visualization.R: if interested but not required.

5. 	ag_preserve_models.R: produces the models specific to the ag preservation programs.

Plots and model summaries are saved or printed inline.

Notes

•	Subrecord-level PIDs are handled with PID_SUBRECORD
•	Cities with high-density development (e.g., Minneapolis, Bloomington) are excluded from some analyses
•	Time trends and property-type interactions are included in linear models to control for heterogeneity

About

Hennepin County analysis of Ag. Preserve programs

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages