Aggregating census tract data to the consistent PUMA (2000) and PUMA (2010 and 2000), although I am not sure whether PUMAs intersect census tracts (both 2000 and 2010) or whether census tracts are always neatly bounded by PUMAs.
Each 2010 PUMA corresponds exactly to a set of 2010 census tracts. The Census Bureau provides “Equivalency Files” that identify the exact relationship between each 2010 PUMA and census tracts on this page in the Reference Information section.
Each 2000-2010 ConsPUMA (identified by the CPUMA0010 variable) corresponds exactly to a set of 2010 PUMAs, so by extension, each of these ConsPUMAs also corresponds to a set of 2010 census tracts.
2000 PUMAs, however, were built from a combination of counties, tracts, minor civil divisions or incorporated places, as explained in the Census Bureau’s “History of Public Use Microdata Areas (PUMAs): 1960-2000”. Therefore, many 2000 PUMA boundaries do not align with either 2000 or 2010 tract boundaries. Similarly, the boundaries of 1980-1990-2000 ConsPUMAs (identified by the CONSPUMA variable) also do not consistently align with tract boundaries.
Tract boundaries also change between censuses, so even though 2010 PUMA boundaries align with 2010 tract boundaries, the 2010 PUMA boundaries do not consistently align with 2000 tract boundaries.
To obtain an equivalency file for 2000 PUMAs and 2000 census tracts, we recommend using the Missouri Census Data Center’s MABLE/Geocorr tool.
If you would like to allocate 2000 tract data to 2010 PUMAs, you could use the IPUMS NHGIS geographic crosswalk for 2000 blocks to 2010 blocks. (First, obtain a 2000 block data table from IPUMS NHGIS for a block characteristic related to your data of interest; then disaggregate the 2000 tract data to 2000 blocks in proportion to the 2000 block characteristics; then allocate from 2000 blocks to 2010 blocks using the crosswalk weights; then aggregate from the 2010 blocks up to 2010 PUMAs.)