def lp2d(data, pred, P, M, mirror='0', fix_points=True, method='svd'):
    # check parameters
    if data.ndim != 2:
        raise ValueError("data must be a 2D array")
    if mirror not in ['0', '180']:
        raise ValueError("mirror must be '0' or '180'")
    if method not in ['svd', 'qr', 'cholesky', 'tls']:
        raise ValueError("method must be 'svd', 'qr', 'cholesky' or 'tls'")

    # form lp2d equation matrix and vector
    D, d = make_lp2d_Dd(data, P, M, 'f')

    # Solve lp2d equation to find the prediction matrix
    c = find_lpc(D, d, method)
    C = c.reshape(P, M)

    # extrapolate the 2D data using the prediction matrix
    return extrapolate_2d(data, C, pred, fix_points, mirror)
Return all files under the root package, that are not in a
dataset/ETHPy150Open jjhelmus/nmrglue/nmrglue/process/proc_lp.py/lp2d--crossover with--dataset/ETHPy150Open facebook/augmented-traffic-control/atc/django-atc-demo-ui/setup.py/get_package_data