Giter Club home page Giter Club logo

l1-pcahp's Introduction

This repository contains all the code used for the "Computational Results" of the paper 

"Robust Principal Component Analysis by Reverse Iterative Linear Programming" 
Andrea Visentin, Steven Prestwich and Armagan Tarim

## FILE LIST ##

./data:          			## this directory contains all the dataset. You must 
					## retrive them 
					## from http://archive.ics.uci.edu/ml/index.html


./pca:					## this directory contains the implementation of PCA

	l1pcahp.R			## the solution we introduce in the paper
					## more detailed description at the end of the page
					## implementation op PCA in R
	l2pca.R				## a container function


./src:					## this directory contains shared functions
	
	classifier.R			## 10cv 1nn classification used in Section 4.3
	dataset_manager.R		## load, clean and format the data for Sections 4.2, 
					## 4.3 and 4.5
	syntetic_data_generator.R	## data generator for test in Section 4.1


./test:

	classification.R		## test present in Section 4.3
	initialization_comparation.R	## test present in Section 4.5
	outliers_reconstruction.R	## test present in Section 4.2, reconstruction error
	outliers_variance.R		## test present in Section 4.5, variance of the projected
					## points
	syntetic.R			## test present in Section 4.1
	time_comparison.R		## test present in Section 4.4

## R PACKAGE REQUIRED ##	
	-pcaL1
	-pcaPP
	-MASS
	-matrixStats
	-wle
	-class
	-pdist


## ADDITIONAL SOFTWARE REQUIRED ##

MIP SOLVERS:
	- COIN-OR Clp (>= 1.12.0)
	- IBM ILOG CPLEX (>= 12.1)






## Description for function l1pcahp

This method implement the L1-PCAhp solution introduced in :
"Robust Principal Component Analysis by Reverse Iterative Linear Programming"
Andrea Visentin, Steven Prestwich and Armagan Tarim


## Usage

l1pcahp(X, projDim=1, center=TRUE, projPoints=FALSE, scores=TRUE, initialize="l2pca", threshold=1.0)


## Arguments

X			data, must be in matrix or table formdata, must be in matrix or table form
projDim 		number of dimensions to project data into, must be an integer, default is 1
center			whether to center the data using the median, default is TRUE
projPoints		whether to calculate the projected points in terms of original coordinates 
			(reconstruction),default is FALSE
scores			whether to return the matrix of scores, default is TRUE
initialize		method for initial guess for loadings matrix. Options are: "l2pca" - use 
			traditional PCA/SVD, "random" - use a randomly-generated matrix 
threshold		sets the convergence tolerance for the algorithm, default is 0.001

l1-pcahp's People

Contributors

visentin-insight 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.