Package 'Kpart'

Title: Cubic Spline Fitting with Knot Selection
Description: Cubic spline fitting along with knot selection, includes support for additional variables.
Authors: Eric Golinko
Maintainer: Eric Golinko <[email protected]>
License: GPL (>= 2)
Version: 1.2.2
Built: 2025-02-15 05:24:39 UTC
Source: https://github.com/cran/Kpart

Help Index


Kpart

Description

Cubic spline regression using the absolute maximum deviate to determine potential knots. This version also includes support for addidtional independednt variables to be included in the model.

Details

Package: Kpart
Type: Package
Version: 1.2.2
Date: 2012-08-02
License: Open Source

~~ This package is intended for use with non-linearly associated data. The function part firsts selects points for cubic spline knots using an algorithm to find the absolute maximum deviate from the partition mean, then fits a best fitting model by using the best subset method and maximum adjR2. The function returns the values selected as knots in the model. The function part(d, outcomeVariable, splineTerm, additionalVars = NULL, K) takes five arguments. K is a positive integer that indicates how many equally spaced partitions the user would like to search.~~

– Recent update includes support for additional variables, 2016-07-23. –

Author(s)

Eric Golinko

Maintainer: [email protected]

References

Golinko, Eric David. A min/max algorithm for cubic splines over k-partitions. Florida Atlantic University, 2012.

Golinko, Eric, and Lianfen Qian. "A Min. Max Algorithm for Spline Based Modeling of Violent Crime Rates in USA." arXiv preprint arXiv:1804.06806 (2018).


Fits a linear model based on spline terms with additional support for other independent variables.

Description

The user will input a data frame, then designate the variable that is the outcome. Then the spline term is selected along with any other independent variables. Finally, a number K partitions is chosen for the algorithm to search for potential cubic spline knots based on the spline term and partition.

Usage

part(d, outcomeVariable, splineTerm, additionalVars = NULL, K)

Arguments

d

A data frame data set with column names.

outcomeVariable

The variable from 'd' that is the outcome.

splineTerm

The spline term, inherited from 'd'.

additionalVars

A vector of additional variables to be included in the model.

K

The number of evenly spaced partitions to be searched.

Value

fits

The fitted values of the linear model.

xhat

The entire feature matrix.

coefs

The significant coefficients of the model.

adjr2

The adjusted R^2 value.

Author(s)

Eric Golinko

Examples

## for simple spline model.
data(LakeHuron)
d <- data.frame(seq(1875, 1972, 1), LakeHuron)
names(d) <- c('date', 'lh')
fit <- part(d = d, outcomeVariable = 'lh', splineTerm = 'date', K = 20)
fit
plot(d$date, d$lh)
lines(d$date, fit$fits, col = 'red')


## multivariate
data(freeny)
freeny$time <- as.numeric(rownames(freeny))
fit <- part(d = freeny, outcomeVariable = 'y',
    splineTerm = 'time', additionalVars = c('market.potential', 'income.level'), K =2)
fit$coefs