annotate general/arrutils/mapcols.m @ 61:eff6bddf82e3
tip
Finally implemented perceptual brightness thing.
author |
samer |
date |
Sun, 11 Oct 2015 10:20:42 +0100 |
parents |
fbc0540a9208 |
children |
|
rev |
line source |
samer@4
|
1 function Y=mapcols(f,X)
|
samer@4
|
2 % mapcols - Map a function of a vector over the columns of an array
|
samer@4
|
3 %
|
samer@4
|
4 % mapcols ::
|
samer@4
|
5 % ([[N]->A] -> [[M]->B]) ~'function maps a column of A to one of B',
|
samer@4
|
6 % [[N,L]->A]
|
samer@4
|
7 % -> [[M,L]->B].
|
samer@4
|
8
|
samer@4
|
9 n=size(X,2);
|
samer@4
|
10 if n==0, Y=[];
|
samer@4
|
11 else
|
samer@12
|
12 y1=f(X(:,1));
|
samer@12
|
13 if size(y1,2)>1
|
samer@12
|
14 Y=repmat(y1(:),1,n);
|
samer@12
|
15 for i=2:n
|
samer@12
|
16 Y(:,i)=flatten(f(flatten(X(:,i))));
|
samer@12
|
17 end
|
samer@12
|
18 else
|
samer@12
|
19 Y=repmat(y1,1,n);
|
samer@12
|
20 for i=2:n, Y(:,i)=f(X(:,i)); end
|
samer@4
|
21 end
|
samer@4
|
22 end
|
samer@4
|
23
|