apply spectral swapping algorithm to data

Author:Staal A. Vinterbo
Copyright:2009-2012 Staal A. Vinterbo
Version:generated for 0.1
Availability:GPL, dummify

Module Synopsis

Let m be a data matrix (list of rows) where columns represent attributes and rows represent the attribute values for objects. Also let which be a list of column indices that contains categorical data. Then:

from dummify import maxi
from spectralswap import spectralswapping
d = spectralswapping(m, which, maxi)

produces a matrix d that essentially is m with permuted columns. The function:


depends on the module dummify.

To generate a html version of this short explanation:

$ python -e | rst2html > explanation.html

rst2html is a part of the python docutils package


In order to preserve inter-column relationships, the actual permutation is done along eigenvectors. Details can be found in:

Thomas A. Lasko, Staal A. Vinterbo, "Spectral Anonymization of Data,"
IEEE Transactions on Knowledge and Data Engineering, pp. 437-446, March, 2010


This implementation was supported by NIH NLM grant 7R01LM007273-07 and NIH Roadmap for Medical Research grant U54 HL108460.