Before feeding data to a model, you often need to bring the features (columns) onto a comparable scale. If one column ranges 0β1 and another ranges 0β1000, the large-valued column alone dominates distances and coefficients, and the other features get drowned out. Complete standardize(X). X is a 2-D float array whose rows are samples and columns are features. Return a new array in which each feature (column) has mean 0 and standard deviation 1. Example X = [[1, 100], [2, 200], [3, 300]] β both columns become the same shape: mean 0, standard deviation 1.
This challenge asks you to complete standardize(X) in numpy, a preprocessing helper that brings features onto a comparable scale before data goes into a model. The input is a 2-D float array whose rows are samples and columns are features, and the function must return a new array β without mutating the original β where each feature has mean 0 and standard deviation 1. It practices the fundamentals of feature scaling as a preprocessing step.
Real datasets often mix features on very different ranges β one might span 0β1 while another spans 0β1000. When ranges differ this much, models that rely on distances or are sensitive to coefficient size can be dominated by the single large-valued feature. That is why bringing features onto a comparable scale is a common preprocessing step before modeling. This problem implements that step directly in numpy, while practicing the habit of verifying the result by inspecting the actual numbers.