Giter Site home page Giter Site logo

duplexalgorithm's Introduction

DuplexAlgorithm

Here is my implementation of the DUPLEX algorithm for data splitting. The DUPLEX algorithm can be used as a model validation technique in linear regression to split a dataset into a prediction and estimation set. This implementation is based on the implementation that we learned in Dr. Alireza Simchi's STAT 378 class at the University of Alberta.

The DUPLEX algorithm is a method of data splitting that ensures that the prediction set of points stresses the linear regression model sufficiently by ensuring that there are influential points in both the estimation and prediction set. The initial DUPLEX algorithm was described by Ronald D. Snee in the 1977 paper, "Validation of Regression Models: Methods and Examples." I was further exposed to the algorithm in the textbook Introduction to Linear Regression Analysis by Douglas C. Montgomery, Elizabeth A. Peck, and Geoffrey Vining.

The implementation provided in duplex_algorithm.R is on The Delivery Time Data set provided in Example 11.3 in Linear Regression Analysis. This implementation differs from the one provided in the textbook since it adds points to prediction and estimation sets by determining the point that is furthest away from any point in the estimation/prediction set rather than determining the average distance from all points.

Usage Guide for DuplexAlgorithm

-duplex_algorithm.R can be tailored to a dataset by copying the script and changing the first few lines of the script to match the regressors in a dataset

Citations:

  • Snee, R. D. (1977). Validation of Regression Models: Methods and Examples. Technometrics, 19(4), 415โ€“428. https://doi.org/10.2307/1267881

  • Montgomery, D. C., Peck, E. A., & Vining, G. G. (2021). Introduction to Linear Regression Analysis, Sixth Edition. John Wiley & Sons, Inc. pp. 393-401

  • Simchi. A (2023). STAT 378 Course materials

duplexalgorithm's People

Contributors

jacob-winch avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.