Vectorize instead of loop - Optimize memory for large datasets - Build reusable functions - Handle missing data appropriately