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