예제 #1
0
def _normalize_item_avg(input_matrix):

    output_matrix = np.copy(input_matrix)

    item_sums = np.sum(input_matrix,axis=0)

    number_of_users_that_rated_each_item = np.apply_along_axis(qtty_nonzeros,0,input_matrix)

    item_avgs = item_sums / number_of_users_that_rated_each_item

    for i in range(0,input_matrix.shape[1]):
        output_matrix[:,i] = subtract_nonzeros(input_matrix[:,i],item_avgs[i])

    return(output_matrix)    
예제 #2
0
def _normalize_user_avg(input_matrix):

    output_matrix = np.copy(input_matrix)

    user_sums = np.sum(input_matrix,axis=1)

    number_of_items_rated_by_each_user = np.apply_along_axis(qtty_nonzeros,1,input_matrix)

    user_avgs = user_sums / number_of_items_rated_by_each_user

    for i in range(0,input_matrix.shape[0]):
        output_matrix[i,:] = subtract_nonzeros(input_matrix[i,:],user_avgs[i])

    return(output_matrix)    
예제 #3
0
def _normalize_item_avg(input_matrix):

    output_matrix = np.copy(input_matrix)

    item_sums = np.sum(input_matrix, axis=0)

    number_of_users_that_rated_each_item = np.apply_along_axis(
        qtty_nonzeros, 0, input_matrix)

    item_avgs = item_sums / number_of_users_that_rated_each_item

    for i in range(0, input_matrix.shape[1]):
        output_matrix[:, i] = subtract_nonzeros(input_matrix[:, i],
                                                item_avgs[i])

    return (output_matrix)
예제 #4
0
def _normalize_user_avg(input_matrix):

    output_matrix = np.copy(input_matrix)

    user_sums = np.sum(input_matrix, axis=1)

    number_of_items_rated_by_each_user = np.apply_along_axis(
        qtty_nonzeros, 1, input_matrix)

    user_avgs = user_sums / number_of_items_rated_by_each_user

    for i in range(0, input_matrix.shape[0]):
        output_matrix[i, :] = subtract_nonzeros(input_matrix[i, :],
                                                user_avgs[i])

    return (output_matrix)