function [f_mean] = nanmean(data);
%
%   [f_mean] = nanmean(data);
%
%Function which calculates the mean (not NaN) of data containing
%NaN's.  NaN's are excluded completely from calculation.


[m,n] = size(data);

for index = 1:n;
not_nans = find(isnan(data(:,index)) == 0);
    if length(not_nans) > 0;
        f_mean(index) = mean(data(not_nans,index));
    else
        f_mean(index) = NaN;
    end
end