featureScaling <- function(X){ # Normalizes the features in X # # Xnorm, mu, sigma <- featureScaling(X) returns a normalized version # of X where the mean value of each feature is 0 and the standard deviation # is 1. This is often a good preprocessing step to do when # working with learning algorithms. # ====================== YOUR CODE HERE ======================== # Instructions: First, for each feature dimension, compute the mean # of the feature and subtract it from the dataset, # storing the mean value in mu. Next, compute the # standard deviation of each feature and divide # each feature by it's standard deviation, storing # the standard deviation in sigma. # # Note that X is a matrix where each column is a # feature and each row is an example. You need # to perform the normalization separately for # each feature. # # Hint: You might find the 'mean' and 'sd' functions useful, # or alternatively, the function 'scale'. # ============================================================== return(list(Xnorm = Xnorm, mu = mu, sigma = sigma)) }