<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def get_mae(self, data_x=None, data_y=None):
 """ Get Mean Absolute Error using self.bestfit_func args: data_x: array_like, default=x x value used to determine rmse, used if only a section of x is to be calculated data_y: array_like, default=y y value used to determine rmse, used if only a section of y is to be calculated """

        if data_x is None:
            data_x = np.array(self.args["x"])
        if data_y is None:
            data_y = np.array(self.args["y"])
        if len(data_x) != len(data_y):
            raise ValueError("Lengths of data_x and data_y are different")
        mae_y = self.bestfit_func(data_x)
        return np.mean(abs(mae_y - data_y))