Daniel@0: function U = unaryEncoding(data, K) Daniel@0: % unaryEncoding Encode data(s) as a 1-of-K column vector Daniel@0: % function U = unaryEncoding(data, K) Daniel@0: % Daniel@0: % eg. Daniel@0: % If data = [3 2 2] and K=3, Daniel@0: % then U = [0 0 0 Daniel@0: % 0 1 1 Daniel@0: % 1 0 0] Daniel@0: Daniel@0: if nargin < 2, K = max(data); end Daniel@0: N = length(data); Daniel@0: U = zeros(K,N); Daniel@0: ndx = subv2ind([K N], [data(:)'; 1:N]'); Daniel@0: U(ndx) = 1; Daniel@0: U = reshape(U, [K N]);