The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.

Type: Package
Version: 0.0-0
Date: 2017-10-25
Title: Unimodal and Isotonic L1, L2 and Linf Regression
Author: Zhipeng Xu <xzhipeng@umich.edu>, Chenkai Sun <sunchenk@umich.edu>, Aman Karunakaran <akarunak@umich.edu>, Quentin Stout<qstout@umich.edu>
Maintainer: Zhipeng Xu <xzhipeng@umich.edu>
Description: Perform L1 or L2 isotonic and unimodal regression on 1D weighted or unweighted input vector and isotonic regression on 2D weighted or unweighted input vector. It also performs L infinity isotonic and unimodal regression on 1D unweighted input vector. Reference: Quentin F. Stout (2008) <doi:10.1016/j.csda.2008.08.005>. Spouge, J., Wan, H. & Wilbur, W.(2003) <doi:10.1023/A:1023901806339>. Q.F. Stout (2013) <doi:10.1007/s00453-012-9628-4>.
License: GPL-2 | GPL-3 [expanded from: GPL (≥ 2)]
Imports: Rcpp (≥ 0.12.11)
LinkingTo: Rcpp
RoxygenNote: 6.0.1
URL: https://github.com/xzp1995/UniIsoRegression
NeedsCompilation: yes
Packaged: 2017-11-07 17:34:46 UTC; vagrant
Repository: CRAN
Date/Publication: 2017-11-07 18:15:14 UTC

Isotonic and Unimodal Regression on 1D input.

Description

Isotonic and unimodal regression on weighted or unweighted 1D input with L1, L2 and Linf metric and other options.

Usage

    reg_1d(y_vec, w_vec, metric, unimodal = FALSE, decreasing = FALSE)

Arguments

y_vec

The vector of input data that we use to regression. It must be the same size as the w_vec argument.

w_vec

The vector of the weight of the input data. The default value is 1 for every entry. It must be the same size as y_vec. It's only avaliable for L1 and L2.

metric

This is an integer input, metric = 1 stands for using L1 metric, metric = 2 stands for using L2 metric, metric = 3 stands for using Linf metric.

unimodal

This is a boolean input, unimodal = false or 0 stands for isotonic regression and unimodal = true or 1 stands for unimodal regression

decreasing

This is a boolean input, decreasing = false or 0 stands for increasing model and decreasing = true or 1 stands for decreasing model.

Details

See the paper about unimodal regression via prefix isotonic regression in the reference.

Value

A vector of the regression result which has the same size of y_vec.

Error Messages

Author(s)

Zhipeng Xu, Chenkai Sun, Aman Karunakaran, Quentin Stout xzhipeng@umich.edu https://github.com/xzp1995/UniIsoRegression

References

Quentin F.Stout; Unimodal Regression via Prefix Isotonic Regression Computational Statistics and Data Analysis 53 (2008), pp. 289-297; Spouge, J., Wan, H. & Wilbur, W. Journal of Optimization Theory and Applications (2003) 117: 585-605 doi.org/10.1023/A:1023901806339

Examples

    library(UniIsoRegression)

    #===1d monotonic===
    y=c(1,3,6,7,-1)
    weight=c(1,3,4,9,10)

    #l_1 metric decreasing
    temp=UniIsoRegression::reg_1d(y, weight, metric = 1, decreasing = TRUE)
    print(temp)

    #l_2 metric unimodel
    temp=UniIsoRegression::reg_1d(y, weight, metric = 2, unimodal = TRUE)
    print(temp)

    #l_infinity metric increasing
    temp=UniIsoRegression::reg_1d(y, weight, metric = 3)
    print(temp)

Isotonic Regression on 2D input.

Description

Isotonic regression on weighted or unweighted 2D input with L1, L2 metric and other options.

Usage

    reg_2d(y_vec, w_vec, metric)

Arguments

y_vec

The 2D NumericMatrix of input data that we use to regression. It must be the same size as the w_vec argument.

w_vec

The 2D NumericMatrix of the weight of the input data. The default value is 1 for every entry. It must be the same size as y_vec.

metric

This is an integer input, metric = 1 stands for using L1 metric, metric = 2 stands for using L2 metric

Details

See the paper about 2D regression in the reference.

Value

A 2D NumericMatrix of the regression result which has the same size of y_vec.

Error Messages

Author(s)

Zhipeng Xu, Chenkai Sun, Aman Karunakaran, Quentin Stout xzhipeng@umich.edu https://github.com/xzp1995/UniIsoRegression

References

Q.F. Stout, Isotonic median regression via partitioning, Algorithmica 66 (2013), pp. 93-112 doi.org/10.1007/s00453-012-9628-4

Examples

    library(UniIsoRegression)
    #===2d monotonic===
    y=matrix(c(2, 4, 3, 1, 5, 7,9,0), nrow=2, ncol=4, byrow = TRUE)
    weight=matrix(c(1, 10, 3, 9, 5, 7,9,10), nrow=2, ncol=4, byrow = TRUE)

    #l_1 metric
    temp=UniIsoRegression::reg_2d(y, weight, metric = 1)
    print(temp)

    #l_2 metric
    temp=UniIsoRegression::reg_2d(y, weight, metric = 2)
    print(temp)

These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.