function [X,header] = pnBaseFeatures(data,header)

%=== Extract features of interest across multiple fields
[fields,non_temp_fields] = pnDataDescriptions;
fields = fields(:,1); non_temp_fields = non_temp_fields(:,1);
extractFcns = {'pnFirstValue','pnLastValue','pnLowestValue',...
    'pnHighestValue','pnMedianValue','pnNumRecordings'};

[ data_used ] = pnExtractFeatures(data,extractFcns,fields);

%=== Repeat for non-temporal features (1 value)    
[ tmpData ] = pnExtractFeatures(data,{'pnFirstValue'},non_temp_fields);
data_used = pnImputeField(data_used,tmpData);
    
%=== Extract first data point to X (each label only contains 1 value)
[X,header] = pnExtractDataFinal(data_used,'first',[0 2880]);

end