Missing unit numbers are a common pre-lease data issue. When unit numbers are absent, group pre-lease records by bed type, then allocate them to unit-type summaries based on bed count. You lose unit-level granularity, but you can still calculate weighted-average rates and pre-lease occupancy at the unit-type level.
The trade-off is that you lose unit-level granularity. You can calculate weighted-average rents and pre-lease occupancy for all two-bedroom units, but you cannot see which specific two-bedroom units are leased and which are vacant. If the underwriting model assumes certain units will lease faster than others, corner units, top-floor units, renovated units, you cannot validate that assumption without unit-level data.
Bed-level lease records require aggregation. Recognize bed suffixes in the unit identifier column and aggregate them back to unit-level summaries before calculating averages. If the rent roll shows unit 1404A and unit 1404B, those are two beds in one unit, not two separate units.
If you skip the aggregation step and treat each bed as a separate unit, your unit count will be inflated and your occupancy percentage will be wrong. A property with one hundred units and four hundred beds will show up as four hundred units if you do not aggregate bed-level records back to unit-level summaries.
Other-income line items need to be separated from lease rent. Pet rent, utilities, late fees, and other charges should not inflate the base rent figures used in trade-out calculations. Pull those line items out and total them separately so the rent comparison reflects actual lease rent, not bundled charges.
If you include other income in the base rent figure, the trade-out calculation will overstate rate growth. A property that added a fifty-dollar pet fee between the current and pre-lease periods will show trade-out growth that is not actually lease-rate growth.