class_docstr: This class keeps record of the currently cached image,
  initialised as all zeros, and the values are replaced
  by image window data decoded from batch.
class_docstr_tok: ["This","class","keeps","record","of","the","currently","cached","image",",","initialised","as","all","zeros",",","and","the","values","are","replaced","by","image","window","data","decoded","from","batch","."]
docstr: Initialise a csv output file with a first line of zeros
  
  :param n_channel: number of saved fields
  :return: empty first line of the array to be saved as csv
docstr_tok: ["Initialise","a","csv","output","file","with","a","first","line","of","zeros",":","param","n_channel",":","number","of","saved","fields",":","return",":","empty","first","line","of","the","array","to","be","saved","as","csv"]
code: def _initialise_empty_csv(self, key_names):
      """
      Initialise a csv output file with a first line of zeros
  
      :param n_channel: number of saved fields
      :return: empty first line of the array to be saved as csv
      """
      return pd.DataFrame(columns=key_names)
  
file_path: NiftyNet/niftynet/engine/windows_aggregator_grid.py
imports: from __future__ import absolute_import, division, print_function
  import os
  from collections import OrderedDict
  import numpy
  import pandas
  import niftynet.io.misc_io
  from niftynet.engine.windows_aggregator_base import ImageWindowsAggregator
  from niftynet.layer.discrete_label_normalisation import DiscreteLabelNormalisationLayer
  from niftynet.layer.pad import PadLayer
label_desc: Use image node_id 4 for calling the GridSamplesAggregator obj's underlying member method code with example usage: obj._initialise_empty_csv(key_names) and returns: pd