Description Usage Arguments Details Value Error Messages Author(s) References Examples
Isotonic and unimodal regression on weighted or unweighted 1D input with L1, L2 and Linf metric and other options.
1 |
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. |
See the paper about unimodal regression via prefix isotonic regression in the reference.
A vector of the regression result which has the same size of y_vec.
The size of y_vec is 0: Empty data.
The size of w_vec doesn't match the size of y_vec: Data and weight have different number of entries
The entry of w_vec has negative value: Negative weight detected
Metric input is not in 1,2,3: Metric does not exist
Zhipeng Xu, Chenkai Sun, Aman Karunakaran, Quentin Stout xzhipeng@umich.edu https://github.com/xzp1995/UniIsoRegression
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
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | 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)
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.